我有三个问题。
- thrift-cpp 的客户端是线程安全的吗?
- 他们在 thrift 上有某种连接池吗?
- 使用 thrift-cpp-client 的任何良好实践。
谢谢!
最佳答案
Thrift 有 doxygen 文档,但它们似乎没有被构建。它们不是特别漂亮。要生成拷贝,请运行(在 thrift 源目录中)doxygen -g Doxyfile
,将 RECURSIVE 更改为 YES,然后运行 doxygen Doxyfile
。
回答您的问题:
哪个客户?有一大堆不同的 Thrift 运输工具。通常,没有(AFAICT)任何全局状态,因此您可以在不同的线程中创建不同的客户端。如果您尝试在多个线程中使用相同的传输,您可能需要手动锁定,除非您已阅读代码并确认它没问题。
我还没见过。 AFAICT 只有一堆你可以自己连接的传输。有 TSocketPool,但这是一个负载平衡工具,我认为这不是您要找的。p>
我的建议:仅使用内存传输并自行建立网络。 Thrift 所做的可能不是您想要做的,即使是,他们的文档和打包也很糟糕。 (或者使用 protocol buffers 而不是 thrift —— 它们在 IMO 中得到了更好的维护。我认为这是即使我以前是 thrift 的贡献者。)
关于c++ - thrift-cpp 的客户端是线程安全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10926621/