我需要在要在Linux服务器上安装的各种Java技术之间做出决定。
我的后端(业务逻辑)是一个Java程序,必须使用JNI与C函数进行通信。此Java程序还必须在一侧使用JDBC与Oracle数据库(11G)通信,在另一侧使用BlazeDS驻留在基于Java的Application Server中(以在客户端与Flash插件进行通信)。我还需要一个HTTP Web服务器。
我对Java不太了解,所以我想知道最高性能(例如最快)和/或最干净的解决方案是什么。
例如,是否应该在服务器上安装JDK以提供JNI功能,然后再将Tomcat用于其他所有功能?或者,Tomcat是否还包括JNI?还是像JBoss这样的包含J2EE和serveletts功能的东西会更好,因为它在一个软件包中完成了所有工作?
只是尝试学习有关可能解决方案的任何常规知识,以及相对于另一种方法的利弊。
最佳答案
任何Java运行时环境都可以执行JNI-因此,如果您有正在运行的任何应用程序服务器(例如Tomcat或JBoss),那么您应该可以执行JNI。
Tomcat非常适合您所描述的内容。
这是一个流行的轻量级应用服务器
它支持servlet和JSP,因此可以很好地服务于HTML
它可能比完整的JBoss设置入门更简单。
另一方面,JBoss也很好。
更多的是“企业”重点-您可以选择从Red Hat获得出色的商业支持
如果您想利用JBoss生态系统中的其他一些产品,可能会有意义
我基本上认为两者都能满足您的需求。我可能会建议编写一个基于servlet的简单应用程序,然后尝试将其部署到Tomcat和JBoss中,以查看您喜欢哪一个。如果您坚持使用标准servlet功能,则您的应用程序应同时在Tomcat和JBoss上运行,以便您可以保持打开状态。
早期要考虑的另一件事是工具支持-确保对应用程序开发的Java IDE工具感到满意和满意。我个人选择的是Eclipse,它通过JBoss和Tomcat的插件提供了强大的支持。但是,其他大多数主要的Java IDE(如IntelliJ IDEA或Netbeans)也应满足您的目的。