なぜPSOPを使うとよいのですか?
「サーバー上のスクリプト実行(PSOS:Perform Script on Server)」スクリプトステップは、FileMaker 13で登場しました。PSOSを使うと、ホストされているファイルを使っているクライアントは、サーバ上でサブスクリプトを実行できます。そのため、いくつかのことに気をつけて設計すれば、通常はクライアントマシンが実行する重い動作(検索、ソート、処理、その他のデータ操作など)の多くを、サーバにさせることができます。さらに興味深いことに、クライアントマシンがホストされているファイルに対して検索やSQLクエリを実行する時に、通常はネットワーク越しに大量のデータが移動しますが、そのような移動をしなくて済むようになります。
WANで動作している場合(つまり、ローカルネットワークの外からファイルを開く場合)、PSOSを使うとこのような作業のパフォーマンスが劇的に向上します。
LAN上(ローカルネットワーク上で使っている場合)では、向上したようには感じられないかもしれません。
注意:言うまでもないことかもしれませんが、PSOSはファイルがFileMaker Server 13 以降でホストされている場合にのみ動作します。
なぜPSOSをオンにしない場合もあるのですか?
PSOSを使うと、FileMaker Serverから離れている時(サーバへの接続に遅延が多く生じる時)に最も劇的に速度が向上します。ただこれにはトレードオフがあります。PSOSで動作するスクリプトは、ローカルで実行されるスクリプトとは違って、結果をキャッシュしません。したがって、サーバが近い場合は、キャッシュの方が効果があるのでPSOSは使わない方がよいという判断になるかもしれません。
極端な例を以下に示します:
• PSOSを使わずに他の国からカレンダーを開くと、ある月から別の月へ移動するのに5分かかります。しかしいったん別の月へ移動してから元の月へ戻る時には、ほんの数秒です。
• PSOSがオンの場合、ある月から別の月へ移動するのはわずか5秒です。しかし常に5秒かかります。さっきまで見ていた月に戻るのも、別の月へ移動するのも、同じだけかかります。
このため、DayBackではPSOSは「スイッチ」になっています。「Load Calendar Settings - On Startup --- Edit Configuration Here ---」スクリプト中にあるPSOSについてのコメントを変更することで、デフォルトでオンにすることができます。
注意
カレンダーを自分のファイルに紐付ける、または組み込む場合、FileMaker Serverで実行する時にはそのファイルのスタートアップスクリプトを回避するようになっていることを確かめてください。PSOSのスクリプトが実行される時、スタートアップスクリプトを設定しているすべてのファイルでスタートアップスクリプトを実行するので、動作速度がとても遅くなります。DayBackの「Upon Opening」スクリプトの先頭の数行に使われているのと同じルーチンを使用してください。
If [PatternCount ( Get ( アプリケーションバージョン ) ; "Server" )]
Exit Script []
End If
原文:PSOS|https://www.seedcode.com/pmwiki/index.php?n=DayBackForFileMaker.PSOS
コメント
0件のコメント
サインインしてコメントを残してください。