問題タブ [mta]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - LAMP スタックでメール関連アプリケーションを管理するための最適なソリューション
PHP で記述された Web アプリケーションに取り組んでおり、次の処理が必要です。
1) サインアップ時のユーザーには、Web アプリケーションによって一意の電子メール アドレスが与えられます。
2) ユーザーは、電子メールでコンテンツを送信する共同作業者に電子メール アドレスを提供できます。
3) PHP スクリプトは新しい電子メールを監視する必要があります
4) 新しい電子メールは解析され、Web アプリケーションで使用するためにデータベースにロードされます。
現在、Ubuntu サーバーで Postfix と Courier を使用し、PHP の exec() または system() コマンドを介してシステムに呼び出しを発行することを検討しています。
これに対するより良い解決策はありますか?
com - MTA を使用したアウトプロセス COM サーバー
フリー スレッドとして作成されたアウト プロセス COM (ATL) サーバーがあります ( CComMultiThreadModel
)
それがオブジェクトへの呼び出しの再入可能性にどのように関連するかについて少し混乱しています。たとえば、複数のクライアントから同時に呼び出すことが許可され、それらの要求を同時に処理できると想定していましたが、(私のログによると)各リクエストがシリアル化されていること。
私が見逃しているのは、MTAとしてクラスを作成するだけで、それが本当にそうであるか、他にやらなければならないことがあります。ここでは、単一プロセス内のスレッドではなく、すべてが同時呼び出しを行う複数のプロセスについて言及しているためCOINIT_MULTITHREADED
、問題ではないことに注意してください。
MTA に関する一部の MS ドキュメントからのこのスニペットは、すべてがそのまま使用できるように思われます。
複数のクライアントが、異なるスレッドから、フリースレッドをサポートするオブジェクトを同時に呼び出すことができます。フリー スレッドのアウトプロセス サーバーでは、COM が RPC サブシステムを介してサーバー プロセス内にスレッドのプールを作成し、クライアント呼び出し (または複数のクライアント呼び出し) をこれらのスレッドのいずれかによっていつでも配信できます。
multithreading - WCFサービスとCOM相互運用機能のコールバック
WCFサービスのインスタンスを作成し、コールバックとしてハンドルをそれ自体に渡すCOMオブジェクトがあります。COMオブジェクトはMTAとしてマーク/初期化されます。
コールバックを呼び出すWCFサービスのすべてのインスタンスが同じスレッドで発生するという問題があるため、それらは一度に1つずつ処理され、高負荷でセッションタイムアウトが発生します。WCFサービスはセッションベースであり、それが違いを生むかどうかはわかりません。
infrastructure - 信頼できるリモートMTAが利用可能な場合でもローカルMTA
開発チームと、アプリケーションサーバーにローカルMTAをインストールするか、内部ネットワークにあるMTAサーバーを使用して電子メールを送信するかについて話し合いました。両方のソリューションには長所と短所があります。
長所:電子メールを送信するプログラムは、それをローカルMTAに配信し、配信、再試行、または発生する可能性のあるエラーを忘れることができます。
短所:電子メールを送信するユーザーは、メールの送信に問題があったことを遅く通知される場合があります。プログラムは、リモートサーバーが利用できないかどうかをすぐに検出できます。短所:セキュリティ。ローカルMTAは、サーバーのセキュリティを確保するために適切に構成する必要があります。短所:プロセスの複雑さの追加レイヤー。
私の見解では、それを単純に保つ必要があります。私たちは、私たちによって制御されておらず、その状態がわからないMTAサーバーと通信しているプログラムについて話しているのではありません。私の見解では、カウンターパーツについて確信が持てない場合は、ローカルMTAを用意する必要がありますが、ここでは、プログラムがそれを「既知の」MTAシステムに配信します。ですから、追加のレイヤーは必要ないと思います。さらに、各システムにローカルMTAを設定して電子メールを送信しようとすると、追加の問題/エラーやより多くの管理タスク(メンテナンス/パッチ)が発生する可能性があります。Unixシステムでは常にローカルMTA(sendmail)を実行していると言う人もいるかもしれませんが、私たちの組織では、潜在的なリスクにつながる可能性のある余分なサービスが実行されないように、システムを最小限に抑えています。
ただし、既知の/制御された/監視されたMTAシステムと通信することを念頭に置いて、インフラストラクチャをどのように設計するかを知りたいと思います。それとも単に視点の問題ですか?
フィードバックをありがとうございます。
イヴ
windows-server-2008 - MailEnableの1時間あたりの送信制限を変更するにはどうすればよいですか?
MailEnableは、デフォルトで1時間あたり100通の電子メールでユーザーを制限しているようです。その制限を変更したいのですが、このためのオプションが見つかりませんでした。
マニュアルと設定ファイルを掘りましたが、運がありませんでした。
何か考えはありますか?
c# - マルチスレッド用に設計されていない Asp.Net Mvc および Win32 dll
サードパーティの win32 dll をすべてのビジネス ロジックのゲートウェイとして使用する Web アプリケーション (MVC) を構築する必要があります (ログオン メカニズム、関数を含み、状態を維持します)。この dll は、マルチスレッド用に設計されていません。MTA シナリオでは、dll は一定時間後につまずきます。推奨される解決策は、ASP.NET MVC を ASP クラシック モード (Asp-CompatHandler を使用する STA) で実行することです。これを試してみましたが成功しました - すべてが安定して動作します。問題は、多数の同時ユーザーが存在し、一部の関数呼び出しに数秒 (最大 10 秒!) かかることです。すべてのユーザーがお互いをブロックすると、これは恐ろしいことになります。同じアプリケーション内でブロッキング効果を最小限に抑える最善の方法は何ですか? 互いにブロックする必要があるのは 10 人のユーザーだけだとしますか?
...Web は MTA で実行されます ...Web は一度展開されるだけです ...すべてが同じプロセス内で実行されます
これを解決する良いコンセプトについて誰かアドバイスをもらえますか?
ありがとうございました!マーティン
更新 - 解決策が見つかりました: Ami Bar の「Smart Thread Pool」のおかげで、探していた動作を (簡単に) 実現できました。ワーカーの概念 (特定のユーザー数がワーカーを共有し、このワーカー内で互いにブロックする) を実装し、ワーカーごとに、1 つのスレッドの最大数と最小数を持つ独自のスレッド プール インスタンスを作成しました。これはスレッド プールのアイデアではありませんが、作業項目の処理が非常に簡単になり、他にも優れた機能がいくつかあります。現在、Web アプリケーションは MTA で実行されています。数時間にわたって安定しているかどうかを確認するために、いくつかの負荷テストを準備します。ここを参照してください: http://www.codeproject.com/Articles/7933/Smart-Thread-Pool
php - Web開発のためのローカルMTAについてのヒントを与える
私が欲しいものを説明しようと思います。
さまざまなREALアドレスにメールを送信するPHPスクリプトがあります。これらの電子メールがインターネットに送信されるのは好きではありません。すべてをローカルメール(user @ localhost)にリダイレクトするか、単純に電子メールをローカルファイルに書き込みます(確かにヘッダー付き)。
デスクトップでLinuxを使用しています。
c - CoUninitialize をいつ呼び出す必要がありますか?
Out-OF-Proc COM サーバーへの非同期呼び出しをカプセル化する関数を DLL に実装しました。次のようになります。
問題は、マルチスレッドで関数を呼び出すと、COM のワーク スレッドのコール スタックで compase.dll で例外がスローされることがあります。最後の2行だけコメントアウトすればOKです。COM スレッド プール内のワーク スレッドがまだリソースを使用している間に、CoUnitialize() がすべてのリソースを解放するようです。私の考えが正しいのか、どこかに問題があるのか わかりません。私が正しければ、作業スレッドがすべてのリソースを解放するのを待つ API を使用して、この問題を回避するにはどうすればよいですか?
php - Windows が PHP Sendmail に使用する MTA
Win7 システムで Processmaker をセットアップしようとしていました。電子メールの送信には、PHP の Sendmail() を使用したいと考えています。しかし、そのためには、マシンに MTA をインストールする必要があり、そのために php.ini を構成する必要があります。誰かが MTA について教えてくれませんか。メールの設定については、このリンクをたどっています。( http://wiki.processmaker.com/index.php/2.0/Email_-_Settings )
email - FreeBSD で PHP のみに MTA をセットアップする簡単な方法 mail()
PHP スクリプトからのみ送信するためのメール サーバーをセットアップする必要があります。メールを受信したり、別の方法で送信したりする必要はありません。望ましいのは Postfix です (たとえば、Sendmail よりも簡単です)。Ssmtpは私には合いません。
このための手動またはすぐに実行できる構成はありますか?