我想使用Thrift作为RPC协议从自定义的专有封闭源语言调用Java-Server RPC端点。(某些类似于C的供应商特定的脚本语言)
不存在与此相关的绑定。
如何创建自己的thrift-compiler-plugins来生成特定于语言的代码?在文档上找不到任何内容。有没有类似模板语言的内容?
谢谢
如果不存在所需目标语言的绑定,则路线图大致如下:
搜索JIRA,如果没有发现相似的内容,请创建一张新票证,简要描述您的计划。
在GitHub上创建Apache Thrift代码的分支。尽管我们接受补丁文件,但是对于较大的更改集,尤其是GitHub分支更容易处理。
实现代码生成器,通常是从现有池中选择一个与您所需的池接近的代码生成器。已经有很多支持的语言,并且您会找到oop,过程和功能样式。如果有疑问,请从您找到的两个或三个候选人中选择哪个,请转到下一点
通过选择现有库之一作为起点,再次为该特定语言实现Thrift库。由于库在实现的“深度”方面存在很大差异,因此建议仔细了解实现的内容和未实现的内容。
实施标准化的Thrift跨平台测试,并确保在至少使用另一种语言运行时所有测试均成功。这样可以确保互操作性,并确保该代码不仅在与您自己交谈时(=同一种语言)有效。
实现教程代码并针对其他语言进行测试。如果一切都做得好,那么最后一步相对来说比较容易。
完成后,现在打开请求请求!
请注意,这4个实施步骤并不是真正的线性过程,它更像是一个迭代过程。即使从生成器发出的代码最终是可编译的,并且不会发出任何警告并且似乎在运行,但是在继续实施库和测试时,您仍然会遇到问题。这是完全正常的并且是预期的。
除此之外,最好将您的工作发布在邮件列表上,并尽早创建JIRA票证(这就是为什么我将其放在列表的顶部)。这不仅用于宣布您将要完成的工作的目的,而且对于其他可能只是在寻找这些东西的人也是一个很好的起点。运气好的话,您不仅可以得到早期的反馈(这总是一件好事),还可以为实现和/或测试提供一些支持。
评论
如果要实现现有语言的新风格,则首选方法是将其添加到现有代码生成器,库等中。要获得良好的模型,请查看nodejs实现或Python已经存在的各种选项。 。thrift --help
提供了一个很好的开始。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句