4D v14 R5から導入
4D v15 にはServerNet という名前の新しいネットワークレイヤーが追加されました。これは4D Serverとリモート4Dマシン(クライアント)間の通信を管理するためのものです。ServerNet は現代的で強固なAPIに基づいており、維持が簡単で、最新のネットワークテクノロジーを簡単に導入できる一方、高いレベルのパフォーマンスを発揮することができます。
実装についての注記: ServerNet ネットワークレイヤーは 4D v15の "プレビュー" リリースで提供されています。
現在の"旧式"のネットワークレイヤーは既存データベースとの互換性のために引き続きサポートされます。ServerNet は新規に作成されたデータベース内では自動的に採用されます。
新しいオプションを使用してServerNet を有効化/無効化することができます。
新しい互換性オプションによって、4D Serverにおける旧式ネットワークレイヤーをいつでも有効化または無効化することができます。以下のどちらかの方法を使用して下さい:
新しい互換性オプションは、互換性のページ内にあります:

注: このオプションはOS X用の4D Server 64-bit版では無視されます。このプラットフォームではServerNet のみがご利用になれます。
デフォルトでは、このオプションは以下の様に設定されています:
- 4D v15(または4D v14 R5)以降で作成されたデータベースにおいてはチェックがされていません(この場合ServerNet レイヤーが使用されます)。
- 変換された既存のデータベースにおいてはチェックがされています(この場合旧式のネットワークレイヤーが使用されます)。
このオプションは必要に応じてチェックをしたり外したりすることができます。例えば、クライアントアプリケーションの移行作業の途中などの場合に有効でしょう(以下を参照してください)。
設定を変更した際には、その設定を有効にするためにはアプリケーションの再起動が必要になるという点に注意して下さい。また、接続してたクライアントアプリケーションも、新しいレイヤー設定で接続するためには全て再起動する必要があります(ServerNet を使用するための必要最低限のクライアントのバージョンは4D v14 R4です。以下を参照して下さい)。
サーバーアプリケーションにおいてServerNet レイヤーを有効化した場合、適合する4Dクライアントアプリケーションのみが接続することができます:
- 4D v15(または4D v14 R4)以降のバージョンのクライアントは何も変更しないまま接続することができます。
- それ以前のバージョン(v14.x とそれ以外のv14'R'リリース)のクライアントはサーバーに接続する前にアップグレードをしなければなりません。
ご自分のアプリケーションがv14 R4以前のバージョンの組み込みクライアントで動いていて、4D Serverの自動機構を使用してアップデートされたクライアントアプリケーションをネットワーク越しに配付したい場合、移行戦略を練る必要があります。この戦略は以下の原則に則って練る必要があります:
- 互換性のないクライアントは旧式ネットワークレイヤーを使用する4D Server にしか接続することができません。
- アップデートされたクライアントはプロトコルを動的に適応させることができるので、サーバーが使用しているネットワークレイヤーに関わらず4D Server v15以降に接続することができます。
移行戦略は、以下の様な段階を踏む必要があります:
- 4D v15以降を使用した、アップデートされたクライアントアプリケーションをビルドします。
- 4D Server v15 を、"旧式ネットワークレイヤーを使用"ネットワーク引数を有効化して実行します。
この設定により、全てのクライアントが接続することができます。
注: OS X用4D Server v15 64-bit 版はこのオプションをサポートしていないことに注意して下さい。 - 全てのクライアントが接続し、新しいバージョンをダウンロードし終わるまで一定時間待ちます。
これには1日、1週間、あるいはそれ以上の時間がかかる可能性があります。この移行期間中、以前のバージョンのクライアントも、アップデートされたクライアントも、旧式のネットワークサーバーに接続することができます。 - 全てのクライアントのアップデートが完了したら、旧式のネットワークレイヤーを無効化し、4D ServerをServerNet へと切り替えることができます。
この戦略を図に表すと、以下の様になります:

移行プロセスの間、"Diagnostic log recording"ファイルを有効化することが推奨されます。このファイルが有効化されると、4D Serverはそれぞれのクライアントのアップデートリクエストをこのファイルに記録するので、プロセスをモニターすることが出来るようになります。このログファイルはデフォルトでは有効化されていません。SET DATABASE PARAMETER コマンドを、 Diagnostic log recording 定数を1に設定して呼び出す必要があります。
それぞれのアップデートリクエストに対して、以下の情報が記録されます:
- クライアントのIPアドレス
- クライアントのバージョン
- "Update client" イベント
ログファイルをモニタリングすることは、サーバーをServerNet ネットワークレイヤーに切り替えた後も、全てのクライアントが適切にアップデートされたかどうかを確認するために有用です。互換性のないクライアントが接続しようとした場合、サーバーは以下の情報を記録します:
- クライアントのIPアドレス
- クライアントのバージョン
- "Fail to connect" イベント
この場合、例えばクライアントを手動でアップデートするかどうか等を自分で判断することができます。