2008-12-01 38 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

相关问题