2012-11-06 191 views
0

頁面正在向服務器發送AJAX調用,並且應該獲得項目信息作爲響應。查找/返回數組是一個相當大的數組,我無法將它保存在PHP文件中以接受請求。所以,就我的知識和經驗而言,有兩種方法:AJAX從服務器獲取數據

  1. 訪問每個請求的數據庫。
  2. 將項目存儲在文件(例如「item12.txt」)中並將內容發送給用戶。

我的C經驗表示,打開和關閉文件比系統其餘部分需要更多的系統時間。它在PHP中如何?什麼是首選方法(最重要的是資源方面) - 文件系統或數據庫?有沒有其他方法可以推薦(例如JavaScript爲每個請求直接從服務器的變量數組加載文件)? 也許你知道有一些創新方法嗎?

P.S.在服務器端,只有一個數字纔會被接受,所以不用擔心有人試圖訪問服務器中的文件或試圖在數據庫上做一些奇特的事情。

回答

0

插座

根據您要處理的請求數量,您可以查看套接字連接。 套接字爲您提供了客戶端和服務器之間的雙向通信,這將允許您根據需要執行交互式事務。

Socket tutorial 1
Socket tutorial 2

Node.js的

的node.js是塊新的孩子。你寫你自己的套接字網絡服務器,並使用JavaScript與它溝通。這對於Ajax來說是一個很好的選擇,因爲它更加高效和可靠。

node.js可以與PHP一起運行,只能用於類似Ajax的調用。

node.js
node.js socket turotial

+0

謝謝,我會檢查它。請問,請求數量如何影響這個?這種方法更好,請求數量多,或者相反呢?請提供任何資源供參考? – demechanico

+0

使用套接字的優點是,它允許交互,兩種方式。這意味着您的服務器可以告訴客戶端進行更新,客戶端不必輪詢以查看是否發生了更改。這會減少很多請求的數量。 – Kao

0

沒有什麼創新。如果您的數據調用頻率較低,並且想要超級簡單的數據訪問,請使用文件。但是今天使用任何數據庫(SQL lite)好得多,我認爲。如果你需要更多的性能,那麼使用MySQL或NoSQL解決方案。用於解決問題的工具。爲您的目的使用正確的工具。

+0

這就是我打算堅持,但仍然有希望,有趣的東西會出來的問題。感謝你的回答。 – demechanico