5

目前我们正在为我们的网站使用 PHP。现在我们正在考虑用 Java 编写后端,因为该语言的类型安全性以及各种 Java 工具的可用性。我一直在阅读有关 Java Bridge 的信息,现在我想知道如何设置它。

我们已经通过 Apache 使用 PHP。我读到要使用 Java Bridge,我还需要安装 Tomcat。这意味着我有两台服务器(Apache 和 Tomcat),我需要为后端添加安全性,因为它突然对整个世界开放......我错过了什么吗?是否有另一种方法可以在没有额外服务器的情况下建立 PHP-Java 连接?这通常是怎么做的?

非常感谢有关如何执行此操作的任何指示或链接或有关如何设置它的任何最佳实践。我没有发现官方的 Java Bridge 站点非常清楚。谢谢!

4

4 回答 4

3

我目前正在测试 Zend Java 桥的使用。两周前,我确实测试了PHP/Java 桥开源解决方案。这确实需要您将 Java 类放入部署在 Web 服务器中的战争中(我确实使用了 Tomcat 6)。Zend 解决方案不需要 Web 服务器。如果您将业务逻辑放在普通的 java 类中,您只需将类包装在一个(或多个)jar 中。然后,您将 Zend Java 桥接守护程序启动到 JVM 中,将 Zend Java 桥接 jar 以及您自己的 jar 传递给 -classpath

来自dos窗口的前:

C:\Development\ToolsPHP\ZendServer\bin>java -classpath javamw.jar;mybusinesslogic.jar -Dzend.javamw.port=10002 com.zend.javamw.JavaServer

在这里,我必须指定一个端口,因为桥的默认端口 10001 已经在使用中(使用 netstat -a 检测端口冲突)。请注意,Zend 解决方案仅在您的 php 脚本在 Zend 服务器(社区或商业版)管理的 Apache 服务器上执行并且 Zend Java 桥接服务正在运行且其端口使用 Zend 服务器管理控制台设置为 10002 时才有效.

为了实现我的业务逻辑,我计划使用简单的 Java pojo、Spring、JPA 和 Hibernate。

于 2010-12-10T16:12:48.607 回答
3

你不需要tomcat。根据说明,您可以将 Java 启动为

java -Djava.ext.dirs=lib -jar JavaBridge.jar HTTP_LOCAL:8080 2 日志文件 &

lib 包含您要使用的 Java 库。

彼得

于 2011-01-22T11:49:58.857 回答
0

好的,我不是这方面的专家。基本上,连独眼都没有。但是afaik您的选择几乎如下

对于JavaBridge,您必须有一个 TomCat 服务器
Zend Server CE中还有一个JavaBridge
还有栎属

好吧,还有旧的 PHP4 扩展

于 2010-11-27T16:13:13.510 回答
0

你可以看看Gearman。它不完全是您正在寻找的东西,但它允许使用不同语言的客户和工人。作为一个很好的副作用,它允许与后台作业并行处理;)

于 2010-12-10T16:17:19.317 回答