1. 程式人生 > >關於Storm和Thrift

關於Storm和Thrift

        簡單總結下自己看Storm中thrift相關原始碼的理解,請高手指正。

        Thrift是一個支援多種程式語言開發的框架,其核心是Thrift編譯器和Thrift Server。

        Storm使用Thrift來支援相容多語言開發,Nimbus其實就是一個thrift服務,topologies被定義為Thrift結構體.

        Storm原始碼中貌似預設支援的是Java和Python,因為有看到genthrift.sh中生成了storm.thrift描述對應的Java和Python程式碼。

        Storm的核心邏輯部分還是Clojure程式碼,其需要的部分資料結構和介面通過storm.thrift定義,從而可以通過多語言實現,並被多種語言呼叫生成Topology。底層最終傳送的是序列化的資料(包括程式碼)。

        不知道這點總結是否確切,以後會繼續改進更新。