微服务的地理信息服务架构设计与实现Design and implementation of geographic information service architecture based on microservice
刘晓丽,孙伟,李成名
摘要(Abstract):
针对现有地理信息系统的服务架构在开发和服务初期易于部署和应用扩展,但随着服务量的逐渐扩展,后续开发难度加大、维护成本提高、响应效率降低、功能扩展困难的问题。该文采用微服务理念,设计实现一种基于微服务的地理信息服务架构设计与实现,采用轻量级的API Gateway,实现服务接口设计和负载均衡算法。实验结果表明,基于微服务架构对系统进行重构后,系统的服务性能没有损耗,且负载均衡后可成比例提高系统性能。
关键词(KeyWords): API Gateway;微服务;地理信息系统;架构
基金项目(Foundation): 国家自然科学基金面上项目(41871375);; 中国测绘科学研究院基本科研业务费项目(AR1909)
作者(Author): 刘晓丽,孙伟,李成名
DOI: 10.16251/j.cnki.1009-2307.2019.06.046
参考文献(References):
- [1]托马斯·埃尔.SOA架构:服务和微服务分析及设计[M].李东,李多,译.北京:机械工业出版社,2017.(THOMAS ERL.Service-oriented architecture:analysis and design for services and microservices[M].LIDong,LI Duo,translate.Beijing:China Machine Press,2017.)
- [2]赵计刚.Java微服务实战[M].北京:电子工业出版社,2017.(ZHAO Jigang.Java microservices practice[M].Beijing:Publishing House of Electronics Industry,2017.
- [3]刘罡.基于微服务架构的汽车经销商管理系统[J].计算机应用,2018,38(S2):243-249.(LIU Gang.Dealer management system based on micro service architecture[J].Journal of Computer Applications,2018,38(S2):243-249.)
- [4]LEWIS J,FOWLER M.Microservices,a definition of this new architectural term[EB/OL].[2019-02-28]https:∥martinfowler.com/articles/microservices.html.
- [5]RICHARDSON C.BLOG[EB/OL].[2019-02-28].https:∥www.nginx.com/people/chris-Richar dson/.
- [6]辛园园,钮俊,谢志军,等.微服务体系结构实现框架综述[J].计算机工程与应用,2018,54(19):10-17.(XINYuanyuan NIU Jun,XIE Zhijun,et al.Survey of implementation framework for microservices architecture[J].Computer Engineering and Applications,2018,54(19):10-17.)
- [7]龙新征,彭一明,李若淼.基于微服务框架的信息服务平台[J].东南大学学报(自然科学版),2017,47(S1):48-52.(LONG Xinzheng,PENG Yiming,LI Ruomiao.Information service platform based on microservice framework[J].Journal of Southeast University(Natural Science Edition),2017,47(S1):48-52.)
- [8]欧阳荣彬,王倩宜,龙新征.基于微服务的数据服务框架设计[J].华中科技大学学报(自然科学版),2016,44(S1):126-130.(OUYANG Rongbin,WANG Qianyi,LONG Xinzheng.A data service framework based on microservices[J].Journal of Huazhong University of Science and Technology(Natural Science Edition),2016,44(S1):126-130.)
- [9]方意,朱永强,宫学庆.微服务架构下的分布式事务处理[J].计算机应用与软件,2019,36(1):152-158.(FANG Yi,ZHU Yongqiang,GONG Xueqing.Distributed transaction processing under microservice architecture[J].Computer Applications and Software,2019,36(1):152-158.)
- [10]徐晓耘,左松林,倪妍妍.基于微服务架构的电力营销信息系统研究[J].信息技术,2019(2):160-166.(XUXiaoyun,ZUO Songlin,NI Yanyan.Design and research of integrated power marketing information system based on micro-application and micro-service architecture[J].Information Technology,2019(2):160-166.)
- [11]侯一鸣,徐泉,李亚杰,等.基于物联网和工业云的选矿设备状态监控系统[J].计算机集成制造系统,2017,23(9):1972-1982.(HOU Yiming,XU Quan,LI Yajie,et al.Monitoring system for mineral processing equipment based on IOT and industrial cloud computing[J].Computer Integrated Manufacturing Systems,2017,23(9):1972-1982.)
- [12]SAM Newman.微服务设计[M].崔力强,张骏,译.北京:人民邮电出版社,2016.(SAm NEWMAN.Building microservices[M].CUI Liqiang,ZHANG Jun,Translate.Beijing:Post&Telecom Press,2016.)
- [13]Apache Software Foundation.Apache thrift v0.12.0[EB/OL].[2018-02-28].http:∥thrift.apache.org/.
- [14]ISO.ISO/IEC 19464:2014Information technology-advanced message queuing protocol(AMQP)v1.0specification[EB/OL].[2019-02-28].https:∥www.iso.org/standard/64955.html.
- [15]IETF.The WebSocket protocol RFC 6455[EB/OL].(2015-10-14)[2019-02-28].https:∥datatracker.ietf.org/doc/rfc6455/.