内容简介:微服务架构实践之邮件通知系统改造
拆分背景
随着平台业务增长,功能耦合度越来越高,部署周期变长,代码样式混乱、新人入手复杂、独立功能影响系统的稳定性等等,等等,等等问题。
以邮件发送为案例对服务进行拆分,独立服务,独立部署,独立进程,做到及时上线而不影响平台正常运营。
以此为例,望大家对于经手的功能模块,有一个良好的规划,不要碍于项目进度而给自己或者别人制造麻烦。
拆分原因
-
邮件通知分散于各个系统,配置变更容易遗漏
-
代码分散,功能修复麻烦,相应的增加部署难度
-
多人经手,代码风格不同,不易于维护
-
发送模版不规范,导致发送风格迥异
-
线上生产环境出现问题,在不影响正常运行的情况下,不易于修复
-
功能集成在项目,增加了调试的难度
-
影响平台稳定性
拆分优势
-
基于Maven管理项目,好处多多,自行百度
-
SpringMvc+Dubbo实现服务治理,对外开放接口,也可以自定义实现HTTP请求
-
基于Thymeleaf模版,实现邮件动态内容,良好的封装,便于开发
-
初次采用Log4j2 ,睁大眼睛是二,没错,对比log4j和logbak性能大幅度提升
-
独立服务,独立部署,独立进程,更加灵活易部署,易扩展
-
使用LinkedBlockingQueue安全队列做任务队列(咱不考虑)
-
额外增加 Redis 是为了在大量邮件发送请求下缓解邮件发送服务器压力(咱不考虑)
技术实现
Maven、SpringMvc、Dubbo、Redis、Thymeleaf、Log4j2
##技术问题
如何快速入门Maven 如何轻松搭建一个Maven项目框架 对于在Maven库中不存在的Jar该如何处理 如何搭建SpringMvc基础配置 关于Log4j2的正确使用 模版Thymeleaf如何生成静态文件 任务队列LinkedBlockingQueue实现
##架构图例
###关于Maven
##关于流程
以上所述就是小编给大家介绍的《微服务架构实践之邮件通知系统改造》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Android 架构优化~MVP 架构改造
- Sentinel 动态数据源架构设计理念与改造实践
- 8 年上市、3 年微服务改造、2 年中台战,回顾这家公司 12 年技术架构转型路
- 项目容器化改造心得
- 遗留系统改造-开篇
- 全链路压测改造
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Android 源码设计模式解析与实战
何红辉、关爱民 / 人民邮电出版社 / 2015-11 / 79.00元
本书专门介绍Android源代码的设计模式,共26章,主要讲解面向对象的六大原则、主流的设计模式以及MVC和MVP模式。主要内容为:优化代码的首步、开闭原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特原则、单例模式、Builder模式、原型模式、工厂方法模式、抽象工厂模式、策略模式、状态模式、责任链模式、解释器模式、命令模式、观察者模式、备忘录模式、迭代器模式、模板方法模式、访问者模式、中介......一起来看看 《Android 源码设计模式解析与实战》 这本书的介绍吧!
JS 压缩/解压工具
在线压缩/解压 JS 代码
RGB转16进制工具
RGB HEX 互转工具