私は、ユーザーが特定の範囲内の他のユーザー間でジオロケーション(lat、lng)を共有することに同意できるアプリケーションを設計しています。
これは、X-radiusでアプリケーションをアクティブに使用しているユーザーが100人いる場合、N秒ごとに位置データを更新して相互に共有することを意味します。
言い換えると、リアルタイムアプリは、1回の書き込み= 100回の読み取り、100回の書き込みは10000回の読み取りに相当することを意味します。
おそらく、ソフトウェア側で私ができることの1つは、書き込み/読み取り間隔を操作して、ロードバーストを減らすことです(せいぜい均等に分散する)。
しかし、ジオクアリング機能を備えたスケーラブルなソリューションである別のものがあります。
私が試したのはFirestoreでしたが、支払いモデルが適合しなかったため、固定価格のソリューションが必要です。
KafkaやRabbitMQのようなメッセージブローカーを検討してきましたが、それらがジオクエリをサポートしているかどうかはわかりません。
現在、RedisとPostGISを検討していますが、HTTP要求/応答を介してデータを返す方法も検討する必要があります。
データは常に公開されるため(ユーザーが同意した場合)、承認のオーバーヘッドがないため、最も簡単で最速のソリューションを探しています。
私はそれと一緒に行くためのヒントをいただければ幸いです
アプリケーションは書き込みと読み取りが重いため。インメモリソリューションを使用してアプローチすることをお勧めします。この時点から、Redis | GEORADIUSを使用できます。Redisにはジオロケーション検索が組み込まれています。また、最小限のリソース要件で数百万の読み取り/書き込みを処理できます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加