我已經在這裏問過關於這方面的各種事情的幾個問題,但這更多的是一個整合問題,因爲我想檢查我已經得到了一切的要點。實施一個可擴展的和高性能的網絡應用程序
我正在開發一個社交媒體網絡應用程序,雖然我有很多使用Java和PHP進行編碼的經驗,但我現在嘗試的東西有點不同。我已經模塊化了應用程序的每個組件。因此,例如,應用程序的一個組件允許用戶互相私人消息,並將其拆分爲它自己的私人消息服務。我還創建了一個用戶數據服務,其目的是從數據庫中返回關於用戶的數據,例如他們的姓名,地址,年齡等。他們也是另一項服務,即朋友服務,它將使用neo4j數據庫創建社交圖。我之所以這樣做,是爲了讓我在需要時更新獨立模塊 - 所以雖然他們大多數都跑掉了MySQL,但現在我可以稍後將其中一個遷移到Cassandra,如果我認爲它適用的話。
網頁應用程序的實際代碼實際上僅用於最終構建。它背後的模塊並不真正遵循任何嚴格的REST或SOAP協議。基本上我們的API上的每個方法都變成了PHP程序腳本。然後這可能會調用其他往往是OO的後端代碼。 Web應用程序向這些頁面發出CURL請求,並向它們發送POST數據或從它們獲取數據。然後這些頁面返回需要數據的JSON。
我還是有點混淆了我當時如何確定哪個用戶登錄。我只是使用會話嗎?就像我們調用了get-messages.php腳本,該腳本相當於該用戶的getMessages()方法 - 返回該用戶的所有私人消息 - 後端代碼如何知道將哪個用戶發送到用戶ID該腳本將不安全。任何人都可以做到這一點,並獲得所有信息。所以我想我會使用它的會話。我對此是否正確?
任何人都可以發現任何其他問題,我在這裏做什麼?
感謝