這是我的問題:我有一個由Qt GUI和相當多的後端代碼組成的C++應用程序。目前它被鏈接到一個可執行文件並在Solaris上運行。現在,我想在Windows上運行GUI,並讓剩餘的代碼在Solaris上運行(移植它將是一項巨大的工作)。 GUI和後端之間的接口非常乾淨,由一個C++抽象類(也使用一些stl容器)組成。這是我想變成web服務的部分。webservice dispatcher
問題是我們的後端代碼不是線程安全的,因此我需要在Solaris上爲Windows上的每個GUI運行單獨的進程。但是,出於性能方面的原因,我無法啓動和完成GUI的每個請求的處理。
這種設計意味着,我需要採取的幾個問題護理:
- 必須有GUI代碼的單一聯繫點,
- 第一通話過程中,溝通必須與實例發生啓動(它應該被路由或者第一次調用應該返回實際服務器實例的地址),
- 在GUI和服務器進程之間必須有一些保持活動消息來管理服務器進程的生存期(服務器進程不能永遠運行) 。
你能推薦一個框架來處理這些細節(消息路由/調度和生命週期管理)嗎?
該服務必須是有狀態的。 apache是否能夠將請求發送到適當的進程? – 2011-06-17 07:07:56
這可能有點棘手,但我不知道一個確切的答案。如果這些將成爲網絡農場的一部分,那麼顯而易見的地方就是將會話存儲在共享存儲位置。我確信它可以完成,但我不知道你能從盒子裏得到什麼。 – Nathan 2011-06-17 07:23:52