2010-10-11 135 views
1

我需要在java或node.js上創建類似郵件守護進程的東西我們有一個寫在PHP上的高負載項目,它會生成大量的電子郵件註冊/更新/等。目前所有的消息都在處理後被加入到mongodb中(語言/模板)。我正在考慮編寫一個小的守護進程,它會每秒鐘檢查mongo中的新消息併發送出去。java上的郵件守護進程

我對Java或node.js有點新,並且不想創建另一輛自行車。有人可以指向我正確的lib或類似的東西嗎? PS:它應該是快速的,異步的和獨立的。

+0

爲什麼不僅僅使用現有的(非Java)郵件傳輸代理?請參閱http://en.wikipedia.org/wiki/Mail_transfer_agent#List_of_MTA_software_for_Unix-like_operating_systems和http://en.wikipedia.org/wiki/Comparison_of_mail_servers – 2010-10-11 22:53:10

+0

PHP和MongoDB是設置此郵件隊列的最具可擴展性和高性能的方式,我們需要腳本的異步操作和快速響應。腳本無法等待來自MTA的回覆。 – nateless 2010-10-11 23:55:10

回答

1

我建議在本地建立一個SMTP服務器,並且讓PHP項目直接發送郵件到生成的SMTP服務器。這是針對這種服務器進行優化的確切場景。

您可以安裝本機版本或Apache James(用Java編寫)。我可以推薦使用Ubuntu標準的postfix,並且易於安裝。我沒有Apache James的個人經驗,但它似乎是一個針對中低端網站的完整服務器解決方案。

+0

我回答了上面的評論。我們不能等待MTA的回覆。我的意思是我不想在Java上創建另一個MTA,我只想編寫線程守護程序來檢查Mongo併發送帶sendmail的電子郵件,或者使用Commons Email ...我想知道應該使用GC,線程或事件像守護進程,什麼適合最好的Java或node.js? – nateless 2010-10-12 00:06:42

+1

電子郵件遞送發生在_after_之後,而不是在MTA中填寫。 Postfix或sendmail在這方面表現相同。 – 2010-10-12 00:24:26