一种基于sanic异步微服务方法技术

技术编号:28383935 阅读:13 留言:0更新日期:2021-05-08 00:12
本发明专利技术涉及WEB技术领域,具体为一种基于sanic异步微服务方法,该方法的步骤如下:步骤一、服务注册到注册中心;步骤二、Nginx反向代理器接收请求并把请求转发到认证中心;步骤三、认证中心对请求携带的用户信息进行身份认证,并把多个请求转发给多个服务器处理;步骤四、服务器收到认证中心的请求,执行业务逻辑;步骤五、响应对象,构造HTTP响应报文,返回HTTP响应报文。本发明专利技术使服务分开处理业务,和sanic单机逐步运行对比,时间响应缩小了一倍,因此面对多业务请求响应速度会更快,服务可以独立扩展,容易维护;本发明专利技术的各个服务通讯采用gRPC技术框架,可有效满足高性能且对响应速度有要求的数据传输过程,提高业务请求响应速度。

【技术实现步骤摘要】
一种基于sanic异步微服务方法
本专利技术涉及WEB
,具体为一种基于sanic异步微服务方法。
技术介绍
随着Web互联网的快速发展,单体应用越来越来很多业务会耦合在一起,一但某些模块出现Bug会影响整个系统正常运行,业务代码的耦合也会形成开发人员的依赖造成新业务难以推进,当用户量越来越大,性能会成为系统瓶颈,响应速度变慢,所有代码都放在一起,大量紧耦合的代码导致应用模块间的界限日益模糊,改一处而动全身,有时侯无从下手,拖慢了修复问题和修改变更的速度。鉴于此,我们提出一种基于sanic异步微服务方法。
技术实现思路
本专利技术的目的在于提供一种基于sanic异步微服务方法,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种基于sanic异步微服务方法,该方法的步骤如下:步骤一、服务注册到注册中心;步骤二、Nginx反向代理器接收请求并把请求转发到认证中心;步骤三、认证中心对请求携带的用户信息进行身份认证,并把多个请求转发给多个服务器处理;步骤四、服务器收到认证中心的请求,执行业务逻辑;步骤五、响应对象,构造HTTP响应报文,返回HTTP响应报文。作为本专利技术优选的技术方案,步骤一中的注册步骤包括:服务提供者启动时,会到注册中心注册信息,当注册中心获取到服务提供者信息后,就可以通过gRPC调用对应的服务。作为本专利技术优选的技术方案,步骤二中的Nginx反向代理器步骤包括:接收用户发送的访问请求,然后将请求转发给内部网络上的服务器。作为本专利技术优选的技术方案,步骤三的认证具体操作为:认证中心收到Nginx反向代理器的请求转发,对请求携带的用户信息进行身份验证,身份验证通过,把不同的业务请求转发给不同的服务器,验证失败,直接返回403网络码。作为本专利技术优选的技术方案,步骤四的具体操作为:不同的服务器收到认证中心的不同请求,执行业务逻辑,对于重复请求多次的数据用redis进行缓存,提高响应速度,对处理耗时的任务放到任务队列去处理,使用日志中心进行收集日志,有效地掌握服务器的运行状况。作为本专利技术优选的技术方案,注册中心实现服务的注册与发现、实现配置的动态变更。作为本专利技术优选的技术方案,各个服务通讯采用gRPC技术框架,在一些高性能且对响应速度有要求的数据传输场景非常适用。作为本专利技术优选的技术方案,认证中心使用sanic-jwt库对用户进行身份信息验证,避免CSRD攻击,服务器不需要存储Session信息,大大减轻了服务端的压力。作为本专利技术优选的技术方案,步骤四中的日志中心使用sanic的logging库进行收集日志,有效地掌握服务器的运行状况;步骤四中的缓存使用aioreids库进行读写,提高性能、响应速度;步骤四中的任务队列使用kafka框架进行生产和消费,高性能、扩展性强,提高响应速度。作为本专利技术优选的技术方案,sanic-jwt库是一个开源的web安全认证框架。与现有技术相比,本专利技术的有益效果是:1、本专利技术使服务分开处理业务,和sanic单机逐步运行对比,时间响应缩小了一倍,因此面对多业务请求响应速度会更快,服务可以独立扩展,容易维护;2、本专利技术的各个服务通讯采用gRPC技术框架,可有效满足高性能且对响应速度有要求的数据传输过程,提高业务请求响应速度;3、本专利技术使用sanic-jwt库对用户进行身份信息验证,避免CSRD攻击,服务器不需要存储Session信息,大大减轻了服务端的压力;4、本专利技术使用sanic的logging库进行收集日志,有效地掌握服务器的运行状况;5、本专利技术使用aioreids库进行读写,提高性能、响应速度;6、本专利技术使用kafka框架进行生产和消费,高性能、扩展性强,提高响应速度。附图说明图1为本专利技术基于sanic异步微服务方法的主流程图;图2为本专利技术基于sanic异步微服务方法的注册中心流程图;图3为本专利技术基于sanic异步微服务方法的Nginx反向流程图;图4为本专利技术基于sanic异步微服务方法的身份验证流程图;图5为本专利技术基于sanic异步微服务方法的gRPC通讯流程图;图6为本专利技术基于sanic异步微服务方法的sanic微服务对比图。具体实施方式下面将结合本专利技术实施例对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的设备或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。实施例本实施例提供的技术方案:一种基于sanic异步微服务方法,该方法的步骤如下(如图1所示):步骤一、服务注册到注册中心;步骤二、Nginx反向代理器接收请求并把请求转发到认证中心;步骤三、认证中心对请求携带的用户信息进行身份认证,并把多个请求转发给多个服务器处理;步骤四、服务器收到认证中心的请求,执行业务逻辑;步骤五、响应对象,构造HTTP响应报文,返回HTTP响应报文。作为本实施例优选的技术方案,如图2所示,步骤一中的注册步骤包括:服务提供者启动时,会到注册中心注册信息,当注册中心获取到服务提供者信息后,就可以通过gRPC调用对应的服务。作为本实施例优选的技术方案,如图3所示,步骤二中的Nginx反向代理器步骤包括:接收用户发送的访问请求,然后将请求转发给内部网络上的服务器。作为本实施例优选的技术方案,如图4所示,步骤三的认证具体操作为:认证中心收到Nginx反向代理器的请求转发,对请求携带的用户信息进行身份验证,身份验证通过,把不同的业务请求转发给不同的服务器,验证失败,直接返回403网络码。作为本实施例优选的技术方案,如图5所示,步骤四的具体操作为:不同的服务器收到认证中心的不同请求,执行业务逻辑,对于重复请求多次的数据用redis进行缓存,提高响应速度,对处理耗时的任务放到任务队列去处理,使用日志中心进行收集日志,有效地掌握服务器的运行状况。作为本实施例优选的技术方案,注册中心实现服务的注册与发现、实现配置的动态变更。作为本实施例优选的技术方案,各个服务通讯采用gRPC技术框架,在一些高性能且对响应速度有要求的数据传输场景非常适用。作为本实施例优选的技术方案,认证中心使用sanic-jw本文档来自技高网...

