java - C++ 和 PHP 之间的通用桥梁

标签 java php c++ php-java-bridge

我们有一个 Web 应用程序(相当重量级的应用程序),它执行一整套的操作、Web UI、数学处理和建模以及与数据库相关的操作。

在 PHP 中发生的许多过程都非常缓慢,主要是因为 PHP 的数学处理很糟糕。

在未来,我们希望打破这些缓慢的过程,并用更快的东西重写它们,可能是 C++,也可能是 Java。

有谁知道将数据传入和传出 PHP 并传入另一种语言环境的通用方法?我已经考虑过将事物序列化为 JSON 并将它们铲入/dev/shm 或套接字,然后让其他语言在套接字上监听,或查看共享内存位置等。

这种东西对于原生类型来说工作得很好,但是当你考虑到很多被传递的东西实际上是类实例和类似的对象时,它确实很糟糕。

我不确定是否有一个明智的解决方案,但我一直在考虑 Quercus PHP纯 Java 实现,以及 PHP/Java bridge.
但是,我一直无法找到任何可以执行类似功能的 C++。编写 PHP 模块是可能的,但我正在努力了解它如何足够通用,而不仅仅是将每个新(和一些旧)脚本重写到模块中,然后在 PHP 中调用这些函数。

最佳答案

Google protocol buffers

Protocol Buffer

这是什么?

Protocol Buffer 是一种以高效且可扩展的格式对结构化数据进行编码的方法。 Google 几乎所有的内部 RPC 协议(protocol)和文件格式都使用 Protocol Buffers。

它支持对您在 .proto 语言中定义的对象进行快速高效的序列化,并原生支持 C++/Java 和带有第 3 方插件的 PHP。

关于java - C++ 和 PHP 之间的通用桥梁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6018346/

相关文章:

c++ - 如何使用 zlib.h 解压缩 m MYSQL_RES 中的 COMPRESSED BLOB,而不在 mysql 查询中使用 UNCOMPRESS

c++ - 使用清理代码优化多个导出点

java - 如何获取客户端ip地址?

php - XML 子元素不会被添加,但不会引发任何错误

减少内存占用的 Java 集

php - 我如何使用移动硬件组件,如 : MNotification, 摄像头、地理定位、加速度计?

php - fatal error : Class 'PHPMailer' not found

c++ - 类中的 fstream 语法

java - 如何获取jtextpane中特定位置的前景色

java - 存储库中缺少依赖项(错误 404)