Java および Scala アプリケーションの起動時間を短縮する方法については、すでにこことここで説明しています。そこで提案された解決策の 1 つは、 Nailgunまたはnetcatと TCP ソケットを介して通信する単純な手書きサーバーのいずれかでクライアント サーバー アプローチを使用することでした。
一方で、Nailgun はこの目的のために設計されています。一方で、その最後のリリース 0.7.1 は 2005 年であり、開発が停止したかどうか、およびそれがどれほど安定しているかが少し心配です。netcat はかなり標準的なツールのようで、多くの Linux/Unix システムで利用できます。しかし、これらのシステムはどちらも私にとって新しいものなので、私の観察が正しいかどうか、また、Nailgun と netcat を使用して Java アプリケーションに高速なコマンドライン インターフェイスを提供することの利点と欠点を知りたいと思います。
PS 起動時間を改善する必要があるのはなぜかと疑問に思うかもしれません。1 つ目は、アプリケーションが何度も実行されるため (たとえば、bash スクリプトのループから)、この使用シナリオは残念ながら変更できないためです。2 つ目は、このコンソール プログラムが既存の部分に対する単なる代替インターフェイス (CLI) になるためです。 Javaで書かれたソフトウェア。