随着互联网的高速发展,淘宝、微信、12306和各类直播平台等各种规模庞大、高频率、高峰值的应用层出不穷,而且在一些特殊节点,比如淘宝的双十一购物节、12306的春运抢票高峰等,系统的访问量更是日常流量的几万甚至千万倍。为了支撑起如此庞大的性能需求,迫切需要各种层面的配合。
传统的单体式架构,虽然易于开发、部署和扩展,但是存在很多的弊端,特别是应用变大或者团队扩大,这些弊端将更为明显和严重,对企业的长远发展是十分不利的。
由此,技术人员在2012年提出了微服务的概念,指明组件化和服务化是系统架构发展的必然趋势,虽然在一定程度上增加了前期开发的复杂度,提高了部署的技术难度,但是可以为企业的长远发展建立坚实的基础,其利益远大于弊端。因此,研究微服务系统架构的优势和核心要点,探索rabbitMQ技术在大型业务系统中的应用,对于开发低延迟、高并发、高性能、高可用、高可靠的应用系统很有辅助作用。
基于上述背景,本毕业设计在深入理解微服务架构的技术背景、实现原理与优缺点的前提下,对微服务架构中各个组件之间基于消息队列的异步通信模式进行了技术研究,以典型的消息队列rabbitMQ为主要技术手段,以时下流行的轻量级框架spring boot为容器,借助java开发语言,实现了微服务架构常用的消息中间件。
论文首先对所用技术进行了理论研究与概述,然后利用以上技术实现了三种应用场景下的应用组件,分别是邮件服务器、复杂业务拆分和分布式任务处理;该组件可与业务应用集群通过消息队列进行通信,作为一个独立的模块帮助业务系统完成一些功能,减轻服务器压力。
【关键词】rabbitMQ springboot 微服务 消息中间件
参考文档和完整的文档和源码下载地址: