我正在构建一个应用程序,该应用程序在 C++/Qt 中具有基于应用程序的前端,在 Python(使用 Django)框架中具有基于 Web 的前端。我正在尝试将架构迁移到基于服务的架构,因为这两个前端都嵌入了业务逻辑,这使得它难以维护。
我正在考虑选择 Thrift 来编写 RPC 服务,这些服务可以被系统中的其他模块和 Python 代码使用。但是,看起来 Thrift 在 Windows 上不能很好地工作,所以我可以选择将 Thrift 输出转换为一些 C++ 结构,然后需要再次序列化/反序列化,以便服务可以由 Qt/C++ 使用。Python 代码可以轻松使用这些 Thrift 服务。
在这个过程中,我需要转换/序列化结构,首先根据 Thrift IDL,然后是一些自定义代码。任何改变架构的建议,以便
- 把事情简单化
- 适用于多种语言
- 快速实施?