viper开源跨平台微服务引擎的最佳实践
Viper简介
Viper是一个基于Anno微服务引擎开发的Dashboard项目、示例项目。Anno底层通讯采用grpc、thrift。自带服务发现、调用链追踪、Cron调度、限流、事件总线等等
Anno是什么?是一个分布式开发框架,专注于服务治理、监控、链路追踪。RPC可选用高性能跨语言的Thrift(推荐)、Grpc。同时支持。netcore、。netframework、java。Anno主要功能
服务注册中心、服务发现、健康检查、负载均衡、限流、失败重试、链路追踪、资源监控等功能。
Viper运行图
Anno架构图快速部署
下载
使用git下载或者直接下载zip包解压。gitclonehttps:github。comduyanmingViper。git
用vs2022打开项目
编译部署
初始化数据库(MySql)
运行数据库创建脚本或手动创建数据库viper,然后执行以下操作初始化数据库:
执行sql文件初始化数据库:Viperdatabaseviper2021061701。sql
修改viperService数据库连接字符串:ViperViperServicebinDebuget5Anno。config!数据库连接字符串!appSettings
运行
第一步:启动注册中心
编译项目ViperCenter,打开编译后的程序,执行ViperCenter。exe或执行dotnetViperCenter。dll命令即可启动注册中心。初始化默认端口为:7010,可在ViperCenter下找到Anno。config文件,修改启动端口号。lt;?xmlversion1。0encodingutf8?configurationPort7010PortTimeOut120000TimeOutServersServersappSettingsconfiguration
看到下图说明运行成功。
注册中心
第二步:启动ViperService
编译ViperService项目,进入程序,执行ViperService。exe或dotnetViperService。dll命令即可启动服务。
ViperServiceAnno。configlt;?xmlversion1。0encodingutf8?configuration!0,0第一位是工作站,第二位数据中心(所有的AnnoService的两位数不能重复例如不能存在【1,2】【1,2】)可以存在【1,2】【2,1】IdWorker0,0IdWorker!App名称ViperService01AppName!监听端口Port7011Port!权重Weight1Weight!功能非Anno。Plugs加入方式FuncNameFuncName!忽略的功能Trace,LogicIgnoreFuncNameIgnoreFuncName!超时时间毫秒TimeOut20000TimeOut!注册到的目标TsIp127。0。0。1Port7010IocDll!IOC仓储!Anno。RepositoryAssembly!领域!Anno。DomainAssembly!查询服务!Anno。QueryServicesAssembly!事件Handler!Anno。Command。HandlerAssemblyIocDll!数据库连接字符串Mysql!redisConnRedis连接字符串127。0。0。1:6379,abortConnectfalse,allowAdmintrue,keepAlive180redisPrefixKey前缀Anno:redisExpiryDateKey有效期单位(分钟)20redisSwitch是否开启数据库false不开启falseappSettingsconfiguration
一般情况只需要修改以下部分即可!注册到的目标TsIp127。0。0。1Port7010!数据库连接字符串Mysql
ViperService可以和ViperCenter不在同一台电脑,也可以运行多个server也可以负载均衡,高级用法随后介绍。
看到下图说明ViperService成功运行并且已经注册到注册中心(ViperCenter)运行成功
ViperService
启动Viper。GetWay
运行成功后打开网页:http:localhost:5000,输入账户密码登录。账号:anno密码:123456
第三步:调用链追踪
ViperViperappsettings。json{Target:{AppName:ApiGateway,IpAddress:127。0。0。1,Port:7010,TraceOnOff:true},Limit:{Enable:true,TagLimits:〔{channel:,router:,timeSpan:1,rps:100,limitSize:100}〕,DefaultIpLimit:{timeSpan:1,rps:200,limitSize:200},IpLimits:〔{ipMatch:0。0。0。1,timeSpan:1,rps:100,limitSize:100},{ipMatch:192。168。0。10192。168。10。20,timeSpan:1,rps:100,limitSize:100}〕,White:〔0。0。0。1,192。168。1。2,192。168。2。18〕,Black:〔0。0。0。2,192。168。3。18〕}}
Viper基本配置和功能完成,后续继续介绍高级功能及使用。
开源协议:暂未找到
折叠旗舰独领一面HUAWEIMateXs2高端品鉴沙龙6月10日,折叠旗舰独领一面HUAWEIMateXs2高端品鉴沙龙在沈阳万象城会员中心隆重举办,结合HUAWEIMateXs2旗舰新品上市,诚邀社会各界精英、企业家等高端会员相……
2016年高考零分作文还学生一片蓝天零分作文总是造人离弃,但他们只是有不同的想法而已,小编整理了还学生一片蓝天作文,欢迎阅读。还学生一片蓝天虽然你看到我的卷子的时候可能是下午,但是我真的是在上午给您写……
A股超过4000只股票下跌调整会不会升级?边风炜6月要减持一6月9日,沪指早盘震荡下探,午后一度跌超1;深成指、创业板指大幅下挫,深成指跌近2,创业板指大跌近3,险守2500点;科创50指数亦跌近3;两市成交额略有萎缩,截至收盘,沪指跌……
警察荣誉一物降一物,能解决夏母的人,从始至终都在电视剧《警察荣誉》是一部以基层派出所为背景的现实题材作品,由导演丁黑担任总导演,张若昀和白鹿领衔主演,还有王景春、宁理、徐开聘、赵阳、王同辉、李诚儒等实力演员,在剧中饰演重要角……
AMDZen5架构官宣2024年发布,4nm3nm节点工艺IT之家6月10日消息,在今日的AMD金融分析师日上,AMD确认了其未来几年的CPU架构计划,确认将在2024年前推出Zen4和Zen5架构。新的CPU架构还将配备VCache……
唱歌很搞笑的潘建豪潘建豪比我矮一点,体型不胖也不瘦,打扮得还行。他可爱唱歌了。有一次班会,老师说想要给大家唱唱歌的举手,只有我、潘建豪、厉俊豪三个不怕羞的男生举手了。老师让潘建豪第一个唱,……
任正非的咖啡哲学作者周超臣头图视觉中国日前,有媒体报道称,华为提交了一个名为一杯咖啡吸收宇宙能量的商标申请,目前处于审核状态,该申请提交于5月18日。随即有媒体扒出几年前任正……
我爱运动优秀作文我个头不高,而且看上去还弱不禁风。初次见面人家都以为我是一个文静内向的小男孩。可相处下来,我好动的性格就逐渐暴露出来。别看我廋,可我的。运动细胞不错。跑步,打羽毛球,打篮球都是……
广东4队中超最新排名,东道主可圈可点,两队跌落神坛,深足强势中超联赛踢完了前两轮的全部18场比赛,从比赛的结果和积分榜的形势来看,肯定是有人欢喜有人愁。作为上赛季中超联赛的最终冠军亚军季军球队来说,六场比赛仅仅获得了一胜五负,甚至两支球……
竞选经费六年级作文600字开学了,林利升上了六年级。开学的第一天,老师就在班上宣布了:这个学期的第一节班会课,我们要竞选班干部,请同学们要做好准备!林利听了,想:我要当班干部,就当班长,过把瘾,可……
4强全部出炉!国羽占三席,陈雨菲迎战最强队友,国羽小将21逆6月10日,印尼大师赛继续进行,女单赛场迎来焦点大战,陈雨菲完成20的横扫,面对布桑南,轻松直落两局,分别以2111、2115的比分完成横扫。另外,何冰娇整体也没有遇到太大考验……
胜利油田首批新能源运输车投入使用大众报业大众日报客户端2022061011:31:275月14日,中国石化胜利油田运输分公司顺利完成注气技术服务中心W2365X69井的锅炉LNG(液化天然气)燃料补给任……