基于微服务架构的双语阅读平台的设计与实现
发布时间:2021-08-18 02:19
移动互联网时代的快速发展以及在线电子书阅读平台的越来越火热,出现了越来越多的电子书阅读平台。这些阅读平台特色单一,功能比较简单,架构也是传统的单一架构,但是随着用户的增长,电子书阅读平台的功能需求不断扩展,功能越来越复杂,要是没有一个完善的系统架构,在平台功需要进行扩展的时候就会很麻烦。因此,本文基于微服务设计理念,设计了一个高可用、高性能、低耦合、易扩展的系统架构,并且使用该微服务框架开发实现了在线双语阅读平台。本文首先对微服务架构的整体设计的基本原则做了一个详细的介绍,并在介绍的同时增加了关键技术的介绍。首先为了实现高可用和高性能,采用Nginx负载均衡架构,对系统的请求进行分发处理;为了能够实现系统易扩展和低耦合,本论文将系统的功能模块在原来的整体架构的基础之上进行重新设计与划分,使用Dubbo进行微服务架构的设计与开发,同时增加Zookeeper集群来管理服务注册与服务发现;然后通过Spring Boot进行业务模块代码的构建,通过Docker容器技术进行集成部署。之后,根据具体的业务需求设计整个双语阅读平台的系统架构,并给出了系统中各类服务器的具体的设计方案。然后通过Spri...
【文章来源】:北京邮电大学北京市 211工程院校 教育部直属院校
【文章页数】:71 页
【学位级别】:硕士
【部分图文】:
图2-1?Dubbo整体架构??1、服务消费者(Consumer):通过接口调用服务提供者的服务
注册中心模块。其中注册中心的作用就是提供给服务消费者和服务提供者之间信??息传递使用的。从官方文档可知,Dubbo的整体架构由一下五个方面组成的,如??图2-1所示。??—>?init??->?async??一??sync??2.subscribe,^-'?'J.?register???3.notify?、、???Consumer,?^一?、、、?Provider??^?^?A???a?**■??4.?invoke?^??\?/??、、、5.count,/??j?1??图2-1?Dubbo整体架构??1、
?Inovker。最后?FailoverClusterlnvoker?会将参数传给?LoadBalance?选择出的??Invoker实例的invoker方法,进行真正的远程调用。如图2-3所示。??Failover^??Fa?"fast?贼测織一?r??-?x.??Failsafe?h:邊S|?-T?^eSlstry??Forking」m?吨戏?:LlSt<inV〇ker>??— ̄"?????^ ̄s_??invokeL.?Condition??\*^\seJect?*?List<lnvoker>??「Rand〇m??\?—?RoundRobin??\?,?I?LeastActive??\tnvoke?丨?Invoker??图2-3?Dubbo远程服务调用具体流程实现??3、自动注册与发现服务。和一般的RPC[5H周用有所不同Dubbo是通过注册??中心来进行远程服务调用的,不需要消费端知道具体的服务端内容,其他的所有??情况交给注册中心去处理,服务消费者能够灵活的从注册中心获取服务提供者的??信息。??2.2负载均衡技术??Load?Balance^中文意思为负载均衡,它的职责是将网络请求,或者其他形??式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些??服务器比较空闲的情况,通过负载均衡,可以让每台服务器获取到适合自己处理??能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。??项目开发的过程中可以使用Nginx实现负载均衡。在Dubbo中
【参考文献】:
期刊论文
[1]近20年国内互联网视域下基础教育英语阅读研究的可视化分析[J]. 李智敏,邹一戈. 广东第二师范学院学报. 2021(02)
本文编号:3348993
【文章来源】:北京邮电大学北京市 211工程院校 教育部直属院校
【文章页数】:71 页
【学位级别】:硕士
【部分图文】:
图2-1?Dubbo整体架构??1、服务消费者(Consumer):通过接口调用服务提供者的服务
注册中心模块。其中注册中心的作用就是提供给服务消费者和服务提供者之间信??息传递使用的。从官方文档可知,Dubbo的整体架构由一下五个方面组成的,如??图2-1所示。??—>?init??->?async??一??sync??2.subscribe,^-'?'J.?register???3.notify?、、???Consumer,?^一?、、、?Provider??^?^?A???a?**■??4.?invoke?^??\?/??、、、5.count,/??j?1??图2-1?Dubbo整体架构??1、
?Inovker。最后?FailoverClusterlnvoker?会将参数传给?LoadBalance?选择出的??Invoker实例的invoker方法,进行真正的远程调用。如图2-3所示。??Failover^??Fa?"fast?贼测織一?r??-?x.??Failsafe?h:邊S|?-T?^eSlstry??Forking」m?吨戏?:LlSt<inV〇ker>??— ̄"?????^ ̄s_??invokeL.?Condition??\*^\seJect?*?List<lnvoker>??「Rand〇m??\?—?RoundRobin??\?,?I?LeastActive??\tnvoke?丨?Invoker??图2-3?Dubbo远程服务调用具体流程实现??3、自动注册与发现服务。和一般的RPC[5H周用有所不同Dubbo是通过注册??中心来进行远程服务调用的,不需要消费端知道具体的服务端内容,其他的所有??情况交给注册中心去处理,服务消费者能够灵活的从注册中心获取服务提供者的??信息。??2.2负载均衡技术??Load?Balance^中文意思为负载均衡,它的职责是将网络请求,或者其他形??式的负载“均摊”到不同的机器上。避免集群中部分服务器压力过大,而另一些??服务器比较空闲的情况,通过负载均衡,可以让每台服务器获取到适合自己处理??能力的负载。在为高负载服务器分流的同时,还可以避免资源浪费,一举两得。??项目开发的过程中可以使用Nginx实现负载均衡。在Dubbo中
【参考文献】:
期刊论文
[1]近20年国内互联网视域下基础教育英语阅读研究的可视化分析[J]. 李智敏,邹一戈. 广东第二师范学院学报. 2021(02)
本文编号:3348993
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3348993.html