2016-04-13 3 views
2

Мой проект - запустить веб-сервер на маленьком компьютере, таком как BeagleBone Black или Raspberry Pi.Является ли Java хорошо работающим в BeagleBone Black (или Raspberry Pi)?

Мой вопрос в том, какой язык является предпочтительным, Java или C++? Мой план - запустить tomcat и написать веб-сервер с помощью Java.

Я слышал, что многие люди говорят о плохой производительности Java, работающей в такой встроенной системе, как BeagleBone Black. Действительно ли у Java хуже производительность, чем на C++?

Любая мысль оценена. Спасибо

+1

Я использую Raspi в настоящее время с моим проектом java. Я нахожу, что он очень хорошо работает с моим кодом. Java будет медленнее в любой системе, хотя там, где она должна работать на JVM ... – flakes

ответ

3

Существует Java, созданный для выпуска ARM (работает архитектор BBB). Эта версия Java создана Oracle и содержит закрытые библиотеки, недоступные для публики.

Основные жалобы, которые я прочитал, касались OpenJDK java на BBB из-за того, что он с открытым исходным кодом и не имеет специального кода ARM и, таким образом, является общим одним размером, подходящим для всего java-решения, которое составляет около 4 или В 5 раз медленнее, чем Java.

С точки зрения C++, любой Java-код будет медленнее, чем C++. Это связано с тем, что код C++ выполняется для конкретной доски (this video helps to explain) и, таким образом, работает только на этой конкретной плате, в то время как java, несмотря на то, что для JRE доступны определенные версии, jar через JDK скомпилирован как нестандартный, и, следовательно, не так быстро, как код, который уже скомпилирован для конкретной платы.

И наконец, все, что говорит, что предпочтительный язык зависит от того, что вы хотите сделать, и от любой официальной поддержки, предоставляемой заводом-изготовителем. BBB, кажется, ничего не предлагает и оставляет его пользователю. Поэтому лучшая идея - запустить тестовый тест и посмотреть, какие из них лучше всего подходят для ваших нужд.

Надеюсь, это поможет!

+0

«любой код Java будет медленнее, чем C++» неверен. Хорошие JVM имеют компиляцию JIT, выполнение смешанного режима, профилирование и де-оптимизацию, которые могут извлечь большую производительность. –