基于.NET CORE微服务框架 -Api网关服务管理
1、前言
经过10多天的努力,surging 网关已经有了大致的雏形,后面还会持续更新完善,请大家持续关注研发的动态
最近也更新了surging新的版本
更新内容:
1. 扩展Zookeeper封装
2. 增加服务元数据
3. 增加API网关
开源地址:https://github.com/dotnetcore/surging
2.软件环境
IDE:Visual Studio 2017 15.3 Preview ,vscode
框架:.NET core 2.0
依赖程序:Zookeepe、Rabbitmq
vscode 技术支持:
周松柏(zsbfre)
3.Zookeeper 安装
ZooKeeper是分布式应用程序协调服务,是Google的Chubby开源实现,是hadoop的重要组件,CDH版本中更是使用它进行Namenode协调控制。而Surging 则基于Zookeeper 作为注册中心
安装&配置
在apache的官方网站提供了好多镜像下载地址,然后找到对应的版本,目前最新的是3.3.6
下载地址:
http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz
Windows下安装
把下载的zookeeper的文件解压到指定目录
D:\zookeeper>
修改conf下增加一个zoo.cfg
内容如下:
# The number of milliseconds of each tick 心跳间隔 毫秒每次
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting anacknowledgement
syncLimit=5
# the directory where the snapshot isstored. //镜像数据位置
dataDir=/tmp/zookeeper
# the port at which the clients willconnect 客户端连接的端口
clientPort=2181
进入到bin目录,并且启动zkServer.cmd,这个脚本中会启动一个Java进程
D:\zookeeper>cd bin
D:\zookeeper\bin>
D:\zookeeper\bin >zkServer.cmd
启动客户端运行查看一下
D:\zookeeper\bin>zkCli.cmd 127.0.0.1:2181
这个时候zookeeper已经安装成功了,
参考官方文档:
http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html
4.API 网关
surging 的api 网关分为数据监控‘、服务管理‘、数据安全、身份认证、流量控制、分流控制。此节将介绍下服务管理,其它功能将在下几篇文章介绍
服务管理
针对于服务我们需要管理以下操作
服务机器:针对于服务部署的机器,我们需要平台进行管理监控,如发生异常,则通过API网关进行告警
元数据:通过元数据我们可以查找到相关服务的注解,如名称、负责人、更新时间
关联消费:通过关联消费可以做到有哪些消费客户端进行调用消费
以上操作,可以有效管理部署在各台机器上的服务,减少了人力成本的维护。
以下通过示例来介绍如何使用
在业务接口方法上添加如下特性
[Service(Date = "2017-8-11", Director = "fanly", Name = "获取用户")]
属性列表
参数
|
作用
|
---|---|
Name |
方法名称 |
Date |
更新日期 |
Director |
负责人 |
基于zookeeper配置
.UseZooKeeperRouteManager(new ConfigInfo("127.0.0.1:2181"))
针对于代码已经完成, api 网关可以输入http://localhost:729/进行访问,然后你会看到下面的界面
6、总结
API网关有了大致的雏形,下面会持续完善Api网关,并且会重构Zookeeper 节点管理和增加文件配置来代替代码。如感兴趣请多关注或者加入QQ群:615562965
基于.NET CORE微服务框架 -Api网关服务管理的更多相关文章
- .net core Ocelot Consul 实现API网关 服务注册 服务发现 负载均衡
大神张善友 分享过一篇 <.NET Core 在腾讯财付通的企业级应用开发实践>里面就是用.net core 和 Ocelot搭建的可扩展的高性能Api网关. Ocelot(http:// ...
- 基于.NET CORE微服务框架 -谈谈surging API网关
1.前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中剥析下surging的Api 网关 开源地址:https://git ...
- .NET Core微服务之基于Steeltoe集成Zuul实现统一API网关
Tip: 此篇已加入.NET Core微服务基础系列文章索引,本篇接上一篇<基于Steeltoe使用Eureka实现服务注册与发现>,所演示的示例也是基于上一篇的基础上而扩展的. => ...
- 基于.NET CORE微服务框架 -surging的介绍和简单示例 (开源)
一.前言 至今为止编程开发已经11个年头,从 VB6.0,ASP时代到ASP.NET再到MVC, 从中见证了.NET技术发展,从无畏无知的懵懂少年,到现在的中年大叔,从中的酸甜苦辣也只有本人自知.随着 ...
- .net core 微服务之Api网关(Api Gateway)
原文:.net core 微服务之Api网关(Api Gateway) 微服务网关目录 1. 微服务引子 2.使用Nginx作为api网关 3.自创api网关(重复轮子) 3.1.构建初始化 3.2. ...
- Net分布式系统之六:微服务之API网关
本人建立了个人技术.工作经验的分享微信号,计划后续公众号同步更新分享,比在此更多具体.欢迎有兴趣的同学一起加入相互学习.基于上篇微服务架构分享,今天分享其中一个重要的基础组件“API网关”. 一.引言 ...
- 微服务·API网关
阅文时长 | 3.52分钟 字数统计 | 1232字符 主要内容 | 1.什么是API网关 2.微服务中的API网关 3.几种部署策略 『微服务·API网关』 编写人 | SCscHero 编写时间 ...
- SOA与ESB,微服务与API网关
SOA与ESB,微服务与API网关 SOA: ESB: 微服务: API网关: 参考资料: 1.漫画微服务,http://www.sohu.com/a/221400925_100039689 2.SO ...
- 一站式入口服务|爱奇艺微服务平台 API 网关实战 原创 弹性计算团队 爱奇艺技术产品团队
一站式入口服务|爱奇艺微服务平台 API 网关实战 原创 弹性计算团队 爱奇艺技术产品团队
随机推荐
- IOS 关于property的详细解法
1.格式 @property (参数1,参数2,...) 类型 名字; eg: @property(nonatomic,retain) UIWindow *window; 其中参数主要分为三类: • ...
- if和for的应用
语句 顺序 结束加分号 分支 让程序根据条件不同执行不同的代码 if语句 if(条件){代码} if(条件){代码}else{代码} else if(条件){代码} if嵌套 switch...cas ...
- FFT/NTT 多项式学习笔记
FFT(快速傅立叶变换)和NTT(快速数论变换)看上去很高端,真正搞懂了就很simple了辣. 首先给出多项式的一些定义(初中数学内容): 形如Σaixi的式子就是多项式! 多项式中每个单项式叫做多项 ...
- tkinter模块常用参数(python3)
1.使用tkinter.Tk() 生成主窗口(root=tkinter.Tk()):root.title('标题名') 修改框体的名字,也可在创建时使用className参数来命名:root.r ...
- 同网段电脑互ping
两台同网段的主机(host)之间的网络通信是不经过网关的. 今天试了一下,用一根网线连接两台电脑,然后 在一台电脑上设置: ip地址:192.168.0.1 子网掩码:255.255.255.0 在另 ...
- VMvare虚拟机的安装及新建虚拟机.
一.VMvare虚拟机的安装 1.首先双击--你下载的安装包,这里我分享百度云盘,供大家下载:http://pan.baidu.com/s/1jImQSZG 2.VMware Workstation ...
- Python的元类
1.用元类验证子类 每当我们定义新类的时候,元类就会运行雅正代码,以确保这个新类符合规定的规范. Python系统把子类的class语句处理完毕,就会调用元类的 __new__ 方法.元类可以通过 _ ...
- PHP发送E-mail---新手教程
首先下载PHPmailer拓展包,其实就是别人封装好的类库,下载链接:http://pan.baidu.com/s/1slbhGo1 首先去163注册个账号,然后登陆进去,点击设置下面的 POP3/S ...
- 使用C#创建Windows服务
本文属于原创,转载请注明出处,谢谢! 一.开发环境 操作系统:Windows 10 X64 开发环境:VS2015 编程语言:C# .NET版本:.NET Framework 4.0 目标平台:X86 ...
- Python爬虫从入门到放弃(十四)之 Scrapy框架中选择器的用法
Scrapy提取数据有自己的一套机制,被称作选择器(selectors),通过特定的Xpath或者CSS表达式来选择HTML文件的某个部分Xpath是专门在XML文件中选择节点的语言,也可以用在HTM ...