2017-08-21 86 views
2

メッセージキュー(Rabbit MQ)にオブジェクトをプッシュするREST APIがあります。私のプロダクトオーナーはSQL ServerストアドプロシージャからそのAPIを呼び出すように求めました。SQL ServerからREST APIを呼び出す

これは通常の良い方法ですか?

これは正しい方法ですか?そうでない場合は、私の問題に最適な解決策は何ですか?

SQL ServerはREST APIを呼び出すことができますが、C#のような高水準言語 もよく分かります。

私の問題は、どのように私の製品の所有者がTSQLのC#instateを使用するように説得できるかということです。

+0

"私の問題"を定義してください。また、製品の所有者が技術的な決定を下したという話は聞いたことがありません。それとも、あなたの製品アーキテクトについて話していますか? –

+0

@QualityCatalystこのプロジェクトのプロダクトオーナーは、コンパイラのテクニカルマネージャーです:-( –

+1

この場合、彼は彼の要求が理にかなっている理由を説明してくれます。 C#はより良いです。C#はプログラミング言語です。プログラミング言語からサービスを呼び出すことはできません。サービスを呼び出すサービス、アプリケーション、ボット、またはWebページを書くことができます。;-) –

答えて

0

セキュリティの見通し - データベースから直接アクセスすることはお勧めできません.APIのデータにはセキュリティ上の問題があり、データベース上で実行する必要があるためです。たとえば、データベース上のデータをデータベースサーバー上で直接実行すると、データベース上のデータを削除できるスクリプトが作成されます。それを別の層で扱うならば、それを防ぐことができます。

実際的な理由から - データベースに挿入する前に、データの確認、変更、正規化などが必要な場合があります。データベースの外部から行う方が簡単です。 C#には、それを手助けできる多くの機能が組み込まれています。

一般的な良い方法 - ロジック層とデータ層を分離することをお勧めします。

より優れたサポートとメンテナンスが容易です。例えば、SQLコードよりもC#コードからデバッグするほうが簡単です。また、データベースを壊す前に問題を捕らえることもできます。

願っています。

関連する問題