3

私の組織 (小規模な非営利団体) は現在、SQL Server データベースを備えた内部運用 .NET システムを持っています。顧客 (すべて私たちの地域のローカル) は、オフィスのスタッフがシステムに入力する要求を手動で送信します。

現在、お客様がオンラインで既存のリクエストのステータスを確認し、将来的には新しいリクエストをオンラインで作成できるように、オンライン パブリック アクセスに向けて準備を進めています。同じために、新しいasp.netアプリケーションが開発されます。

このアプリケーションをサーバー上でホストする (既存のデータベースに直接アクセスする) か、外部のホスティング サービス プロバイダーを使用するかを決定しようとしています。外部でホスティングするということは、ホスティング プロバイダーのサーバーに Requests データベースのコピーを保持することを意味します。ホストされたデータベースと既存の本番データベースの間で要求データをリアルタイムで同期させるには、どのような方法が推奨されるでしょうか?

4

3 に答える 3

1

使用中の 2 つのデータベース間で同期を試みるのは、常に頭の痛い問題です。私があなたに尋ねなければならない質問は、あなたがアプリケーションをオンサイトでホストする手段を持っているなら、なぜその道に行かないのですか?

サイトでホストしない正当な理由があるが、利用可能な Web インフラストラクチャがある場合は、一連の明確に定義されたメソッドを介してデータベースへのアクセスを提供する Web サービスの作成を検討することをお勧めします。または、反対に、Web サイトでリモートでホストされているデータベースを本番データベースにし、Web サービスを使用してオフィス システムからアクセスすることもできます。

どちらの場合でも、1 つのデータベースへのアクセスを提供することは、2 つの異なるデータベースを常に完全に同期させようとするよりもはるかに簡単です。

于 2013-01-28T20:57:34.457 に答える
1

Web サービスが実用的でない場合 (または可用性に懸念がある場合) は、同期用のキューイング システムを検討することをお勧めします。データベース (ローカルまたはホスト) への変更も、メッセージング キューに追加されます。各サイドは、変更が必要なキューを監視し、変更を適用します。これは、特定の時点で使用できないデータベースの 1 つを説明します。

そうは言っても、@LeviBotelhoに同意します。2つのデータベースを同期することは悪夢であり、可能であれば避けるべきです。必要に応じて、SQL Server のレプリケーションについて調べることもできます。

于 2013-01-28T22:38:35.693 に答える
0

最終的に、データは同じであり、顧客が提出したデータです。現在はあなたを通じて入力されていますが、最終的には直接入力されることになります。同じデータを持つ 2 つの異なるデータベースを持つ必要はないと思います。複製エラーがポップアップする場合 (そしてポップアップする場合) だけでも、チームの頭痛の種になります。

于 2013-01-28T21:05:28.547 に答える