[发明专利]基于Nginx自研扩展模块自动拉取服务注册中心TCP配置方法在审
| 申请号: | 201911149053.9 | 申请日: | 2019-11-21 |
| 公开(公告)号: | CN111163122A | 公开(公告)日: | 2020-05-15 |
| 发明(设计)人: | 陈旋;王冲;周甜;邓志伟;朱冬冬 | 申请(专利权)人: | 江苏艾佳家居用品有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
| 代理公司: | 南京正联知识产权代理有限公司 32243 | 代理人: | 邓唯 |
| 地址: | 211100 江苏*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 nginx 扩展 模块 自动 服务 注册 中心 tcp 配置 方法 | ||
本发明公开了一种基于Nginx自研扩展模块自动拉取服务注册中心TCP配置方法,属于技术领域,设置nginx TCP配置文件:启动Nginx服务,同时请求服务注册中心,获取服务实例的地址,写入到配置文件upsync_dump_path,nginx动态加载配置文件upsync_dump_path,无需重启nginx,至此nginx可对外正常提供TCP反向代理功能;通过自主研发Nginx扩展模块,编译Nginx源码,指定自研的扩展模块,生成nginx可执行文件,启动nginx服务,提供TCP的反向代理服务。有效的减少人工修改nginx的配置文件的次数,降低人工操作的错误率,降低服务请求失败率,提高服务的可用性。
技术领域
本发明属于网络服务通讯领域,尤其涉及一种基于Nginx自研扩展模块自动拉取服务注册中心TCP配置方法。
背景技术
当前互联网架构下,大部分系统已经转型分布式。同一个服务后台会部署多份服务实例,对外暴露多个服务地址。在部分服务实例故障的情况下,不影响整体服务的可用行。
服务注册中心是存储服务实例和服务地址的数据库。服务实例启动时把服务地址注册到服务注册中心,服务实例终止时取消注册。服务客户端根据路由查询服务注册中心,找出可用的服务实例的地址。常用的服务注册中心有:Consul,Etcd和Nacos等。
Nginx是一个高性能的HTTP和反向代理web服务器,能够提供HTTP协议和TCP协议的反向代理。
当前面临的技术缺陷是:Nginx的TCP反向代理只支持静态的tcp upstream配置,即服务实例的地址需要预先写在Nginx的配置文件中。当服务实例的地址发生变化时,Nginx不能将服务客户端请求反向代理到最新的服务实例上,导致服务客户端请求服务实例异常。
发明内容
本发明所要解决的技术问题是在于克服现有技术的缺点与不足,通过自主研发Nginx扩展模块,编译Nginx源码,指定自研的扩展模块,生成nginx可执行文件,启动nginx服务,提供TCP的反向代理服务。
本发明为解决上述技术问题采用以下技术方案:
基于Nginx自研扩展模块自动拉取服务注册中心TCP配置方法,包含客
户端、Nginx服务、服务注册中心和服务实例,具体包含如下步骤:
步骤1,设置nginx TCP配置文件:
步骤2,启动Nginx服务,同时请求服务注册中心,获取服务实例的地址,写入到配置文件upsync_dump_path,nginx动态加载配置文件upsync_dump_path,无需重启nginx,至此nginx可对外正常提供TCP反向代理功能;
步骤3,Nginx间隔定时同步服务注册中心时间间隔upsync_interval时间向服务注册中心同步TCP配置,写入到配置文件路径upsync_dump_path,nginx动态加载配置文件upsync_dump_path;
步骤4,当反向代理到一个服务实例A时,若超过服务实例地址超时时间upsync_timeout,且服务实例A未响应,则说明服务实例A故障,进而换另一个服务实例B重新尝试反向代理,并把服务实例A从upstream中踢出;过一定时间,再去尝试连接服务实例A,若连接成功,则把服务实例A重新加入到upstream。
作为本发明基于Nginx自研扩展模块自动拉取服务注册中心TCP配置方法的进一步优选
方案,在一个实施方式中,所述nginx TCP配置文件包含动态upstream必要参数和Server必要参数;
其中,动态upstream必要参数,用于服务注册中心的类型,通信地址和交互的时间的设置;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏艾佳家居用品有限公司,未经江苏艾佳家居用品有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911149053.9/2.html,转载请声明来源钻瓜专利网。





