-1

より高速なウェブメールを構築したい

( php imap functions ( imap port connection ) ) に基づいて小さなウェブメールスクリプトを作成しました

しかし、接続してメールを取得するのに長い時間がかかります..

それで、私は接続せずに手動でメールを読むことにしました(私自身の機能による)..

( user mails ) パスに移動する独自の関数を作成してから、 ( scandir function ) を使用します

フォルダー内のすべてのメールを取得してから、手動で読み取り/取得します。

サンプルコードをお見せします

<?
$current_folder = 'new';
$virtual_user = 'someone';
$path_to_mails = '/home/user/mail/' . $virtual_user . '/' . $current_folder;
$all_emails = scandir( $path_to_mails );
foreach ( $all_emails as $mail_file ) {
              $file = file_get_contents ( $mail_file ) ;
              //Now i've the mail file .. 
              //i'll explode it and extract the important information from it
}
?>

今、私はどのポートにも接続せずにメールを受け取りました

(php imap関数)よりも速いと思います...

しかし、ファイルを取得して読み取るのにも長い時間がかかります!!

gmail と yahoo の方が速いのはなぜですか?データベースを使用して Web メール ファイルを保存している可能性がありますか?

今、私の質問は

1 - 私自身の関数は、理論的には php imap 関数よりも本当に高速ですか? (私が間違っているかもしれません)

2 - (Gmail、Yahoo、Hotmail) メールファイルの保存場所は? データベースまたはハードディスク? 彼らは非常に高速で、同時にimap経由でサーバーに接続し、php経由でメールを取得できます。つまり、ハードディスクを使用してメールファイルを保存します!! または、データベースを使用し、ウェブメール ソフトウェアをカスタマイズした可能性があります。

3 - Postfix をカスタマイズして、メールをハードディスクのデータベース インスタントに保存する方法はありますか?? 4 - より高速で強力なウェブメール システムを構築するための最良のアイデアを教えてください

この質問は無視しないでください

私は 3 か月前にこのプロジェクトに取り組んでいます..疲れました!

4

1 に答える 1

0

1 - はい。

2 - プロバイダーによって異なります。Yahoo と Hotmail は実際の IMAP サーバーを使用している可能性があると思いますが、インフラストラクチャを開示していないと思います。

3 - これは postfix とは関係ありません。結局、Postfix は単なる MTA です。メールを保存するのではなく、転送するだけです。もちろん、独自のデータベース駆動型サービスをコーディングすることもできます。困難な仕事 ;)

4 - 既存のツールに基づいて構築します。最も簡単な選択は、 Horde Webmailの上に構築することです

Webメールは大変な作業です。あなたが示した PHP コードの小さなスニペットは、現代の Web メーラーの複雑さを考えると、現実とはかけ離れたものです。本当に何かを機能させたい場合は、既存の構成要素から始める必要があります。Horde は開発フレームワークであり、効率的な IMAP キャッシング機能、適切な AJAX バックエンドなどを提供するため、最適なオプションです。それにもかかわらず、あなた自身のウェブメールサービスは依然として困難な仕事です.

于 2012-03-13T14:38:21.053 に答える