このようなマッピングを使用してキャッシュを実装し、コストを削減したいと考えています。ti が真である場合は、他のアプローチを検討する必要があります。
- DataStore または MemCache を使用して、リクエスト パラメータに基づいて前処理されたデータをキャッシュできます。
- WAR ファイルの一部としてアップロードされた静的ファイルの使用を試みることができます。静的ファイルは CPU 時間を必要としないため、コストを削減する最良の方法です。
バッチ処理は、Java Web アプリケーションでは不自然です。通常、問題は別の方法で解決できます。
リクエスト間で共通の状態が必要な場合、問題はより複雑になります。AppEngine アーキテクチャは、インスタンス オンデマンドの概念に基づいています。したがって、どのインスタンスがリクエストを処理するかは保証されません。これは、静的データを共有できないことを意味します。そのため、状態は、DataStore/MemCache や FileService などの永続的なストレージを使用してのみ共有できます。ただし、各テクノロジーの遅延を考慮する必要があるため、使用する場合は注意してください。
このようなアーキテクチャの最後の理由は、受け取ったリクエストに基づいて実装する必要があるワークフローです。ワークフローが必要な場合は、http://code.google.com/p/appengine-pipeline/ を参照してください。Task API の実行フロー制御が可能です。