2012-06-20 33 views
1

我正在通過構建網站的原始公司託管客戶端的PHP網站。網站上有一個部分,用戶從列表中點擊國家/地區名稱,參數將發佈到URL中,並使用這些參數查詢數據庫,並在該頁面上顯示來自該國家的假日包。所有標準的東西。現在,因爲主持該網站的公司不會讓我直接訪問數據庫(可以理解,我可以是任何人),但是想要向我的客戶收取相當多的費用來增加一些更新,試圖想出一個替代解決方案。它們是:本地XML文件或外部MySQL數據庫?

1)在我自己的虛擬主機上創建MySql數據庫並在外部訪問它 2)創建一個XML文件並使用PHP和XSLT查詢。

爲了澄清,我將自己手動更新數據,我的客戶將永遠不會超過30個包,因此它是可持續的。

所以我的問題是我應該選擇哪一個?我擔心遠程訪問MySQL數據庫的速度和安全性(我甚至不確定我可以使用我的虛擬主機),但本地XML文件會不安全嗎?

在此先感謝!

寶石

回答

1

託管公司應該給訪問客戶 - 他們都來訪問和修改自己的數據的權限。通常主機通過phpMyAdmin訪問數據庫。否則,如果您將XML文件放入不公開的文件夾中,那麼您的腳本可以訪問它,並且不應該有問題。

+0

謝謝@Riho! 託管公司,坦率地說,有點不願意提供許多細節。從他們那裏獲得一個FTP帳戶花了三個星期,他們傾向於採取相同的做更新。我知道我的客戶將不會與他們呆在一起待更長時間,但與此同時,他可以在幾天內完成更新,並且幫助我支付賬單! – Gem

+0

在這種情況下,我會推動你的客戶交換服務提供更快的速度:)。告訴他們,由於缺乏合作,很難爲客戶提供良好的服務。 – Riho

0

如果你採取了預防措施,那麼這兩種方法都可能是安全的。

你需要任何其他數據,或只是國家代碼?我想說,如果只有30個國家/地區代碼,並且它們沒有太大變化,那麼XML就沒問題,但是如果有更多數據使用SQL(並且這意味着您可以讓其他人更改它)。顯然檢查你可以有一個數據庫,就好像你不能這是一個毫無意義的點!

+0

感謝伍迪,非常感謝! – Gem

0

我同意Riho對主人的看法。

否則,我還會推薦使用XML文件,因爲一旦這個文件被加載,文件系統就會緩存它,並且訪問將在資源方面無所事事。另一方面,PHP每次運行腳本時都會打開一個遠程數據庫連接(我不推薦在本地服務器上使用mysql_pconnect,遠不如在遠程連接上使用mysql_pconnect),而僅僅從數據庫讀取30行會產生更多開銷。

+0

感謝Martin,這部分是我對外部數據庫的關注,即使表中沒有太多數據。如果我的客戶想要將套餐的套路擴大10倍,那麼我可能需要重新思考,但是如果我們來了,我們會穿過那座橋! – Gem

0

我對小型網站(有些不是那麼小)使用XML + XSLT,它對文件高達2MB的效果很好,根據我的經驗,10Mb xml文件會延遲並且有時無法加載(超時)。

大多數小網站需要大約100kb到300Kb的文件。

當然,這些值可以與服務器肌肉有所不同,我使用2Gb 3.0Ghz雙核與30個站點,並不是所有的小,有的使用SQL 50000和100000記錄的表。

2Gb xml數據做得不錯,50000訪問月

+0

Thanks @ neu-rah - 我無法評論服務器的詳細信息,但它只是一個小型站點,XML當然不會接近2MB,更像是25到50KB之間。我認爲XML/XSLT是真正的 – Gem

+0

,SQL就像使用加農炮殺死蒼蠅一樣,並且該技術是由Riho推薦的,在腳本可以訪問的非公開文件夾上有xml文件 –

相關問題