Raspberry piのjbossまたはglassfishサーバーなどで平均的なJavaアプリサーバーを実行することは可能ですか? 制限はありますか?ラズベリーパイのJava開発の経験がある人はいますか?
少なくとも、RPi に適した JVM であれば問題ありません。
Raspberry piのjbossまたはglassfishサーバーなどで平均的なJavaアプリサーバーを実行することは可能ですか? 制限はありますか?ラズベリーパイのJava開発の経験がある人はいますか?
少なくとも、RPi に適した JVM であれば問題ありません。
それは絶対に可能ですが、より多くのメモリを備えた新しいバージョン (たとえば、Pi の 512 MB バージョン) ではうまく機能するはずです。2012 年 12 月、Oracleは ARM 向け Java SE 8 の Developer Preview をリリースしました。アナウンスメントを含むブログ投稿には、インターフェイスがどれだけ洗練されているかに応じて、単純な Java SE または JavaFX を使い始めるためのチュートリアルへのリンクが多数含まれています。
Raspberry Pi での JavaFX のパフォーマンスが気になる場合は、ブログ記事「JavaFX on Raspberry PI」を参照してください。JavaFX のパフォーマンスに関する情報が含まれており、ネイティブ アプリケーションと比較しています。
更新: Pi で Java 8 を使用して Tomcat 7 を実行した後のテスト結果
512mb バージョンの Pi (モデル B) を入手した後、Java 8 と Tomcat 7.0 を問題なくインストールしました。Tomcat のサンプルは機能しており、Tomcat マネージャー アプリケーションを問題なく使用できました。
グラフィックス カードに 64 MB の RAM を使用しても、まだ 291 MB の空きメモリがありました (sshd を実行した場合):
pi@raspberrypi ~/ $ free -m
total used free shared buffers cached
Mem: 438 146 291 0 10 74
-/+ buffers/cache: 60 377
Swap: 99 0 99
pmap
は、Tomcat プロセスによって合計 192 MB が使用されていることを報告しました。
Raspberry Pi では、JVM 全体で 185MB しか使用できません。(起動後、ビデオ処理に 16MB を使用)。
次に、積極的で正確なメモリ オプションを使用する必要があります ( -Xmx120M -XX:MaxPermSize=55M -XX:ReservedCodeCacheSize=4M -Djava.awt.headless=true
)
Jetty、Spring 3、および Hibernate/JPA に基づいてアプリケーションを作成しました。デプロイ直後は、約 15MB のヒープ領域と 32MB の非ヒープ領域に収まりました (JProfiler メモリ分析を使用)
PermGen スペースはガベージ コレクションできないため、ロードされた各クラスは永続的なメモリが失われます。多くのクラスは初期化をサポートするためだけにロードされますが、永遠にロードされたままになります。おそらく、tweeks は各コンポーネントの PermGen スペースをより少なく消費することがわかります。
あなたは確かにできます。ラズベリー pi で JBoss EAP (本質的に JBoss AS 7) を実行している誰かのブログ投稿があります。
私はJRE1.7のRaspberryPiでTJWSを使用しています。これは信じられないほど高速に動作し、メモリの問題はありません。
現在、pi 上の JVM は可能ですが、Java SE エディションを見つけるのは困難です。Oracle から ARM 用のものがあるかもしれませんが、私は試していません (私の pi はまだ途中です)。メモリが機能する場合は、壁の後ろにあります。
pi のもう 1 つの制限は、使用可能な RAM です。jboss や glassfish などのアプリは、非常に制約のある展開を除いて、pi が提供するよりも多くの RAM を必要とします。
Arun Gupta は、Raspberry Pi での JBoss Wildfly の実行についていくつかの投稿を行いました。