游戏技术文章

Ant.SOA微服务框架开源

时间:2017-3-30 9:29:58  作者:棋牌资源网  来源:棋牌资源网  查看:7915  评论:0
内容摘要:开源地址:https://github.com/yuzd/AntServiceStack 框架特色0.Service Management(服务治理)1.CodeGen Contract First(契约先行)2.consul服务发现3.P...
开源地址:https://github.com/yuzd/AntServiceStack
 
框架特色
0.Service Management(服务治理)
1.CodeGen Contract First(契约先行)
2.consul服务发现
3.Plugin 可插拔
4.同时支持XML, JSON, Proto-buf(binary)等序列化格式同时支持Restful和RPC调用方式
5.统一的错误处理模型(Unified Error Handling Model)
6.统一的请求验证模型(Unified Request Validation Model)
7.熔断功能
8.支持Aajx, JSONP等Web 2.0调用方式
部署consul
consul.exe agent -dev -advertise=192.168.1.2 -client 192.168.1.2
Ant.SOA微服务框架开源
打开consul ui(http://192.168.1.2:8500/ui)确保访问没有问题
Ant.SOA微服务框架开源
 
部署服务治理
1.系统的DB
(sql文件在AntServiceStack.Manager\Config\antsoa_20170328.sql)
有2张表 结构如下
Ant.SOA微服务框架开源

 

services 服务表
Ant.SOA微服务框架开源

 

nodes 服务节点表
 Ant.SOA微服务框架开源

 

创建好db后
 
2.配置环境
Ant.SOA微服务框架开源
配置1步骤中部署的db
Ant.SOA微服务框架开源

 

配置之前部署的consul地址
Ant.SOA微服务框架开源
 
打开服务治理系统
Ant.SOA微服务框架开源

 

 
如何使用?
1.创建一个服务
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
2.创建一个web服务[TestHelloWorld]
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
新建一个 global.asax
Ant.SOA微服务框架开源

 

 
添加soa 框架的引用
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
我们开始写契约(建议新建一个Contract的文件夹)
Ant.SOA微服务框架开源
 
然后编辑 刚才添加的 HelloWorld.xsd文件将common的引用进来
Ant.SOA微服务框架开源
下面我们开始写接口的契约
首先得安装codegen
Ant.SOA微服务框架开源
 
搜索 Ant.SOA.CodeGen 安装 [注意目前暂时只支持vs2015 vs2013如果有需要可以修改一下配置重新做一个vsix安装包即可]
Ant.SOA微服务框架开源
 
假设我们想要下面的接口
接口名称为SayHello
Request类型为Enum字段 0 代表中文 1代表日文
Response类型有一个字段(string)
为了配合codegen使用 有一些约定
1.Request的类型得已Request结尾
2.Response的类型得已Response结尾,必须带上公共的返回字段(因为框架有统一的错误处理模型(Unified Error Handling Model))
 
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
使用CodeGen 将xsd转成 wsdl文件
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
第一次使用需要从服务治理中心同步一下
填写服务治理中心的访问地址 + Service/GetAllRemoteServices
例如我的服务治理中心的地址为
Ant.SOA微服务框架开源
点击同步后
Ant.SOA微服务框架开源
下一步
Ant.SOA微服务框架开源
下一步
Ant.SOA微服务框架开源
然后一直点击下一步直至结束
Ant.SOA微服务框架开源
 
然后根据wsdl 生成代码
Ant.SOA微服务框架开源
先生成server端
Ant.SOA微服务框架开源
 
生成Client
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
ITestHelloWorldService.cs 有一个接口 我们要实现下这个服务
Ant.SOA微服务框架开源
创建一个SoaController.cs 继承 ITestHelloWorld
并实现下功能
Ant.SOA微服务框架开源
 
然后新建一个ServerHost.cs 继承 AppHostBase
配置服务发现
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
注意 web.config文件里面要配置consul的地址 和 框架指定的 httphandle
如下:
Ant.SOA微服务框架开源
F5启动
就会去consul注册服务
 
Ant.SOA微服务框架开源
我们刷新服务治理中心的 【服务发现】
 
Ant.SOA微服务框架开源
已经成功注册服务
框架已经继承了swagger-ui
可以很方便的对接口进行测试
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
到此为止 我们用Ant.soa做的服务已经发布上线了
如果你部署到多太机器 也是都可以成功上线的。
 
下面在介绍下如何把服务给到别人去使用
之前我们有介绍用codegen生成client端的cs文件
这个就是给到别人使用的契约 一般我们都是给dll文件对吧
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
生成好dll
Ant.SOA微服务框架开源
下面我来搞一个console程序来测试这个client dll 来调用 刚才的服务
Ant.SOA微服务框架开源
app要记得配置soa的服务中心的地址 加上 固定后缀为/antsoa
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
Ant.SOA微服务框架开源
 
demo下载地址
 
Ant.SOA微服务框架开源
标签:Ant.SOA微服务框架开源 

欢迎加入VIP,【VIP售价:只要288元永久VIP会员】畅享商业棋牌游戏程序下载,点击开通!

下载说明


☉本站所有源码和资源均由站长亲自测试-绝对保证都可以架设,运营!
☉如源码和资源有损坏或所有链接均不能下载,请告知管理员,

☉本站软件和源码大部分为站长独资,资源购买和收集,放心下载!

☉唯一站长QQ:1004003180  [人格担保-本站注重诚信!]

☉购买建议E-mail:1004003180@qq.com   源码收购 E-mail:1004003180@qq.com    

☉本站文件解压密码  【文章内都自带解压密码,每个密码不同!】


本站提供的所有源码,均来源站长提供,仅学习交流 浙ICP备09009969号

由此产生不良后果和法律责任与本站无关,如果侵犯了您的版权,请来信告知 1004003180@qq.com 将及时更正和删除! 

Copyright © 2008-2024 棋牌资源网,你身边的棋牌资源下载站    All Rights Reserved