LEADTOOLSライブラリ

フレームを表示

LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKは、開発者に強力な分散コンピューティングアプリケーションを作成するのに用いられることができる完了したフレームワークを提供します。ジョブプロセッサーにソリューションを展開することによって、エンドユーザーのマシンまたはデバイスから制御する環境までアプリケーションのために必要な資源を移動します。これらの資源を制御するため、アプリケーション自体を変更する必要なしで、アプリケーションはユーザー需要で拡大縮小することができます。

LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKがシステムの上でインストールされたあと、ジョブプロセッサーに展開されることができる強力なアプリケーションを作成し始めることができます。(そのプロパティ、メソッドとイベントが使われることができる前に、LEADTOOLS分散コンピューティング機能が最初にロック解除されなければならないことを注意します。LEAD機能をロック解除することの詳細については、特殊なLEAD機能のアンロックを参照します。)

LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKが、コンピュータのファームの上でオートメーション化したジョブ処理の若干の型を実行するために、任意のシナリオで使われることができます。これは、広範囲にわたる機会を開けます。以下の例を見なします:

  1. ユーザーが1つの形式からもう一つに変換されるファイルを提出するサービス。ファイルを提出するためのウェブインターフェースを用いて、実際の変換は、ジョブプロセッサーでワーカーマシンのファームの上で実行されます。変換が完了していたあと、変換されたファイルはユーザーに送り返されます。

  2. ユーザーがOCR(光学的文字認識)のために処理されるデスクトップまたはモバイル機器からイメージを提出するサービス。imageがジョブプロセッサーサービスによって受け取られたあと、それは処理されます、OCRは実行されます、そして、アーキテクチャが必要とするデータベースその他アプリケーションでアーカイブされるために、結果はユーザーに送り返されます。

  3. クローリングウェブサイト専用のワーカーマシンのファームを使うサービス。LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKフレームワークは、様々なワーカーマシンに待ち行列に入れられたやり方でウェブサイトを配分して、ウェブサイトごとにクローリングプロセスをモニターするのに用いられることができます。

LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDK

LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKは、完了したフレームワークです。下記のように、それは下に3つの個々のコンポーネントに分けられることができます。参考までに、これらの個々の補足とワークフローを表している図は、図1に示されます。

図1:LEADTOOLS分散コンピューティング(ジョブプロセッサー)SDKコンポーネントの図とワークフロー。

クライアント-ジョブプロセッサークライアントは、コンピュータまたはモバイル機器の任意型でありえます。クライアントと中央サーバの間の通信は、Microsoft WCFサービス(プラットフォームに依存しないソリューション)に基づきます。

クライアントはJobService WCFサービスを通してジョブプロセッサーで通信します。そして、それは中央サーバでホストされます。JobServiceは、既存のジョブのステータスを追加して、中止して、削除して、モニターするのにクライアントを見込みます。詳細については、「IJobServiceインターフェース」を参照してください。

中央サーバ-中央サーバにはクライアントとワーカーマシンの間の主要なインターフェースで、以下の責任があります:

  1. JobServiceとWorkerService WCFサービスをホストします。

  2. ジョブプロセッサー設定を保存します。これは含みます。そして、各々のワーカーが受け取るジョブのタイプ、ワーカーにつき並列のジョブの最大数、CPUしきい値などはLEADTOOLSジョブプロセッサー設定に詳細は言及します。中央サーバでジョブプロセッサー設定を保存することは、ユーザー管理者が単一の場所からジョブプロセッサーですべてのワーカーマシンに大域置換を作るのを許します。

  3. 各々のジョブに関連したすべてのジョブと任意の情報を保存するために、ジョブプロセッサーデータベースを使います。中央サーバは、ジョブプロセッサーデータベースを格納するかもしれないか、格納しないかもしれません。この議論の単純さのために、ジョブプロセッサーデータベースが中央サーバでインストールされると仮定します。詳細については、「LEADTOOLSジョブプロセッサーデータベースを理解すること」を参照してください。

ワーカーマシン-ワーカーマシンは、ジョブプロセッサーフレームワークのために仕事を実際に実行するマシンです。ワーカーマシンの数に対する制限が、ジョブプロセッサーの中にありません:これは、ジョブプロセッサーの特定の需要に依存します。クライアントと同様に、ワーカーマシンと中央サーバの間の通信は、Microsoft WCFサービスに基づきます。各々のワーカーマシンは、特定の種類のジョブを処理するように構成されることができます。また、各々のマシンは、並列のジョブ、最大のCPUしきい値と他の関連した設定の最大数のために、機械依存設定を持っていることができます。詳細については、「LEADTOOLSジョブプロセッサー設定」を参照してください。

各々のワーカーマシンはウィンドウサービスをホストします。そして、それはWorkerService WCFサービスを通して中央サーバで直接通信します。ウィンドウサービスは、処理の準備ができている新しいジョブを得て、ならびにワーカーマシンが受け取る任意のジョブのステータスを更新するために、WorkerServiceを使います。加算安定度のために、各々のジョブはウィンドウサービスによって生まれるそれ自身の別々のプロセスに処理されます。そして、それはウィンドウサービスで直接通信します。ウィンドウサービスは、プロセスが予想外に終了するイベントではプロセスの進捗、ステータスアップデートなどをモニタするか、掛かっているか、他のどの致命的エラーも経験すると、ウィンドウサービスは必要に応じてプロセスを強制終了します、そして、開発者にOnJobTerminatedメソッドを通してこれらの問題に反応して、新しいジョブを処理し続ける機能を提供します。

Windowsサービスが中断されるとき、現時点では進行中のジョブはプロセスまで続行します、しかし、サービスが再開されるまで、新しいジョブは受け取られません。サービスが停止されるならば、あるいは、マシンは終了されます、現時点では進行中のすべてのジョブは終了されます、そして、ジョブが開始される前に、ステータスは最後のステータスに押し返されます。サービスが再開するとき、これは再び試みられるのに休止されたジョブを見込みます。

JobService WCFサービスにウェブ参照を追加することによってLEADTOOLSジョブプロセッサークライアントを作成し始めます。JobService WCFサービスは、既存のジョブのステータスを追加して、中止して、削除して、モニターすることができるジョブプロセッサークライアントを作成するのに必要ないろいろなインターフェース、クラス、構造体とデリゲートを格納します。詳細については、「IJobServiceインターフェース」を参照してください。

Leadtools.JobProcessor.Job.dllアセンブリに参照を追加することによってLEADTOOLSジョブプロセッサーワーカーを作成し始めます。Leadtools.JobProcessor.Job.dllアセンブリは、処理ジョブができるジョブプロセッサーワーカーを作成するのに必要ないろいろなインターフェース、クラス、構造体とデリゲートを格納します。詳細については、「ジョブプロセッサワーカーアセンブリの作成」を参照してください。

参照

LEADTOOLSジョブプロセッサー設定
LEADTOOLSジョブプロセッサーデータベースを理解すること
ジョブプロセッサワーカーアセンブリの作成
LEADTOOLS分散コンピューティング(JobProcessor)アプリケーションを展開すること
特殊なLEAD機能のアンロック
ジョブプロセッサーチュートリアル:ジョブプロセッサーにジョブを追加すること
ジョブプロセッサーチュートリアル:ジョブプロセッサーワーカーを作成すること