Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

非同期処理サービス構築のチュートリアル作成前段階のメモ

準備

環境を準備する。

検証は、

を使用した。

手順

インストール

以下をインストール

Open棟梁 - 非同期処理サービスのテンプレート

データベース

作成

セキュリティ設定

サービス・アカウントからSQL Serverにログインする。

なので、以下の手順に従って、
ローカル・システム・アカウントのログインと権限付与をする。

テーブルの作成

非同期処理サービス

設定

app.configファイルの接続文字列を設定する。

 <connectionStrings>
   <!-- SQL Server / SQL Client用 -->
   <add name="ConnectionString_SQL" connectionString="Data Source=localhost\sqlexpress;Integrated Security=SSPI;Initial Catalog=AsyncProcessingServiceDB;"/>
 </connectionStrings>

ビルド

AsyncProcessingService?をビルドする。
Visual Studioからソリューション・ファイルを開いてビルドする。

インストール

ビルド出力(*.exe)をWindowsサービスとしてインストールする。

非同期処理タスク

非同期処理のクライアントとサーバを開発する。

以下のソリューションファイルを開くと、2つのプロジェクトが開く。

"C:\root\programs\C#\Samples\AsyncSvc_sample\AsyncSvc_sample.sln"

非同期処理タスクを投入するクライアント

TestAsyncSvc_Sample

非同期処理をキューに登録するプログラム。

サーバで実行される非同期処理タスク

AsyncSvc_sample

登録された非同期処理を取り出しディスバッチする先のビジネスロジック。

非同期処理サービスの実行

非同期処理サービスの開発方法

DamKeyforABT

業務テーブルにアクセスする場合に使用するDam

DamKeyforAMT

非同期処理管理テーブルにアクセスする場合に使用するDam

接続文字列

非同期処理タスクの開発方法

https://github.com/OpenTouryoProject/OpenTouryo/blob/02-20/root/programs/C%23/Samples/AsyncSvc_sample/AsyncSvc_sample/LayerB.cs

UOC_Start(UOC_XXXX)

概要

設定

インプロセス呼び出しの定義は以下のファイルの中に定義にされている。

https://github.com/OpenTouryoProject/OpenTouryo/blob/02-20/root/programs/C%23/Frameworks/Infrastructure/ServiceInterface/AsyncProcessingService/TMProtocolDefinition.xml

処理の流れ

Utilityメソッドの説明

DeserializeFromBase64Stringメソッド

DeserializeFromBase64Stringメソッドで、
userParameterValue?.Dataの業務データをバイナリデータからオブジェクトへ復元する。

SerializeToBase64Stringメソッド

DeserializeFromBase64Stringメソッドの逆を行う。

GetCommandValue?メソッド

非同期処理管理テーブルから本非同期タスクのTaskIDに対応するCommandIDを取得する。

ResumeProcessing?メソッド

非同期処理管理テーブルの本非同期タスクのTaskIDに対応するCommandIDを、
UpdateTaskCommandメソッドによって「0」クリアする。

UpdateProgressRate?メソッド

非同期処理管理テーブルの本非同期タスクのTaskIDに対応する進捗率をアップデートする。

UpdateTaskCommand?メソッド

非同期処理管理テーブルの本非同期タスクのTaskIDに対応するCommandIDを更新する。

業務処理

Updateメソッド(業務処理)

業務処理(GenerateProgressRate)を実行する。

GenerateProgressRate?メソッド

ダミーの業務処理。進捗率を返す。


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS