2

旅行の在庫 (ホテル、レンタル、コーチ、レストラン、航空会社、鉄道、アクティビティ & イベント) を管理/配布し、複数のチャネルを通じて配布するための SaaS プラットフォームを構築しています。

このユースケースでは、4 種類のユーザー (旅行代理店、サプライヤー、ツアー オペレーター、顧客) がそれぞれ、在庫管理と予約の要件に合わせて調整されたさまざまな Web インターフェイスからシステムにアクセスできます。

プロトタイプをテストしたところ、データ モデルを非正規化しても、mongo を使用して複数のユーザーでアトミック性を確保することは困難であることがわかりました。12 月 15 日の時点で、費用対効果が高く、5000 人を超えるユーザーを処理するために、スタートアップ アプリケーションには非常に高速な永続レイヤーが必要であるため、同じ課題に遭遇した人がいるかどうか、およびそれらをどのように解決したかを知りたいと考えていました。

4

1 に答える 1

1

トランザクションの動作を有効にするために、スキーマを変更することを検討してください。(プライオリティ キュー) と TTL コレクションを使用して、完了していない予約のバックグラウンド ワーカーを取り除きます。

MongoDB でそれを行う方法を説明するスキーマ設計スライドがいくつかあります。一例を次に示します。MongoDB ステート マシン

于 2012-10-29T15:26:25.257 に答える