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网关服务管理的更多相关文章

  1. .net core Ocelot Consul 实现API网关 服务注册 服务发现 负载均衡

    大神张善友 分享过一篇 <.NET Core 在腾讯财付通的企业级应用开发实践>里面就是用.net core 和 Ocelot搭建的可扩展的高性能Api网关. Ocelot(http:// ...

  2. 基于.NET CORE微服务框架 -谈谈surging API网关

    1.前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中剥析下surging的Api 网关 开源地址:https://git ...

  3. .NET Core微服务之基于Steeltoe集成Zuul实现统一API网关

    Tip: 此篇已加入.NET Core微服务基础系列文章索引,本篇接上一篇<基于Steeltoe使用Eureka实现服务注册与发现>,所演示的示例也是基于上一篇的基础上而扩展的. => ...

  4. 基于.NET CORE微服务框架 -surging的介绍和简单示例 (开源)

    一.前言 至今为止编程开发已经11个年头,从 VB6.0,ASP时代到ASP.NET再到MVC, 从中见证了.NET技术发展,从无畏无知的懵懂少年,到现在的中年大叔,从中的酸甜苦辣也只有本人自知.随着 ...

  5. .net core 微服务之Api网关(Api Gateway)

    原文:.net core 微服务之Api网关(Api Gateway) 微服务网关目录 1. 微服务引子 2.使用Nginx作为api网关 3.自创api网关(重复轮子) 3.1.构建初始化 3.2. ...

  6. Net分布式系统之六:微服务之API网关

    本人建立了个人技术.工作经验的分享微信号,计划后续公众号同步更新分享,比在此更多具体.欢迎有兴趣的同学一起加入相互学习.基于上篇微服务架构分享,今天分享其中一个重要的基础组件“API网关”. 一.引言 ...

  7. 微服务&#183;API网关

    阅文时长 | 3.52分钟 字数统计 | 1232字符 主要内容 | 1.什么是API网关 2.微服务中的API网关 3.几种部署策略 『微服务·API网关』 编写人 | SCscHero 编写时间 ...

  8. SOA与ESB,微服务与API网关

    SOA与ESB,微服务与API网关 SOA: ESB: 微服务: API网关: 参考资料: 1.漫画微服务,http://www.sohu.com/a/221400925_100039689 2.SO ...

  9. 一站式入口服务|爱奇艺微服务平台 API 网关实战 原创 弹性计算团队 爱奇艺技术产品团队

    一站式入口服务|爱奇艺微服务平台 API 网关实战 原创 弹性计算团队 爱奇艺技术产品团队

随机推荐

  1. textarea禁止拖拽

    <textarea style="resize:none;" ></textarea>'

  2. 新浪云计算SAE部署代码过程

    第一步:创建本地工作目录: 创建一个新文件夹,可以使用应用名为文件夹名,比如命名为test 第二步:从SAE的SVN仓库检出(checkout)一个应用的全部版本代码,右键–>点击“SVN Ch ...

  3. winform控件闪烁问题终极办法

    protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle ...

  4. html的基本标记符号

    文本标记:<h1><h2><h3><h4><h5><h6>: 段落标记:<p>: 空格:&nbsp: 换行: ...

  5. Java - 在WebService中使用Client调用三方的RestAPI

    背景 近期,由于项目的要求需要在自己的webservice中调用远程的WebAPI(Restful format).自己的webservice程序是用Java编码写的,所以需要在其中实现一个Clien ...

  6. Java自学手记——servlet3.0新特性

    servlet3.0出来已经很久了,但市场上尚未普遍应用,servlet3.0有三个比较重要的新特性:使用注解来代替配置文件,异步处理以及上传组件支持. 支持servlet3.0的要求:MyEclip ...

  7. DELPHI XE5安装

    1.安装XE5 2. HNFJ-DPADCW-BDWCFU-FPNN QDF4-CTSDHV-RDFCFE-FEAN HNFK-BCN8NN-78N53D-H4RS 破解补丁使用方法: (1).复制压 ...

  8. hdu 2612 多终点BFS

    Find a way Problem Description Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at ...

  9. IE事件处理

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. CJOJ 1071 【Uva】硬币问题(动态规划)

    CJOJ 1071 [Uva]硬币问题(动态规划) Description 有n种硬币,面值分别为v1, v2, ..., vn,每种都有无限多.给定非负整数S,可以选用多少个硬币,使得面值之和恰好为 ...