我正在編寫新硬件設備的軟件,我希望任何新的第三方應用程序能夠訪問它們,如果他們想。我應該使用CORBA,MessagePack RPC還是Thrift,還是其他的東西?
該軟件將是一個本機進程(C++),應該可以由第三方遊戲和希望支持該硬件設備的應用程序進行輪詢。這些第三方應用程序也應該能夠在訂閱的基礎上從本地進程接收事件。除了本地進程外,我還會爲第三方開發人員提供「連接器」庫,供他們可能選擇的所有平臺/語言(Java,C++,Python等)嵌入到他們的應用程序中,以便他們可以輕鬆地連接到設備幾乎沒有任何額外的代碼需要由他們寫。我想要定位所有桌面/筆記本電腦操作系統平臺,並且對我想要公開的功能有一個很好的概念,但理想情況下我不想太困擾(即,我希望它可以從客戶端和服務器進行優化擴展)觀點)。
我正在尋找可靠性前進,性能,可維護性前進,跨平臺/語言靈活性前進以及易於開發的順序。
我應該使用什麼?
CORBA,MessagePack-RPC,Thrift,還是其他什麼?
(我省略了ICE因爲它的許可)
CORBA是*古代*。它也是重量級和過時的。幾乎肯定有更好的解決方案。 – skaffman 2010-08-24 16:05:39
skaffman,古代,重量級和過時的形容詞不會讓我失望。每個ORB的內存容量只有幾兆字節,這對嵌入式系統來說可能不好,但對臺式電腦來說絕對不錯,而且性能很快。我關心性能速度,跨平臺靈活性,易於開發,可維護性和未來的可靠性。只要這些部門在整體上是最好的,不管別人「認爲」什麼都沒有關係,也不一定是「最新的時尚」,它會贏。我只是想知道這是否是對我所做的最好的。 – Navigateur 2010-08-24 22:33:06
我們根本無法在不知道您的要求,您的軟件是/是,目標受衆,升級路徑,運行平臺等情況下回答這個開放式問題。 – 2010-08-25 23:49:05