java - Java 在 BeagleBone Black(或 Raspberry Pi)中运行良好吗?

标签 java c++ raspberry-pi raspberry-pi2 beagleboneblack

我的项目是在小型计算机(例如 BeagleBone Black 或 Raspberry Pi)上运行 Web 服务器。

我的问题是首选哪种语言,Java 还是 C++?我的计划是运行一个tomcat并使用Java编写一个Web服务器。

我听到很多人都在谈论 Java 在 BeagleBone Black 等嵌入式系统中运行的性能很差。 Java 的性能真的比运行 C++ 差吗?

任何想法都值得赞赏。谢谢

最佳答案

有一个为 ARM 版本制作的 java(架构师 BBB 运行在其上)。该 java 版本是由 Oracle 制作的,包含不对公众开放的闭源库。

我读到的主要提示是关于 BBB 上的 OpenJDK java,因为它是开源的并且没有 ARM 特定代码,因此是一种通用的适合所有 java 解决方案的解决方案,大约为 4 或 5比 Oracle java 慢几倍。

就C++而言,任何java代码都会比C++慢。这是因为 C++ 代码是针对特定板编译的 (this video helps to explain)因此只能在特定的板上运行,而 java 即使有可用于 JRE 的特定版本,通过 JDK 的 jar 也会被编译为非特定于板的,因此不如已经为特定板编译的代码快。

最后,尽管如此,首选语言取决于您想要做什么以及制造商提供的任何官方支持。 BBB 似乎没有提出任何建议,并将其留给用户。因此,最好的想法是运行基准测试,看看哪个最能满足您的需求。

希望这有帮助!

关于java - Java 在 BeagleBone Black(或 Raspberry Pi)中运行良好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36605919/

相关文章:

java - String Arraylist 获取以该字符串开头的项

java - jpa2 hibernate,一个测试实体锁定的测试用例

c++ - Boost Log Scoped Log/Attributes 未显示

c++ - 包含 Commdlg.h 后打开未定义的文件名?

python - pygame.错误: Invalid joystick device number

java - 如何在 JFrame 中的图像上添加文本?

java - url连接问题

c++ - 在 C++ 中即时添加过滤功能

java - 如何使用我的 Java/Android 应用程序进行 SSH?

raspberry-pi - 传输远程命令出错,出现意外响应 : <h1>401: Unauthorized</h1>Unauthorized User: deflate, gzip