1. 程式人生 > >基於.NET CORE微服務框架 -Api網關服務管理

基於.NET CORE微服務框架 -Api網關服務管理

adding ise -name efault margin where table inf border

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網關服務管理