如何在不为 Java Bridge 添加 tomcat 服务器的情况下将 Java 后端添加到现有 PHP 站点?

Posted

技术标签:

【中文标题】如何在不为 Java Bridge 添加 tomcat 服务器的情况下将 Java 后端添加到现有 PHP 站点?【英文标题】:How do I add a Java backend to an existing PHP site without adding a tomcat server for Java Bridge? 【发布时间】:2011-05-16 14:30:19 【问题描述】:

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

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

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

【问题讨论】:

【参考方案1】:

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

对于JavaBridge you have to have a TomCat server。 还有一个JavaBridge in Zend Server CE。 还有Quercus

好吧,还有old PHP4 extension

【讨论】:

【参考方案2】:

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

来自dos窗口的Ex:

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

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

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

【讨论】:

嗨,您是否成功使用 zend java bridge 我正在尝试使用它来实现 birt 报告,您可以帮我指导一下吗?谢谢 嗨 jean,请帮我解决这个问题【参考方案3】:

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

【讨论】:

【参考方案4】:

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

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

lib 包含您要使用的 Java 库。

彼得

【讨论】:

以上是关于如何在不为 Java Bridge 添加 tomcat 服务器的情况下将 Java 后端添加到现有 PHP 站点?的主要内容,如果未能解决你的问题,请参考以下文章

MySQL - 仅在不为空时连接

Spring boot rest api - 我可以在不为响应对象创建任何 java 类(DTO 或实体)的情况下获得响应吗?

如何在不为每种语言创建 xib 的情况下本地化 xib 视图中的文本?

如何在不为 RVM 用户授予 sudo 访问权限的情况下安装 RVM 系统要求

如何在不为每个帖子调用评论对象的情况下从墙上的帖子中获取评论计数?

如何在不为其创建专用网站的情况下为我的应用提供隐私政策?