3

私は非常に巨大な行列のデータセット (10^12 行列) を扱う Java SE プログラムを書きました。イテレーターを使用してそれらを生成し、特別なもの (いくつかの基準を満たすもの) を Java ヒープまたはデータベースに保存しています。そのため、時間がかかることは承知しています(おそらく数日)。これらすべてを操作するために、私は自分のアパートではなく、インターネットにアクセスできるコンピューターでプログラムを実行することにしました。プログラムの実行中のプロセスを制御したい (私にとって、プログラムがすべて正常かどうかを知ることは非常に重要です。プログラムはまだ実行されていますか?)

私の質問は、プログラムがまだ実行されていることを制御する方法です(この目的のために、アパートとインターネットでコンピューターを使用したいのですが)?

私のプログラムは定期的に (Java IO API 経由で) メッセージを Web サイト (Google Docs など) に投稿する必要があるかもしれません。ご回答ありがとうございます。

4

3 に答える 3

2

JPDA有効にしてアプリケーションを実行します。このようにして、リモートで接続したり、スレッドを調べたりすることができます。

JPDAホットコード置換など、他にも多くの利点があります。

JPDA の仕様はここにあります。最も重要なのは、起動時にいくつかの JVM オプションを渡す必要があることです。これにより、ポートが開かれ、Eclipse または NetBeans を使用してネット上のどこからでも接続できます。開いているポートがファイアウォール (ローカルおよびネットワーク) を介してアクセスできることを確認する必要があります。

于 2013-03-23T11:39:09.613 に答える
1

VisualVMとリモートJMXを選びます。リモートjmx接続を許可するようにサーバーボックスを設定します。VisualVMを使用すると、JVMに接続してアクティビティを確認できます。

実行中のプロセスの統計を保持するようにMBeanを設定することもできます。VisualVMでも確認できます。

于 2013-03-23T11:55:51.673 に答える
1

まず、リモート デスクトップ接続を試してください。Windows 7 リモート デスクトップに関する MS ドキュメントへのリンクは次のとおりです。

リモート コンピューターが Linux/Unix であり、プログラムがコンソール アプリケーションである場合、ssh+screenは、対話型のコンソール プログラムを実行したままにして、どこからでもアクセスできるようにするための古くて真のテスト済みソリューションです。

于 2013-03-23T11:36:19.277 に答える