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


    系列目录:

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

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

    Taurus.MVC 微服务框架 入门开发教程:项目集成:1、服务端:注册中心、网关。

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

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

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

    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、模块拆分负载到多级负载均衡。

    前言:

    对于ASP.Net Core 项目,部署在Linux时,默认Kestrel不支持绑定域名。

    对于需要绑定域名的,往往需要引入第三方,如:Nginx等配套使用。

    而今天介绍的教程,则可以借Taurus.MVC 微服务架构的方式,直接替代Nginx使用。

    下面看具体教程:

    1、使用简单负载均衡架构模式:注册中心+应用中心

     

    如果成为注册中心、或应用中心,可以看本系列第一篇,文章开头有链接。

    2、注册中心:运行时绑定监听80端口:

    说明:

    1、绑定80端口,也即默认是接收所有的域名(只要解析到这个IP的80端口)
    
    2、如果要绑定https,可以参考网上其它证书的添加,Kestrel是支持https和证书添加的。

    3、注册中心默认也可以当网关使用的。

    其appsettings.json配置项大约为:

    复制代码
    {
      "AppSettings": {
        "MicroService.Server.Name": "RegCenter",//设置为服务端运行的:注册中心
    
        "Host": "[http|https]://*:80"
      }
    }
    复制代码

    必要配置仅需要将微服务配置为注册中心,然后绑定80端口即可。

    需要配置https证书的,自行网上搜索教程即可。

    然后静静等待应用中心上门即可。

    3、应用中心:模块注册名称填写要绑定的:域名即可。

    说明:

    1、配置客户端模块名称为需要绑定的域名,如:xxx.xxx.com
    
    2、指定注册中心的地址。

    其appsettings.json配置项大约为:

    复制代码
    {
      
      "AppSettings": {
        "MicroService.Client.Name": "www.a.com",
        "MicroService.Client.RegUrl": "http://localhost:80",
    
        "MicroService.App.RunUrl": "http://localhost:0",
        "Host": "http://*:0"
      }
    }
    复制代码

    这里内部仅配置http即可,因为它只与注册中心通讯,内部通讯无需要https。

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

    可以简单实现负载均衡,想开多少个,就运行启动.NET程序多少次,不需要修改任何配置。

    4、多个域名多个项目:

    重复步骤三即可,当然,注册中心(当前即网关)也需要部署相应的https证书。

    5、运行演示结果示例:

    流程:

    1、注册中心监听5000端口。
    
    2、应用中心注册www.a.com域名。
    
    3、访问:www.a.com:5000的请求

    运行结果:

     

     

    总结:

    通过Taurus.MVC 微服务功能,以前Kestrel无法支持域名绑定的问题,就此实现了。

    下一篇,讲述利用Taurus.MVC 微服务功能,如何实现轻松的版本升级功能。

  • 相关阅读:
    Netty 高性能原因之一 采用了高性能的NIO 模式
    Hexagon IDE使用手册 ---创建新项目
    【FOC控制】英飞凌TC264无刷驱动方案simplefoc移植(5)-磁编码器移植AS5600 软件IIC
    [VC++]圆形进度条
    Qt6远程连接MySQL数据库(简单易上手版)
    Portraiture3.5升级版磨皮滤镜插件使用效果教程
    [PAT练级笔记] 13 Basic Level 1015
    什么是网段
    数据结构-二叉查找树(BST)
    FullCalendar日历组件:进行任务增删改,参考gitee例子修改
  • 原文地址:https://www.cnblogs.com/cyq1162/p/16536795.html