EJBまたはサーブレット - プロセス/スレッドを停止するように強制するために「キルスイッチ」を追加する方法

StackOverflow https://stackoverflow.com/questions/3283768

  •  17-09-2020
  •  | 
  •  

質問

whileに一度実行された問題の種類 - EJBのステートフルまたはステートレスBean、またはおそらく直接サーブレットプロセスがある場合は、誤ったパラメータが生産システムで長く実行される可能性があります。管理者/ Personを具体的に殺すために、管理者/ Processを具体的に殺すためのマニュアル「キルスイッチ」を効果的に追加できますか?

役に立ちましたか?

解決

あなたはできない、または少なくともあなたが直接干渉してはいけません。だから「キルスイッチ」は、Java EE環境で私にとって間違いなく不適切です。

しかし、あなたが持っている問題を理解していますが、むしろあなたがあなたの仕事を小さな仕事単位で分割すると非同期的なアプローチを取ります。

私はEJBタイマーを使ってその結果に満足していました。最初の作業単位のために初期タイマーが作成されました。アプリのときサーバはタイマを実行し、次に第2の作業単位に対応する第2のものとして登録される。また、タイマーの実行と登録はトランザクションです。これはデータベースを処理するのに問題ありません。この方法でアプリケーションサーバをシャットダウンして再起動することもできます。各作業ユニットが実行される前に、その間にジョブがキャンセルされた場合はデータベースをチェックインしました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top