Thrift 代碼就是編程代碼。是代碼,就應該有良好的工程組織,而且,單獨git倉庫、版本管理,都是必不可少的。
前面咱們簡單總結了一些 Thrift 的一些基礎知識點,但無非是一些細節層面的東西,所謂『細枝末節』也。而一些東西,想要用得舒服,
工程組織架構,同樣都不能少。git
然而,代碼組織架構,如同『一千個讀者,就有一千本《紅樓夢》』同樣,每一個人都有本身的理解,無非是選擇問題,無非是口味問題。編程
就我而言,通常喜歡小的、分而治之的東西,因此,我通常有以下的訴求:架構
src/ services/ 對外暴露接口 XXService.thrift structs/ 對象,class person.thrift enums/ 公共枚舉 constants/ 公共常量 exceptions/ 公共異常,有些團隊,RPC不喜歡使用異常,因此這個目錄能夠沒有 compile_thrift_to_cpp.sh 編譯腳本 compile_thrift_to_py.sh
看得出,上面的目錄組織,喜歡直接使用 Thrift 中的名詞概念,能夠謂之『就近原則』。適合一些「不肯記憶,或者記憶力有點不足」的人(like me)。編程語言
這樣,利用自動化集成工具,要麼將編譯後的編程語言源碼放到內部公共依賴源中,要麼直接集成到項目目錄下。工具