目前公司发邮件的程序存在如下问题.

  • 无法实时监控邮件发送状态,管理员不一定都在抄送人里,只能每个流程单独查看邮件发送情况.
  • 区分不了到底是测试的还是正式的邮件。收到邮件以为发了,但可能是测试的。正式邮件和测试邮件没有明显区别。混在一起时彻底凌乱。
  • 邮件收件人中如果有离职员工,更新不及时,直接会导致邮件发送失败。
  • 发邮件程序各自独立,有的没写打日志的代码。出问题只能靠猜或者人工修改代码加日志,下次在找原因。
  • 邮件发送出问题,并不是所有业务都提供了简单的重新发送方式,有时候只能靠开发人工执行发送代码。

综上,考虑将发邮件写成公共程序,供所有业务系统调用,公共邮件程序应该支持如下特性:

  • 收件人、抄送人等支持可配置。配置方式可以是系统参数也可以是角色
  • 邮件中如果有邮箱失效支持自动忽略,并且记录哪些邮箱被忽略了。
  • 邮件内容支持HTML格式并支持模板配置。调用方只需要传数据过来即可,不需要规定样式。
  • 可以配置邮件发送异常之后的邮件内容和收件人,重要邮件发送失败之后,管理员可以及时人工干预。
  • 测试邮件的标题和收件人应该跟正式有明显的区别,并且支持可配置。测试邮件不能直接发给正式的收件人。
  • 无论发送成功与否,都应该记录发送状态,方便之后的跟踪和问题排查。
  • 提供统一的界面可以监控所有邮件的发送状态,并且支持人工重新发送。
  • 发邮件程序不仅支持立即发送,而且可以指定日期发送。
  • 支持附件(目前仅支持自己系统调用,不支持webservice)

 

posted on 2019-01-25 11:40  namelessmyth  阅读(129)  评论(0编辑  收藏  举报