我有一個使用精益啓動方法開發的ZF1項目。我現在準備進入一個更進化的項目,因爲我知道我的用戶需要什麼,但我真的想要開發更好的技術。我決定從ZF1轉移到ZF2,這是我所在的位置:Api-Admin-Client應用程序的最佳ZF2體系結構
API(客戶端) - 我有一個「僅推送」API,用戶用來向我發送數據 API(管理員) - 管理員可以使用各種指標和聚合消耗推送的數據
客戶端的API很安靜,但只是當前進入Redis作業隊列,並通過cron進行處理,這消除了客戶端等待他們的數據將被插入並且他們的請求被立即返回。
管理員的API目前並不穩定,實際上只是在應用程序內部消耗,我認爲這是可以的,因爲我不希望有單個頁面前端或API消耗前端。我寧願數據立即由服務器返回。
這給我留下了一個問題,即我是否有一個API服務模塊,它提供了所有模型(Doctrine2 ODM POPO),映射器,過濾器和服務層來訪問它,然後需要它的控制器可以消費API而不發出HTTP請求(通過服務調用)。
這是結構的正確方法還是存在更精確和可接受的方法?一般情況下,我喜歡服務層,因爲測試會更加準確,所有客戶端/管理員都使用相同的API(如果它更新,實質上立即更新,因爲沒有單獨的項目)。