当前位置:主页 > 科技论文 > 软件论文 >

基于Node.js与Etcd的轻量级微服务开发平台的设计与实现

发布时间:2020-11-13 13:46
   随着社会信息化程度的不断提高,人们对信息技术提供的各种服务的依赖程度也日益增加,软件系统也因此变得越来越复杂。在这种发展趋势下,传统单体式的软件架构方式的弊端日渐显现,而微服务架构的理念与思想开始受到广泛的重视,微服务架构是指将软件拆分成多个能够独立运行的服务并借此来获得更好的工程特性的软件架构方式。目前,业界已经出现了一些微服务架构的实施方案,但这些方案仍存在引入组件过多,学习和使用门槛较高等缺点。因此,业界需要轻量化的且对开发与运维工作支持力度更高的微服务架构的实施方案。本课题设计并实现了一个基于Node.js与Etcd相关技术的轻量级微服务开发平台。其中,Node.js在以IO为主的高并发场景下性能优越,而Etcd则是基于Raft协议的分布式键值对存储系统,增强了平台在分布式环境下的可靠性。课题完成的工作包括:第一,设计并实现了节点管理组件,该组件是平台得以实现的基础,为平台中每台服务器上的微服务程序提供了基础的技术支持,也为运维人员与开发人员对整个集群进行即时的管控提供了可能。第二,设计并实现了平台管理组件,该组件提供了对平台进行管理的API,相关技术人员可以借助基于这些API的自动化脚本或可视化客户端来完成对平台的管理工作。第三,设计并实现了API网关组件,该组件负责处理来自平台外部的请求,相关技术人员可以在该组件中集成自定义的请求处理逻辑,从而起到统筹内部微服务的作用。本文研究和实现的轻量级的微服务开发平台(由上述3个组件构成)已经被投入到了实际生产环境中,实际使用的效果表明借助该平台能够快速实践微服务架构相关的理念,且提高了相关的运维与开发工作的效率。
【学位单位】:东南大学
【学位级别】:硕士
【学位年份】:2018
【中图分类】:TP311.52
【部分图文】:

示意图,架构,单体,相关方


单体式架构与微服务架构区别示意图

示意图,点交,事务,协调者


第二章 相关技术与背景知识 在分布式环境下,每个节点是无法获知其他节点操作结果是成功还是失败的,所以 2PC协议在分布式环境下引入了一个协调者的角色,由协调者来统一管理事务涉及的所有节点的操作过程。2PC 协议中的两个阶段指的是准备阶段和执行阶段。在准备阶段时,协调者要给涉及事务的所有参与节点发送 Prepare 消息,每个参与者在接收到 Prepare 消息后,需要判断是否可以执行事务,如果不行(如权限验证失败)则要返回准备失败的消息,否则要写本地的 redo 和 undo 日志,但不做提交,并返回准备成功的消息,在协调者获得所有参与者的准备结果之后,会进入执行阶段,协调者只要收到一个参与者返回了准备失败的消息,就要在执行阶段向所有节点发送 rollback(回滚)消息,所有节点收到 rollback消息之后就执行本地的 undo 日志回滚之前的操作,而如果协调者收到了所有参与者返回的准备成功的消息,就在执行阶段向所有节点发送 commit(提交)消息,所有节点收到 commit 消息后就在本地正式提交事务。无论参与者最终执行的是回滚还是提交操作,都需要将操作执行的结果再返回给协调者。图 2-1 分别展示了最终执行了 rollback 和commit 操作的 2PC 协议中协调者与参与者的交互过程。

示意图,事务,点交,协调者


东南大学硕士学位论文 ,否则进入 Cancel 阶段,具体的 Confirm 和 Cancel 操作将节点只需要把要执行的操作和涉及的节点发送给协调者即可录并在随后调用相关节点相关业务功能的 Confirm 接口或 Canc协调者会选择重试,直到全部成功为止,也因此 Confirm 和 C等性。
【相似文献】

相关期刊论文 前10条

1 孙继华;张杰;;顾客参与影响新服务开发绩效的实证研究[J];中国商论;2017年29期

2 孙继华;张宁;杨俊玲;;顾客参与影响新服务开发绩效研究综述[J];北方经贸;2017年10期

3 辛春林;彭乔;苏颖;;新服务开发的过程、模型和影响因素——研究现状与研究视角探析[J];软科学;2013年09期

4 徐延庆;;新服务开发的发展趋势研究[J];当代经济管理;2010年06期

5 刘顺忠;荣丽敏;;知识密集型新服务开发活动的外部环境分析[J];东北师大学报(哲学社会科学版);2009年03期

6 杨雪;刘顺忠;银成钺;;新服务开发影响因素研究[J];科学学研究;2008年S2期

7 王赫;黎建强;;谈以顾客需求为导向的新服务开发[J];商业时代;2007年21期

8 徐海燕;李靖华;;知识转移、动态能力与新服务开发绩效的关系[J];科技管理研究;2014年09期

9 李海刚;孙臣臣;曲振斌;;顾客参与对新服务开发影响机制研究——基于组织学习的视角[J];工业工程与管理;2014年04期

10 银成钺;刘寅刚;;新服务开发中的营销—运营界面:研究综述与展望[J];东北师大学报(哲学社会科学版);2012年04期


相关博士学位论文 前7条

1 高丹丹;网络环境下企业新服务开发过程模式研究[D];华中科技大学;2012年

2 徐海燕;金融业前后台知识转移与新服务开发绩效的关系研究[D];浙江工商大学;2015年

3 黄永春;顾客参与新服务开发及其对绩效的影响:社会资本视角[D];南京大学;2010年

4 陈璟菁;顾客参与影响新服务开发绩效的机制研究:以组织学习为中介变量[D];南京理工大学;2013年

5 黄秋波;新服务开发前后台结构、知识转移与开发绩效研究[D];浙江工商大学;2015年

6 林德昌;基于资源网络理论的新服务开发研究[D];哈尔滨工业大学;2011年

7 赵小红;移动新服务概念开发的模型研究[D];东华大学;2011年


相关硕士学位论文 前10条

1 郭奕庭;基于Node.js与Etcd的轻量级微服务开发平台的设计与实现[D];东南大学;2018年

2 任呈祥;面向Mashup的服务开发环境分析与仿真实现[D];海南大学;2017年

3 荣丽敏;知识密集型新服务开发活动的外部环境分析[D];东北师范大学;2009年

4 王春;基于知识管理的新服务开发影响因素分析研究[D];重庆大学;2007年

5 宋波;顾客参与对新服务开发绩效的影响研究[D];杭州电子科技大学;2012年

6 郭强芝;基于网络组织的新服务开发激励策略研究[D];杭州电子科技大学;2012年

7 唐国珣;新服务开发的理论与应用研究[D];华中科技大学;2006年

8 邓文娟;组织学习对新服务开发绩效的影响机制研究[D];华中师范大学;2013年

9 张玉征;环境变动、顾客参与和新服务开发绩效的实证研究[D];兰州大学;2011年

10 庞学卿;组织文化、知识转移与新服务开发绩效[D];浙江工商大学;2011年



本文编号:2882260

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2882260.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户0b0bd***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com