リモート4Dアプリケーションのスリーピングタイムアウトを定義する方法

Deeplからの自動翻訳

セッションの損失を防ぐために、4Dはリモート4Dアプリケーションのスリープ状態を監視しています。

ユーザーがリモートの4Dアプリケーションから4Dサーバーに接続し、コンピューターがスリープモードになると、その情報が4Dサーバーに送信されます。ユーザーのコンピューターが起動した瞬間に、リモート4Dアプリケーションは実行コンテキストを回復します。

リモート4Dアプリケーションの状態を確認する

リモート4Dアプリケーションのスリープ状態は、サーバー管理ウィンドウのユーザー > アクティビティに表示されます。

スリープ中のリモート4Dアプリケーションを検出するもう1つの方法として Get process activityコマンドを使用することです。
$sleepingRemotesGet process activitySessions onlysessions. ("state = :1"; "sleeping")query

仕組み

スリーピングモードでは、リモート4Dが消費したすべてのリソースは、スリープ解除時に作業状態を取得するために、リモート4Dに割り当てられたままです。プロセス、ライセンス、オープンされたトランザクション、ロックされたレコードなどは、リモート4Dセッションが終了したときにのみ解放されます。
セッションが長くスリープ状態にならないように、4Dサーバーは、48時間以上スリープ状態のリモート4Dセッションを自動的に閉じます。

顧客の使用状況に応じて、このタイムアウトをより正確に管理したい場合 は、 セレクタで SET DATABASE PARAMETERコマンドで、Remote connection sleep timeout セレクタを使用します。なお、タイムアウトは秒単位で設定するものとし、値は保存されないので、再起動時に自分でタイムアウトを設定する必要があります。この値は、4Dサーバー側でのみ、すべてのリモート4Dアプリケーションに適用されるため、リモート4Dと4Dサーバーで区別なく設定することも可能です。

リモート4Dアプリケーションのスリーピングチェックは、4Dサーバー上で5分ごとに実行されます。

defaultTimeout:=Get database parameter(Remote connection sleep timeout)// 172800 seconds by default
SET DATABASE PARAMETER (Remote connection sleep timeout; 7200
) // Set to 2 hours

注:レガシーネットワークレイヤーでは、スリーピングモード管理は使用できません。

Avatar
- プロダクトオーナー - Damien Fuzeauは、2019年2月に4D Productチームに参加しました。プロダクトオーナーとして、ユーザーストーリー(ユーザーが期待する新機能とその使用法)を書き、それを具体的な機能仕様に変換することを担当しています。また、実装された機能が顧客のニーズを満たしているかどうかを確認することも彼の役割です。ナント大学のソフトウェア工学科を卒業。前職の会社では最初は開発者として(1997年に4Dを発見)、後にエンジニアリングマネージャーとソフトウェアアーキテクトとして、23年以上勤務しました。この会社は、4DのOEMパートナーであり、現在は数千のユーザーと数百のサーバーに向けて4Dベースのビジネスソフトを展開しています。ですから、Damienは、多言語環境での4D開発・導入に慣れています。