並行実行の注意点について
現在、1本のみ照会系を並行実行しております。
お客様からすべてを並行実行してほしいとの要望がありました。
環境 Windows2019サーバー
XPA4.6.1 リモートデスクトップ接続 端末10台
注意点として
1.単一インスタンスにする
2.ワークファイルは重複しないようにする
3.サーバーに負荷とテスト工数がかかるので照会系のみなどに限定する
最近のフォーラムをみるとサポートに調査依頼中がありました。
他に注意点などございましたら指摘していただければと思います。
-
ワークファイルはメモリワークにすれば重複を考えなくていいのかなと思います。
間違えていたら訂正お願いします。
並行実行で起動すると、SQL ServerのUser Connections が増えるのかどうかわかりません。 -
いつもありがとうございます。参考にさせていただきます。
-
伝票一覧画面から
伝票入力PGを読んで、伝票入力PGの最後でビュー再表示して
伝票一覧画面をリフレッシュしていたような分が伝票入力PGが並行実行になると、それが機能しなくなりますね。
-
並行実行といいますのは、コンテキストを別扱いにするという意味ですので、それを考慮した作りにすれば問題ないと思います。
例えば、分かりやすい例で言いますと、アマゾンのショッピングサイトに同じアカウントを用いて、2つのブラウザセッションから別々のショッピングカートを操作したとします。そして、両方が同時に決済すればアマゾンに対しては同じ人から2つの注文が入るということになります。
-
貴重な情報ありがとうございます。
プログラムによっては意図した動きにならないときがあるので注意が必要ですね。
-
いま、あらためてアマゾンでチェックしてみたら、昔とはちょっと動きが変わっていますね。2つのセッションから操作しても、画面を更新するとショッピングカートは共有できるようになっていました。
やはり、テクノロジーの進化と共に、操作性も進化していますね。
-
いずれにしても、別コンテキストというものがどういうものであるかは、インターネット上のショッピングサイト等で確認されると動きが分かりやすいですよ。
-
並行実行を使うとSharedValSet関数、SharedValGet関数の出番もあるかもしれません。
-
他に、うちはterm()の中身で制御してたり、iniput,inigetに気を付けています
即反映してほしいときとしてほしくない時があるのでiniputの第2引数がいつも悩みます
単一インスタンスにするというと同じ画面は1つまでしか起動しないということだと思いますが、
別プロで同じワークファイル使いまわししてるところのロック処理も気になります
dbdelとか効かないでしょうし -
uniPaaS V1 Plus以降は
ワークファイルには、Pervasiveは使わずに、メモリワークにするようにしております。
並行実行の時も気を遣う必要がないので。
ですがxpa3.2でワークファイルがPervasiveになっているシステムがまだありました。 -
いつもありがとうございます。関数とワークファイルに留意してみます。
サインインしてコメントを残してください。
コメント
11件のコメント