正在进行安全检测...

发布时间:2024-01-10 01:45:37   来源:文档文库   
字号:
/nc/i/sfr/aMpp/Zcaf/or?•行业应用SpringCloud服务调用的设计与应用1#’2(1.武汉邮电科学研究院,湖北武汉430074;2.武汉大学信息管理学院,湖北武汉430074务架构度更小式架构,解决问题远程。此框架设计基于SpringCloud框架,RibbonHystrix务注Eureka多个GZIP
最后个企识管理务系统完成对该框架系统能测试,系统为远程提升系统处理能及系统模块解耦,为实提供关键词:务;SpringClod*识管理系统中图分类号:TP311.5文献标识码A
D0I10.19358/j.issn.
2096-5133.2019.02.022完善解决方引用格式:郭致远,魏银珍.基于SpringClod服务调用的设计与应用[J].信息技术与网络安全,2019,38(2:87-91.DesignandapplicationofSpringCloudbasedserviceinvocationGuoZhiyuan1,WeiYinzhen12(1.WuhanResearchInstitiuteofPostsandTelecommunications,Wuhan430074,China2.SchoolofInformationManagement,WuhanUniversityWuhan430074,ChinaAbstract:Asadistributedarchitecturewithsmallergranularity,theprimaryproblemofmicroservicearchitectureishowtorealizeremoteinvo­cationbetweenapplications.ThisserviceinvocationframeworkisdesignedbasedontheSpringCloudframework.Iintegratesandencapsulatesload-balancingRibbonfault-tolerantprotectionHystrix,servicepresstherequestand
response.Throughthe
registration
and
discoveryEurekaand
systemfunctionand
performance
otlier
componetest,theoriginallocalcallis
trathesystemservices,whichgreatlyimprovestheprocessingcapacityofthesystemandthedecouplingofthesystemmodules,andprovidesaper­fectsoliutionfortherealizationofsimpleefficientserviceinvocation.KeywordsmicroserviceserviceinvocationSpringCloud;knowledgemanagement
system引言日益频繁的
已经难以[1]的J
于是分布MVC[5&注解,使Feign的使用更加方便。1RPC架构RPC1.1RPC框架原理RPC1RPC框架的(1
提供方需要以(2JavaJDK动态代理将本地调用封装为远程调用。(3TP
只要能实现进程间通信即可。调用方提供调传输和序列化的实现细节来简化远程服务过程调用。为开发者提供了一种新思路。微[2]作为一种颗粒
种规则划分为
能单一的
采用这些的首要基于

信协议通[3]。微CallRPC[4]。RPC主要有HTTP协议的应用RemoteProcessHTTPTCP。后
广。本
SpringCloudFeignNetflix组件开是一款声明式HTTP:
SpringSpringCloudFeign
Spring。服。无201938287
ndustna/Appcaton定制的开源也许是更好的2相关理论Feign基于NetflixFeign整合了SpringCloudRibbonSpringCloudHystrix,除了提供这两者的强大
功能Web
方式%6]实际的开发过程中存在一个接
一些1RPC框架原理图Feign对于
由于FeignRibbonEurekaFeign(4
同时
$都有可以实现以下多种功能[7]$(1:Controller配合Mapn[8&私有仓库实现接在代码构建期实现口绑定从而减少客户端接口绑定*异常处1.2RPC框架RPC
(2FeignSpringCloudRib-
bo因此可以通的负载Ribbon
来实现(1ApacheThriftApacheThrift是由Facebook
其特点80N
的开发HTTP/1具有提供头部移动设备上有更出色(3Feign使得用时如果可以重Feign集群有重要Hystrix工具提供Feign(2gRPCGogleHTTP/2协议开发的
能的开源框架的表现
有方法进
(4FeignSpring
Cloud到保护的目@FeignClient-
(3Hessian其是由CauchoTechnology开发的一-
RPC

备简支持((SpringCloudHystrix
供的一种可以通fallback属性提供一种简单的缩从1.3Feign具备的优势RPCSpringClodFeign


(6SpringCludHTTP协议
TCP为了改进
FeignGZIP
(1FeignSpringCloud的模块可以使用更好地实FeignRibbonEureka

HTTPSpringMVC注解
SpringFeign使Feign
3
服务调用定制化实现[9]中Feign的功Feign进行定制
2外部调用需要经过网关的验证内部调用则根据路由发以及服务调用模块在微服(2
SpringSpringCloudFeign的加FeignSpringMVCSpring开发者是更好的(3
声明
更简洁明了FeignHTTP协议可读性的方式实的调用调用框架RESTful从而以使Feign作为远程882019382
/ndustriaAppcaton使SpringCloudLibbon时的配置方式是一样的,<client>.ribbon,key_value<client>Feign@FeignCli-ent
定的

集群%12]的SpringCloud

Feign默认实现了请求的重试机制,Max-AutoLetriesNextServer。需要注
2
微服务总体架构图LibbonHystrix所以HystrixLibbon以保证重试机制存在的意义。3.3Hystrix配置Libbon要需要Hystrix。和LibbonHystrixhystrix.command,default.<operation>FeignHystrix的支持是否开启,feign,hystrix.ena­bledtrue否则表示禁用Hystrix如果
只需要Hystrix可以使用@Scope('prototype@Feign-Clientconfiguration数引入该配置类。

Hystrix米用hystrix.command.<command-gey<commandKey>:首先属性
Hystrix逻辑为SpringCloudFeign中提供了一种简单的方式来实现@FeignClientfallback35其他配置SpringCloudFeignGZIP以减少通信过程中的性能损耗%13]。详$feign,compression,request,enabled_truefeign,compression,response,enabled_true如指定压缩数
4
缩的限等Feign在知识管理系统中的应用SpringCloudFeign
文在一
业级的知
SpringCloudFeign。该

负载均衡寻址、ZIP。具体实现细3.1整合FeignSPringB=t%
Consumer,然pom.xml如下spring-cloud-starter-eurekaspring-cloud-starter-feign引入的核心依赖的作用如下$(1spring-cloud-starter-eureka$包含(2spring-cloud-starter-feign$基于HTTPLPC提供与熔断保LibbonHystrix提供负载提供注册与发现EurekaJava%11]实Java编写的分@EnableFeignCli-entsSpringCloudFeign在对应的接口上添加CFeignClient绑定对应的提供服务
SpringMVC
的注
定该服LEST@Autowiredapplication.propertiesFeign只需要定以声明式的35Ribbon配置的服需要
。可SpringCloudLibbo来实直接Libbo

。全使rib­
bon.<key>_<value>Libbon的各项参数。
。在使SpringCloudFeign
的方式201938289
ndustna/AppcatonFeign提供微是实现整个微提高传输3EurekaJH1UMySQL交流模块和基础服务模块%15]。在这些
定该知
的功能以及作为统的整体
用者提供者

统总体J以及通过数据压缩。知用户的
中还加入员的一。通从而决公司内部知识的安全性。另




系列操作需要f_mxsAPI]I_____
1^_T1__JenkinsDocker3知识库系统架构图Redis否则请求被驳回。源共享件形要用于公司员工上传下后呈
传或下载。为便


4.1声明式服务调用Feign的跨进程调用了Feign是基于应用
HTTP
分%16],论坛部分主要提供员工交流功能,员工在此处发贴吧部分是给员工提
其他用到给予。通公司的知便(1eureka-client以及对应接
口名getName基础。此负责为系
@FeignClient!eureka-client
统提供工作流服务、报表输。工作publicinterfacegetClient|报表用于统计结果的收集与@GetMapping!/getName信邮件用于系统通知或安全验证Stringconsumer(;最后所有的API网关按照内部和外
5则对接口进行统一然后提供(2eureka-clientdc@GetMapping!/getNamepublicStringgetName!throwsException
|示业务的部分代码5结束语先介绍了RPC其次定本//业务细节5FeignEurekaRibbon组件的整合以及对SpringMVC使Feign绑定对应服便45服务边界划分如何确定微4以及划分一直是构建微服务分将系
员工系统的重要环节[14]。在通过业RPC框架以及其实现难易程度最实现一种声明SpringClud可以完调用企业级实现了Feign
提供调用的基本达到了
和后期可了系统的开发SpringCloudFeignHTTP协议实现902019382
IndustrialApplicationRESTful风格的虽然保证了其简洁明RPC

或者
可以(245-4538.[10]WALLSC.SpringBoot实战[M].丁雪丰,译.北京:人民邮电出版社,2016.[11]ECKELB.Java编程思想(4)[M].陈吴鹏,译.北机械工业出版社,2007.[12]陈康贤.大型分布式网站架构设计与实现[M].北京:电子工业出版社,2014.[13]周立.SpringCloudDocker2
版)[M].北京:电子工业出版社,2018.[14]EVANSE.领域驱动设计[M].赵俐,盛海艳,刘霞,译.北人民邮电出版社,2016.[15]高云峰.对JavBBS论坛系统的设计与实现分析[J].电子技术与软件工程,2018(4:202.[16]李志义,黄成业.网上论坛的一种设计与实现[J].现代图书情报技术,2004(1:88-90.(收稿日期$2018-12-25性能与可读性的通信协议。参考文献[1]李林锋.分布式服务架构原理与实践[M].北京:电子工业出版社,2016.[2]LEWISJFLOWERM.Microservices[EB/0L].(2014-03­25.https://martinfowler.com/articles/microservices.html.[3]翟永超.SpringCloud微服务实战[M].北京:电子工业出版2017.[4]杨超.基于分布式服务框架Dubbo的集群式服务器的研究与实现[D].北京:北京邮电大学,2017.[5]张宇,王映辉,张翔南.基于SpringMVC框架设计与实现[J].计算机工程,2010,36(4:59-62.[6]马雄.基于微服务架构的系统设计与开发[D].南京:南京邮电大学,2016.[7]幕.[M].北
2015.[8]许晓斌.Maven实战[M].北京:机械工业出版社,2016.[9]张豫北,王群芳.浅论企业的知识管理[J].科学时代,2009作者简介:郭致远(1993-通信作者,硕士研究生,主要研究方向:互联网技术。E-mail:842169896@qq.ccm魏银珍(1976-女,博士,高级工程师,主要研究方向:数据。201938291

本文来源:https://www.2haoxitong.net/k/doc/f7158f9ef505cc1755270722192e453611665b74.html

《正在进行安全检测....doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式