【技术保护点】
1.一种基于sanic异步微服务方法,其特征在于:该方法的步骤如下:/n步骤一、服务注册到注册中心;/n步骤二、Nainx反向代理器接收请求并把请求转发到认证中心;/n步骤三、认证中心对请求携带的用户信息进行身份认证,并把多个请求转发给多个服务器处理;/n步骤四、服务器收到认证中心的请求,执行业务逻辑;/n步骤五、响应对象,构造HTTP响应报文,返回HTTP响应报文。/n

【技术特征摘要】
1.一种基于sanic异步微服务方法,其特征在于:该方法的步骤如下:
步骤一、服务注册到注册中心;
步骤二、Nainx反向代理器接收请求并把请求转发到认证中心;
步骤三、认证中心对请求携带的用户信息进行身份认证,并把多个请求转发给多个服务器处理;
步骤四、服务器收到认证中心的请求,执行业务逻辑;
步骤五、响应对象,构造HTTP响应报文,返回HTTP响应报文。


2.根据权利要求1所描述的基于sanic异步微服务方法,其特征在于:步骤一中的注册步骤包括:服务提供者启动时,会到注册中心注册信息,当注册中心获取到服务提供者信息后,就可以通过aRPC调用对应的服务。


3.根据权利要求1所描述的基于sanic异步微服务方法,其特征在于:步骤二中的Nginx反向代理器步骤包括:接收用户发送的访问请求,然后将请求转发给内部网络上的服务器。


4.根据权利要求1所描述的基于sanic异步微服务方法,其特征在于:步骤三的认证具体操作为:认证中心收到Nginx反向代理器的请求转发,对请求携带的用户信息进行身份验证,身份验证通过,把不同的业务请求转发给不同的服务器,验证失败,直接返回403网络码。


5.根据权利要求1所描述的基于sanic异步微服务方法,其特征在于:步骤四的具体操作为:不同的服务器收到...

【专利技术属性】
技术研发人员:廖杰李林渡李进彬
申请(专利权)人:深圳市洪堡智慧餐饮科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1