系列目录:

本系列分为项目集成、项目部署、架构演进三个方向,后续会根据情况调整文章目录。

本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单。

Taurus.MVC 微服务框架 入门开发教程:项目集成:1、服务端:注册中心、网关(提供可运行程序下载)。

Taurus.MVC 微服务框架 入门开发教程:项目集成:2、客户端:ASP.NET(C#)编程语言项目集成:应用中心。

Taurus.MVC 微服务框架 入门开发教程:项目集成:3、客户端:其它编程语言项目集成:应用中心。

Taurus.MVC 微服务框架 入门开发教程:项目集成:4、默认安全认证与自定义安全认证。

Taurus.MVC 微服务框架 入门开发教程:项目集成:5、统一的日志管理。

Taurus.MVC 微服务框架 入门开发教程:项目集成:6、微服务的二次开发。

Taurus.MVC 微服务框架 入门开发教程:项目部署:1、微服务应用程序常规部署实现多开,节点扩容。

Taurus.MVC 微服务框架 入门开发教程:项目部署:2、让Kestrel支持绑定多个域名转发,替代Ngnix使用。

Taurus.MVC 微服务框架 入门开发教程:项目部署:3、微服务应用程序版本升级:全站升级和局部模块升级。

Taurus.MVC 微服务框架 入门开发教程:项目部署:4、微服务应用程序发布到Docker部署(上)。

Taurus.MVC 微服务框架 入门开发教程:项目部署:5、微服务应用程序发布到Docker部署(下)。

Taurus.MVC 微服务框架 入门开发教程:项目部署:6、微服务应用程序Docker部署实现多开。

Taurus.MVC 微服务框架 入门开发教程:架构演进:1、从单应用程序简单过渡到负载均衡。

Taurus.MVC 微服务框架 入门开发教程:架构演进:2、负载均到模块拆分负载。

Taurus.MVC 微服务框架 入门开发教程:架构演进:3、模块拆分负载到多级负载均衡。

前言:

Taurus.MVC 微服务集成多端,区分服务端与客户端,也可同时身兼两端,实现无线层级结构。

本篇讲述微服务的服务端:

1、服务端包括:注册中心、网关。

2、服务端的配置,都是”MicroService.Server.XXXXX“。

下面进行介绍,并提供可直接部署或运行的程序。

1、服务端:注册中心(单开,可主从)

功能:

1、接收来自客户端的模块注册。

2、提供模块注册的访问地址列表获取。

3、可身兼网关,提供负载均衡和反向代理功能。

区分主从:

1、注册中心(主):

  提供注册中心的基本功能,当从存在时,将从的地址发给访问者备用。

2、注册中心(从):

  默认当条咸鱼,仅从主获取信息进行同步工作。

  当主挂了,化身为主功能,并时刻检测主(恢复)正常时,再将数据同步到主,并通知访问者切到主地址访问,自身再当条咸鱼。

注册中心(主):

属于被动者,因此启动即可,默默等待访问者上勾即可。

其配置也即一条,指明类型即可:

web.Config:

    <appSettings>
<add key="MicroService.Server.Name" value="RegCenter"/>
</appSettings>

appsettings.json 配置项:

  "AppSettings": {
    "MicroService.Server.Name": "RegCenter",//设置为服务端运行的:注册中心
  }
}

注册中心(从,可选):

属于咸鱼,但仍有两件事情要做:

1、需要指定主中心的地址,需要从主中心获取列表进行同步。
2、访问主中心地址时,主中心会将来源地址分发给访问者备用。

故此配置需要指定地址:

web.config:(需要手工首次访问以激活)

    <appSettings>
<add key="MicroService.Server.Name" value="RegCenter"/>
<!--主注册中心地址:需要修改,指定后,此中心为备用中心-->
<add key="MicroService.Server.RegUrl" value="http://localhost:5000"/>
</appSettings>

appsettings.json 配置项:(配置好运行地址,自动触发首次访问)

