問題タブ [jsvc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JSVC Java デーモンに必要なパフォーマンスの改善
ここのガイド 、つまり実際の単純なファイル IO tick-tock コードに基づいて、Linux ディストリビューションに Java サービスを正常に展開しましたが、このような単純なプログラムの CPU 使用率が高いことに気付きました。おそらく、スレッドが常にチェックしているためです...
NetBeans を使用して CentOS で実際の JAR ファイルを構築し、次に Arch Linux ARM ディストリビューションにデプロイし、次に a) Oracle の Java SE Embedded JVM (v7) および b) java-7-openjdk JVM を使用しました。
問題は、CPU 使用率が jsvc によって 80 ~ 95% の間で常に変動していることです。CPUがそこまで上がるとは思っていませんでした。実際の jsvc 呼び出しで、バックグラウンド プロセスに -server パラメータを追加しようとしましたが、うまくいきませんでした (取得できませんでした。これの例は、 -server パラメータが欠落しているかどうかを除外できるようにするのに役立ちます。
-server オプション以外に何か不足している可能性があると思います。私は ScheduledExecutorService を見るように言われました - おそらく改善することができますか?
あなたの考えに感謝します - ありがとう。
java - CentOS 6.x への jsvc 1.0.15 のインストール
Google 検索を行ったところ、CentOS 6.x には apache jsvc jsvc-1.0.1-8.9.el6 しかインストールできないようです。CentOS の最新バージョンです。参照元:
http://pkgs.org/search/?query=jsvc&type=smart
http://rpmfind.net/linux/rpm2html/search.php?query=jsvc
ただし、jsvc 1.0.1 は、現在依存している「-javaagent」などのいくつかの標準的な JVM 引数をサポートしていません。CentoS インスタンスに最新の 1.0.15 などの新しいバージョンをインストールするにはどうすればよいですか?
linux - jsvc.exec エラー: PID ファイルに従ってまだ実行中です
Linux (Ubuntu) 10.04.4 LTS で jsvc を使用して Java サービスを実行し、サービスと要求を停止してハングしたときに、ログをチェックして以下の jsvc exec エラーを見つけました。
14/03/2014 12:49:48 19831 jsvc.exec エラー: PID ファイル /home/user/tmp/example.pid に従ってまだ実行中、PID は 19728 14/03/2014 12:49:48 19830 jsvc.execエラー: 戻り値 122 でサービスが終了しました
何か案が ?
ありがとう、
java - Java プログラムをデーモン化する - データを入力した後にバックグラウンドに移行する
次のユースケース(Linux上)の解決策を見つけようとしました:
- プログラムを開始し、stdout に情報を表示し、ユーザー名/パスワードなどの情報を入力します。
- プログラムはユーザー名/パスワードを検証し、バックグラウンドに移行してデーモンとして実行します。
Javaでこれを行う方法が見つかりませんでした。Java プログラムをデーモン化するためのいくつかのオプションがあります ( jsvc
、またはこれ: http://barelyenough.org/blog/2005/03/java-daemon/など)。しかし、プログラムは最初からバックグラウンドに移行するため、バックグラウンドに移行する前に情報を入力する機会がないため、この状況ではすべてが機能しないようです。
scala - akka を systemd ジョブとして実行する
マシンの起動時に systemd を使用してシステム上で自動的に実行および再起動する Akka アプリケーションを実行したいと考えています。apache daemon/jscv でこれをやろうとしてきましたが、いくつかの問題が発生しています。今、私はちょうどそれを実行しようとしています (ステップ 1) が、それはすでに失敗しています。私は次のコード
私はそれをパッケージ化しようとしsbt assembly
、それからそれを起動しようとしました
それを起動しようとすると
sudo jsvc -outfile ~/out.txt -errfile ~/err.txt -cp commons-daemon.jar:akkadaemon.jar Launcher
しかし、機能していないようです。err.txt
含む
このアプローチを機能させるにはどうすればよいですか? これは少なくとも実行可能な方向ですか (これが機能するようになったら systemd スクリプトを書きたい場合)、それともすべて間違っているのでしょうか?
jsvc - 特権なしで特権ポートをバインドする方法は?
jsvc によって呼び出されるはずのデーモン コードがあります。コードは 1024 未満の特権ポートにバインドする必要があります。root アクセス権がないため、authbind を考えています。私は試した:
しかしjsvc.err
、それはまだ言います:
私は何か間違ったことをしていますか?
java - ソースコードとしてJavaサービスを使用してjsvcをパッケージ化し、それを使用する前にコンパイルするのが最善の方法ですか?
多くのオープン ソース プロジェクトでは、Java プログラムをサービスにラップするために jsvc (Apache Commons Daemon) を使用していることに気付きました。ソースとして、または一般的な環境のバイナリと共に、それを含めるいくつかの方法を見てきました。ソースは好ましい方法ですか?