2008-12-01 105 views
2

我正在開發針對多用戶系統的電子郵件輪詢解決方案。因此,用戶可以發送電子郵件在他們各自的ID,它將被輪詢並插入到數據庫。編寫電子郵件輪詢器的最佳方法

有跡象表明,我正在考慮兩個方案:

  1. 的Perl/Unix的基於電子郵件輪詢。基於
  2. 一個java輪詢。

你會推薦什麼。(其他建議,也歡迎)

+0

@satya一個多從計算器是startups.com只想讓你知道這個網站,因爲它的一個網站,程序員可以向業務問題.... – 2009-12-07 13:09:04

回答

1

相反投票的,你爲什麼不將郵件轉發到一個進程?根據您使用的郵件服務器,您可以將其作爲別名或甚至在.forward文件中執行。

0

我沒有什麼可以補充的,但目前有一個項目在谷歌代碼重建iwantsandy.com作爲開源。

這是在:
http://code.google.com/p/sandysback/

我肯定會密切關注這個,看看他們是如何解析的郵件,並將這些「插入數據庫」

0

電子郵件,你有哪種語言最豐富的經驗在!

我個人對java和perl很瞭解,對於這個任務我會選擇perl,但是不同之處都是邊緣的。

Perl會更短,更甜美,java將花費更長的時間,但一旦數據庫訪問被整理出來,java可能會是一個更強大的解決方案。

我發現Perl DBI比JDBC更好更便攜的數據庫接口,它不會隱藏數據庫實現,並且對版本變化很敏感等。您的目標數據庫必須具有正確版本的正確數據庫驅動程序。

0

RE:波林

如果你有電子郵件轉發到我會強烈建議你做一個過程的選項。 (轉發通常對服務器的負載比poling要少。)如果不是,那麼poling是下一個最好的事情。使用您最熟悉的語言查看POP3客戶端庫。

RE:語言選擇

如果我打算做了很多的郵件解析那麼Perl將是我的選擇。如果不涉及太多解析,那麼Java將成爲我的出路;-)。

- 在過去的生活中,我編寫了一個Perl腳本來解析(結構良好)傳入的電子郵件到HTML頁面並將它們發佈到Web服務器。

0

你有幾個選項。正如原始海報所說 - 可能最簡單的方法是在別名文件中爲腳本設置一個條目。

然後電子郵件的正文作爲標準輸入傳遞給腳本。然後,您可以使用perl腳本+ Mime模塊來分析消息的各個部分,並根據需要執行任何操作。

也可以看看apache詹姆斯 - 這是一個自定義的郵件服務器。他們有等價的servlet,叫做'maillets',你把你的業務邏輯放進去。他們往往很難在企業場景中部署,儘管大多數公司不喜歡部署定製的郵件服務器。

...別名路線可能是您最好的選擇。另一個注意事項 - 電子郵件不保證。如果您將這種應用程序用作應用程序消息傳遞系統的某種應用程序,並且您控制兩端,則應該查看其他內容,例如JMS類型的消息傳遞。

-Ace

相關問題