メインコンテンツへスキップ

Prisma Accelerateに関する既知の制限事項

Accelerate使用時の既知の制限事項を以下に示します。他にも何かお気づきの点がありましたら、Discordからお知らせください。

生クエリをキャッシュできない

現在、生クエリの応答をキャッシュすることはできません。

Fluent APIとの非互換性

Client Extensions(Accelerateで使用)は現在、fluent APIの型を正しく転送しません。Client Extensionsに間もなく修正が加えられることを期待しています。

非常に負荷の高い、または実行時間の長いクエリとの非互換性

Accelerateは、高性能で低レイテンシのクエリに対応するように設計されています。パフォーマンスの問題やリソースの競合を引き起こす可能性のある、非常に負荷の高い、または実行時間の長いクエリでの使用は意図されていません。制限は構成可能ですが、推奨されるガイドラインに適合するようクエリを最適化することをお勧めします。

最適化または削減できないクエリについては、次の2つの解決策のいずれかをお勧めします。

  1. リードレプリカ拡張機能の使用: Prisma ORM のリードレプリカ拡張機能を使用すると、`primary`と`replica`の2種類の接続を設定できます。Accelerate接続を`primary`として設定し、直接接続を`replica`として設定できます。リソースを大量に消費するクエリや実行時間の長いクエリは`replica`にルーティングされ、`primary`(Accelerate接続)は通常のクエリを処理します。ご注意ください: このソリューションでは、直接接続のセットアップと、完全な生成されたPrisma Client(つまり、--no-engineなし)の両方が必要です。

  2. 分析クエリの分離: 私たちが推奨するソリューションは、分析クエリを別のアプリケーションに分離することです。この別のアプリケーションは、直接接続を使用して、Accelerateを利用したアプリケーションのパフォーマンスやコストに影響を与えることなく、負荷の高いクエリを実行できます。

非常に負荷の高い、または実行時間の長いクエリとPrisma Accelerateの使用を必要とするユースケースがある場合は、弊社までお問い合わせください。

MongoDB接続文字列内の直接IPv4アドレスとの非互換性

Accelerateは、MongoDB接続文字列内の直接IPv4アドレスをサポートしていません。IPv4アドレスが提供されると、AccelerateはそれをNATゲートウェイ経由でルーティングするためにIPv6形式に変換します。この変換により、ポート値の書式設定のために接続文字列が無効と見なされる可能性があります。

回避策: この問題を解決するには、IPv4アドレスを指すDNSレコードを作成し、直接IPの代わりにそのDNSレコードを接続文字列で使用してください。

  • IPv4接続文字列(サポート対象外): mongodb://user:password@192.168.1.100:27017/db_name
  • DNSレコード接続文字列(サポート対象): mongodb://user:password@my-database.example.com:27017/db_name

AccelerateのIPv6ファースト設計に関する追加の詳細は、弊社のブログ記事を参照してください。

© . All rights reserved.