使用消息队列会增加项目的复杂度

使用消息队列会增加项目的复杂度。我的一个Side project是一个邮件相关的项目,主要功能是接收和发送邮件,是一个saas类型的项目,用户使用我的API发送和接收邮件,为了缩短API block用户请求进程的时间,我把所有的实现代码移到队列里面。所以队列的消费进程需要抽象出公共的配置文件,比如数据库的连接信息,Model,某些应用抽象了业务逻辑,这些部分的代码也需要放置在一个公共的项目里面。

原本项目是一个叫replybymail-web的包,后来因为发送邮件部分的代码需要放置在队列里面,建立了一个叫做replybymail-sender的rabbitmq消费者进程,这个消费进程用pm2来启动。这是sender需要和web公用同一个replybymail-model的包,model的包所有需要的模型的代码,同事新增了reply-common,包括

  • 一些加密的方法
  • 配置信息如RabbitMQ的连接地址和用户名密码
  • 一些依赖配置
  • 一些公共的方法

这时,我们的结构就变成了这样。

replybymail架构图.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,663评论 25 708
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,974评论 6 342
  • 小时候我有一个梦想,就是有一间属于自己的小屋,里面都是自己的家具,最重要的,有一台电视机,可以在床上躺着看电...
    云梦泽曼曼阅读 298评论 1 1
  • 静谧的夜,天边已经透着一丝亮光,竣王府内安静得透着诡异,看门婆子的猫都卧在窗边窥探窗外,王爷的内院站着一列暗卫...
    泱泱74阅读 455评论 0 1