风之翊 2019-06-28
前面我们简单总结了一些 Thrift 的一些基础知识点,但无非是一些细节层面的东西,所谓『细枝末节』也。而一些东西,想要用得舒服,
工程组织架构,一样都不能少。
然而,代码组织架构,如同『一千个读者,就有一千本《红楼梦》』一样,每个人都有自己的理解,无非是选择问题,无非是口味问题。
就我而言,一般喜欢小的、分而治之的东西,所以,我一般有如下的诉求:
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)。
这样,利用自动化集成工具,要么将编译后的编程语言源码放到内部公共依赖源中,要么直接集成到项目目录下。