私は現在、石鹸をその一部として使用するのは良い考えだと思うプロジェクトに取り組んでいますが、必要な方法でそれがどのように機能するかわかりません.
ConsoleApp という C# コンソール アプリケーションがあります。ConsoleApp には PHP Web インターフェイスもあります。私が考えているのは、PHP Web インターフェイスが何らかの方法で ConsoleApp を制御することです。そのため、Web インターフェイスのボタンをクリックすると、soap リクエストが SOAP サービスに送信され、次に SOAP サービスが送信されます。 consoleApp に情報を送信し、その結果が SoapService に返されてから PHP に返されます。
これは、SOAP サービスを分離する必要があるように思えます。1 つは php とのインターフェース用で、もう 1 つは ConsoleApp 内ですが、これは正しく聞こえません。Soap の目的を誤解している可能性があると思います。
どうすればこれを達成できますか。あなたが提供できる助けをありがとう
更新 要求に応じて、私が達成しようとしていることについてもう少し情報を追加すると思いました。
コンソール アプリでは、プログラムに渡されてから送信される電子メールを送信する電子メール サーバーとして機能し、送信できない場合は、電子メールが失敗状態になるまで数回再試行します。
Web インターフェイスは、電子メール サーバーの動作状況、つまり、受信中の電子メールの数、未処理の電子メールの数、送信済みの電子メールの数、失敗した電子メールの数を提供します。
Web ページから、電子メール サーバーをシャットダウンまたは再起動するか、失敗した電子メールの 1 つをキューに戻して処理することができます。
アイデアは、ユーザーが失敗した電子メールをキューに追加すると、コンソールアプリが受信するソープメッセージを送信し、情報をキューに追加し、コンソールアプリのログファイルにイベントを記録し、カウンターをインクリメントすることです。処理が必要な電子メールを追跡する方法。これが完了すると、Web インターフェイスに応答が返され、電子メールがキューに正常に追加されたかどうか、または何らかの理由で失敗したかどうかが示されます。
処理される電子メールが多数になる可能性があるため、数秒ごとにデータベースをポーリングし続けたくありません。データベースをポーリングすると、MySQL サーバーに大きな負荷がかかります。私はしたくないので、メールサーバーとしての石鹸は、何かをするための石鹸要求を受け取ったときにのみ何かをする必要があると考えました。
助けてくれてありがとう。