我正在開發一個正在開發中的標準LAMP堆棧上的巨大系統。長話短說,犯了太多錯誤,我們目前的發展載體變得難以爲繼。我們總結了以下問題:將REST和Play Framework集成到開發中的LAMP系統中
- 正在使用自定義且非常基本的PHP MVC框架,該框架未強制執行任何結構。
- 沒有使用ORM,允許開發人員拿出他們自己的系統。
- 前端由Smarty渲染,除了所有的動態交互都是用jQuery完成的。
- 在PHP失敗/非常慢的系統部分,我們有一些重要的處理。
- 沒有單元測試是用來
- REST僅用於某些API到外部系統
- 的PHP框架不支持依賴注入
我就不提了,有助於系統的其他問題成爲一團糟,我認爲這些是主要的。
我想通過引入類似於Twitter使用的類似系統將系統的開發轉到不同的方向 - 與REST連接的模塊中的系統拆分(如果我的假設是正確的)。這些都是我想介紹:
- 播放框架(Java /斯卡拉)
- 連接通過REST 播放與現有的LAMP堆棧
- 開關阿帕奇Nginx的
- (最有可能)使用角.js爲前端。
- 在長期轉換整個現有LAMP玩我面對
主要問題和是希望任何忠告:
- 我將如何保持/通狀態,在軸承介意REST是無狀態的?我們目前的LAMP顯然使用PHP會話。
對這個特殊情況的任何其他意見也歡迎。
您可以對現有的LAMP堆棧進行更改嗎?例如,從PHP會話遷移到memcached,redis或其他密鑰庫數據庫? –
@ViniciusMiana問題是,目前的LAMP堆棧正在走向滅亡的道路,因爲我們必須重做很多代碼,所以我寧願選擇一個優秀的堆棧。 – Caballero
要通過REST將X與現有LAMP堆棧連接起來,您需要在現有堆棧上創建此REST API。一種方法是將狀態移出Php,以便在php離開後保留。你的api將是無狀態的,但是將一個關鍵字傳遞給存儲在這個存儲區中的狀態,這個關鍵字可以通過用Scala/Java編寫的新函數或者其他任何東西直接更新。 –