{
"AppSettings": {
"MicroService.Server.Name": "RegCenter",
"MicroService.Server.RegUrl": "http://locahost:xxxx",
"MicroService.App.RunUrl": "http://localhost:9000",//设置启动的运行地址,可触发Kestrel运行时启动微服务。 }
}

2、服务端网关:(可多开)

作用:

提供负载均衡和反向代理功能。

作为网关,需要从注册中心获取到模块注册列表,以便根据规则进行代理转发。

因此,配置有3条:

web.config:(需要手工首次访问以激活)

    <appSettings>
<add key="MicroService.Server.Name" value="Gateway"/>
<!--主注册中心地址:需要修改,指定后,此中心为备用中心-->
<add key="MicroService.Server.RegUrl" value="http://localhost:5000"/>
</appSettings>

appsettings.json 配置项:(配置好运行地址,自动触发首次访问)

{
"AppSettings": {
"MicroService.Server.Name": "Gateway",
"MicroService.Server.RegUrl": "http://locahost:xxxx",
"MicroService.App.RunUrl": "http://localhost:9000",//设置启动的运行地址,可触发Kestrel运行时启动微服务。 }
}
 

3、可运行部署版本下载:.Net Framwork版本

可部署在Window IIS 集成模式 V4.0下:

1、注册中心下载:注册中心(主):RegCenterOfMasterForNet4.zip

2、注册中心下载:注册中心(从):RegCenterOfSlaveForNet4.zip

2、网关下载:GatewayForNet4.zip,作为网关,部署在IIS时,可以启用Web园,设置多个进程数量,效果很不错。

4、可运行程序版本下载:.NET Core 系列

作为网关或注册中心(兼网关)时,对外通常可能需要部署为Https,涉及到Kestrel的证书设置,可参考:

https://blog.walterlv.com/post/add-https-support-for-asp-dotnet-using-kestrel

因此这里暂时就不进行封装打包程序了,自行新建个空项目Nuget引用Taurus.MVC即可,可参考:

本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单。

总结:

本篇介绍微服务框架的服务端,也可参考本系列第一篇,做为服务端,其使用相当的简单。

最新文章

  1. 如何在Visual Studio 工程之间共享静态内容 (js, css, img, etc.)
  2. IOS路线图
  3. mac os x用macport安装redis
  4. nuget pack
  5. Ubuntu13.04 安装 chrome
  6. 根据文字返回Label高度
  7. win32进程间通讯--共享内存
  8. codevs1024一塔湖图(丧心病狂的建图)
  9. HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth之全然具体解释
  10. Redis源代码分析(十)--- testhelp.h小测试框架和redis-check-aof.c 日志检测
  11. GDB: advanced usages
  12. 扫描局域网内的ip和主机名
  13. 201521123013 《Java程序设计》第9周学习总结
  14. Spring Boot获取前端页面参数的几种方式总结
  15. 随手用JQ写个选项卡
  16. Go 开源博客平台 Pipe 1.0.0 发布!
  17. 使用deb 打包开发的postgres extension 另外一种方法
  18. .net获取excel表的内容(OleDB方法)
  19. vi编辑时出现E325:ATTENTION
  20. Codeforces Round #235 (Div. 2) D. Roman and Numbers 状压dp+数位dp

热门文章

  1. Python 空间名称与闭包函数
  2. 史上最全Spring Cloud Alibaba--Nacos教程(涵盖负载均衡、配置管理、多环境切换、配置共享/刷新、灰度、集群)
  3. Web自动化定位方法以及常用便捷操作
  4. 轻松解决pycharm中游标变宽的问题
  5. VSCode 安装以及初步使用教程
  6. Linux服务器启动jstatd服务
  7. 使用Group By子句的时候,一定要记住下面的一些规则
  8. python基础知识-day8(函数实战)
  9. 【python基础】第04回 变量常量
  10. JQuery select与radio的取值与赋值