5

Java および Scala アプリケーションの起動時間を短縮する方法については、すでにここここで説明しています。そこで提案された解決策の 1 つは、 Nailgunまたはnetcatと TCP ソケットを介して通信する単純な手書きサーバーのいずれかでクライアント サーバー アプローチを使用することでした。

一方で、Nailgun はこの目的のために設計されています。一方で、その最後のリリース 0.7.1 は 2005 年であり、開発が停止したかどうか、およびそれがどれほど安定しているかが少し心配です。netcat はかなり標準的なツールのようで、多くの Linux/Unix システムで利用できます。しかし、これらのシステムはどちらも私にとって新しいものなので、私の観察が正しいかどうか、また、Nailgun と netcat を使用して Java アプリケーションに高速なコマンドライン インターフェイスを提供することの利点と欠点を知りたいと思います。

PS 起動時間を改善する必要があるのはなぜかと疑問に思うかもしれません。1 つ目は、アプリケーションが何度も実行されるため (たとえば、bash スクリプトのループから)、この使用シナリオは残念ながら変更できないためです。2 つ目は、このコンソール プログラムが既存の部分に対する単なる代替インターフェイス (CLI) になるためです。 Javaで書かれたソフトウェア。

4

3 に答える 3

4

私のお勧めは、今すぐネイルガンを使用して、この種のソリューションが実際に開始時間にプラスの効果をもたらすことを証明することです.

ボトルネックが起動時間であることを確認した場合は、任意の通信プログラム (netcat、wget、curl、perl など) を自由に使用でき、サーバーを完全に制御できるという利点を持つ非常に単純なクライアント/サーバーを実装できます。プロトコル。

于 2010-10-28T11:03:03.557 に答える
3

「ダウンロードする前に、安全ではないことに注意してください。近くにさえありません。クライアントがローカルマシンからサーバーに接続されていることを確認する手段はありますが、「ユーザー」の概念はまだありません。プログラムNailgunで実行されるものは、サーバー自体と同じ権限で実行されます。警告されています。」

個人的には、本番環境に移行する前に修正してもらいたいと思います...

于 2010-10-28T10:46:48.207 に答える
0

Nailgun はうまく機能し、Netcat もうまく機能します。私は両方を使用しました。Netcat は、Java だけでなく、あらゆるプログラムに適しています。LAN全体でシャットダウンスクリプトを実行するために使用できます。Windows の場合は、Nailgun を使用する必要があるかもしれません。

于 2015-05-04T04:52:09.973 に答える