這將是一個相當開放的問題;但在這一點上,這是我必須從頭開始。我們目前有一個2層應用程序設計。這意味着我們有一個C++ API連接到我們的SQL Server,並執行典型的數據庫操作,例如插入/更新/查詢。我們正在尋找使這種三層設計與某種應用服務器坐在中間。目標是當我們獲得更多的負擔;我們不需要處理數據庫瓶頸。設計的目的是讓所有來自用戶的通信都與「中間層」一起發生,然後進入數據庫。這將消除我們將複雜的業務規則放在數據庫觸發器中並讓中間層處理它們。
我還不清楚的是中間層的樣子。它是否必須是某種WebService?所有客戶端都使用HTTP連接到中間層,然後將其傳遞給數據庫?正如你所看到的;從C++ API到web服務;這是一個相當大的轉變。任何資源,你必須幫助我讓我的主意繼續這個話題將不勝感激。謝謝!需要幫助以3tier設計開始
0
A
回答
0
由於您已經擁有連接到我們的SQL Server並直接對其執行操作的C++ API,因此這似乎已成爲適合您的設計中間層的重構對象。此代碼已根據一些規則操作數據庫,這正是您的中間層應該執行的操作。
剩下要做的工作是將表示邏輯從這個API中分離出來,並允許它駐留在它自己的應用程序中,這些應用程序連接到中間層的C++ API以便讓它們的數據得到處理,存儲在數據庫中,結果返回給用戶顯示。對於表示層和C++ API之間的連接,根據您的要求,您可以使用專有通信協議(例如通過TCP/IP或RPC實現,或通過HTTP實現),也可以使用HTTP有一箇中介「中繼」網絡服務,從服務器調用您的C++ API並將結果返回給調用者。 HTTP選擇儘管初始實現起來更快,但有一些方面需要考慮,例如默認情況下,它是無狀態的(您需要自己實現用戶會話),並且必須與代碼保持同步,當公共方法在開發期間發生變化時
相關問題
- 1. Joomla開始需要幫助
- 2. 需要幫助開始HL7
- 3. WCF設計需要幫助
- 4. 需要幫助開始與Eclipse RCP
- 5. 開始使用(需要幫助)
- 6. 從MongoDB開始需要一些幫助
- 7. 需要數據庫設計幫助
- 8. 需要幫助設計一個Android UI
- 9. 需要數據庫設計幫助
- 10. Haskell:需要幫助設計此功能
- 11. 重複設計需要的幫助
- 12. SQL數據庫設計需要幫助
- 13. 需要幫助的屏幕設計
- 14. 需要數據庫設計幫助
- 15. Android:需要幫助設計一個tableLayout
- 16. 需要設計佈局幫助(CSS)
- 17. 需要幫助引導移動設計
- 18. 需要數據庫設計幫助
- 19. 設計此按鈕時需要幫助
- 20. 需要數據庫設計幫助
- 21. 需要課堂設計幫助
- 22. MySQL查詢設計需要幫助
- 23. 一流的設計需要幫助
- 24. 需要幫助設置開源庫JFreeChart
- 25. 需要幫助設置開發環境
- 26. TRAC:需要以trac開頭的幫助
- 27. 從Amazon EC2開始,爲Java項目開始需要幫助
- 28. 開始學習自動化,需要基礎設施的幫助
- 29. MIPS計劃需要幫助
- 30. 需要幫助開發Android
當你說這將是一個開放式問題時,你說得很對:-)讓我們從幾個問題開始。你在建什麼樣的應用程序?這是一個Web應用程序嗎?你提供什麼樣的API?什麼不工作? –