我有一个现有的asp.net c#应用程序,我想实现一个功能,允许用户通过电子邮件发布内容。用户将发送电子邮件到指定地址,系统将解析电子邮件并使用电子邮件主题、正文和任何附加图像创建数据库条目。我的建议是创建一个Windows服务,以ping pop3/imap启用的电子邮件提供商来检索传入的电子邮件。然后该服务将使用我在此处找到的现有库解析电子邮件http://www.lesnikowski.com/mail/。用户将根据发件人字段中的电子邮件地址与asp.net成员身份匹配,然后将为该用户从电子邮件内容插入新记录。最初,Windows服务将在我为此目的设置的单独EC2实例上运行,因为当前主机不允许root访问。但最终我可能会将整个网站迁移到EC2。
在深入研究之前,我想从您那里获得一些反馈,了解我的整体方法和架构。更具体地说:
- 我描述的是否是您要采取的方法?
- 您是否建议实现Web服务来管理Windows服务和asp.net站点数据库之间的交互?还是建议直接访问数据库?
- 如果我编写Windows服务以每30秒ping一次电子邮件提供商,这会有问题吗?
- 您是否预见到此方法所述的任何安全问题?
- 可靠性方面有什么问题(需要24x7服务)?
附加背景信息---asp.net网站是一个库存系统,每个条目都有名称、描述和可选图像。从电子邮件中,主题将成为名称,正文将成为描述,图像则是图像。如果您熟悉Posterous博客平台,您将对我想要实现的内容有很好的参考。