CN106657258A - 一种基于nginx+lua的安全加速中间件实现方法及装置 - Google Patents

一种基于nginx+lua的安全加速中间件实现方法及装置 Download PDF

Info

Publication number
CN106657258A
CN106657258A CN201610973181.5A CN201610973181A CN106657258A CN 106657258 A CN106657258 A CN 106657258A CN 201610973181 A CN201610973181 A CN 201610973181A CN 106657258 A CN106657258 A CN 106657258A
Authority
CN
China
Prior art keywords
service interface
data cached
user
data
configuration information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610973181.5A
Other languages
English (en)
Other versions
CN106657258B (zh
Inventor
陈朱尧
帅富元
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHENGDU SHIDAKE INFORMATION TECHNOLOGY Co Ltd
Original Assignee
CHENGDU SHIDAKE INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CHENGDU SHIDAKE INFORMATION TECHNOLOGY Co Ltd filed Critical CHENGDU SHIDAKE INFORMATION TECHNOLOGY Co Ltd
Priority to CN201610973181.5A priority Critical patent/CN106657258B/zh
Publication of CN106657258A publication Critical patent/CN106657258A/zh
Application granted granted Critical
Publication of CN106657258B publication Critical patent/CN106657258B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及一种基于NGINX+LUA的安全加速中间件实现方法及装置,属于安全加速中间件领域,能提高单台服务器的安全性和处理速度。本发明在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若不存在配置信息,则访问动态服务接口获取配置信息,然后根据配置信息筛选该访问请求能否放行,再根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入共享内存和REDIS集群中查找该服务接口对应的缓存数据并返回给用户,若否,则调用对应动态服务接口去获取数据。用于提高单台服务器的安全性,加速部分动态服务接口数据的调用速度。

Description

一种基于NGINX+LUA的安全加速中间件实现方法及装置
技术领域
本发明涉及基于NGINX+LUA的安全加速中间件领域。
背景技术
目前的单台WEB(网站)服务器受限于后端动态脚本的运行效率,当大规模访问量或DDOS(分布式拒绝服务)攻击涌入时,服务器很容易当机。现有技术一般是以一台或多台反向代理服务器来提供加速或安全过滤功能,需要较多的硬件资源,本发明则是在现有的NGINX(一种高性能的网站服务器)服务器上用LUA(一种小巧的脚本语言)进行扩展,合理利用现有资源,对服务接口进行缓存加速,有效提升单台WEB服务器的性能及安全性,能起到重要的安全加速作用。
发明内容
本发明所要解决的技术问题是提供一种基于NGINX+LUA的安全加速中间件实现方法及装置,目的在于提高单台服务器的安全性,加速服务接口获取到的数据的调用速度。
本发明解决上述技术问题的技术方案如下:
一种基于NGINX+LUA的安全加速中间件实现方法,所述方法包括以下步骤:
S1,在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入S2,若筛选不通过不能放行,则返回报错信息;
S2,根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入S3,若否,则直接调用对应动态服务接口获取数据返回给用户;
S3,根据用户的访问请求到共享内存缓存中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,若不存在对应的缓存数据,进入S4;
S4,根据用户的访问请求到REDIS(一种数据库)集群中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
本发明的有益效果是:(1)在服务器接到访问请求调用动态服务接口前,先进行安全过滤,再查找对应的缓存数据,使可被缓存的动态服务接口获得的数据能被快速调用而不用重新调用动态服务接口,服务器安全性和处理速度都能得到提升;(2)共享内存中缓存数据有效时间较短,是使用频率最高的缓存数据,REDIS集群中缓存数据有效时间比共享内存长,是使用频率较高的缓存数据,分时间级别缓存数据既能减小服务器的资源占用,又能有效提升服务器的处理速度;(3)配置信息首先由动态服务接口获取后缓存在共享内存中,也是一种缓存数据,有效时间较短,一段时间后会自动被清理,因此对配置信息修改之后能在较短时间被动态服务接口重新获取并更新到共享内存。
在上述技术方案的基础上,本发明还可以做如下改进:
进一步,所述S1中“根据配置信息筛选该访问请求能否放行”的步骤包括:
S11,根据配置信息检查用户IP地址(网络之间互连的协议地址)黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进入S12;
S12,根据配置信息检查URL(统一资源定位符,是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示)正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入S2。
采用上述进一步方案的有益效果是:既支持过滤用户IP地址黑名单,也支持过滤URL正则规则黑名单,能抵挡大多数不安全的访问,提升服务器的安全性能,也节约了服务器的资源,提升服务器的处理速度。
进一步,所述S4中具体包括以下步骤:
S41,检查REDIS集群中是否存在该访问请求的服务接口对应的缓存数据,若是,进入S42,若否,进入S44;
S42,检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入S44,若缓存因子相同,则进入S43;
S43,检查对应缓存数据的时间戳判断该缓存数据是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入S44;
S44,检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入S45;
S45,执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
采用上述进一步方案的有益效果是:(1)对REDIS服务器中的缓存数据加上了缓存因子和缓存时间戳,通过缓存因子能批量控制缓存数据的有效性,只要服务接口的缓存因子发生变化,对应的REDIS服务器中的缓存数据会因为缓存因子不一致而失效,此时会重新调用动态服务接口获取数据,并将数据和新的缓存因子更新到REDIS服务器的缓存中;(2)缓存时间戳设置的REDIS集群中的缓存数据的有效时间大于共享内存中数据的有效时间,但小于REDIS集群中数据本身的缓存时间,在缓存时间戳设定的时间过期后重新调用动态服务接口去更新数据并缓存,协调了数据时效性和服务器的处理速度;(3)REDIS集群中某一服务接口对应的缓存数据时间戳过期之后,如果有访问请求该服务接口对应的缓存数据,则将该服务接口锁定并调用动态服务接口去获取数据,锁定该服务接口能避免在调用动态服务接口获取数据的过程中,其它访问也请求该服务接口对应的缓存数据,导致重复调用动态服务接口获取数据,降低了服务器性能。锁定服务接口之后,在调用动态服务接口获取数据的过程中,先将过期缓存数据发送给客户,在数据获取成功并缓存到REDIS集群和共享内存中之后,解锁该服务接口,能有效的提高服务器的处理效率。
进一步,所述S1中的配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
采用上述进一步方案的有益效果是:各种与安全过滤和缓存相关的配置都存在配置信息中,可以灵活配置,根据情况自由调整服务器的处理方式,平衡和优化服务器的安全性和处理速度。
进一步,所述方法还包括:
成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录的步骤;
对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录的步骤。
采用上述进一步方案的有益效果是:对缓存数据调用信息和访问过滤信息进行统计记录,能为以后分析服务数据热门度和制定新的安全防护策略提供数据支持,有助于优化服务器处理性能。
一种基于NGINX+LUA的安全加速中间件装置,所述装置包括:
安全防护模块,用于在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入服务接口加速模块,若筛选不通过不能放行,则返回报错信息;
服务接口加速模块,用于根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入共享内存缓存模块,若否,则直接调用对应动态服务接口获取数据返回给用户;
共享内存缓存模块,用于根据用户的访问请求在共享内存中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将缓存数据返回给用户,若不存在对应的缓存数据,进入REDIS集群缓存模块;
REDIS集群缓存模块,用于根据用户的访问请求在REDIS集群中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
本发明的有益效果是:(1)在服务器接到访问请求调用动态服务接口前,先进行安全过滤,再查找对应的缓存数据,使可被缓存的动态服务接口获得数据能被快速调用而不用重新调用动态服务接口,服务器安全性和处理速度都能得到提升;(2)共享内存中缓存数据有效时间较短,是使用频率最高的缓存数据,REDIS集群中缓存数据有效时间比共享内存长,是使用频率较高的缓存数据,分时间级别缓存数据既能减小服务器的资源占用,又能有效提升服务器的处理速度;(3)配置信息首先由动态服务接口获取后缓存在共享内存中,也是一种缓存数据,有效时间较短,一段时间后会自动被清理,因此对配置信息修改之后能在较短时间被动态服务接口重新获取并更新到共享内存。
在上述技术方案的基础上,本发明还可以做如下改进:
进一步,所述安全防护模块中“根据配置信息筛选该访问请求能否放行”的过程包括:
根据配置信息检查用户IP地址黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进行URL正则规则黑名单检查;
根据配置信息检查URL正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入服务接口加速模块。
采用上述进一步方案的有益效果是:既支持过滤用户IP地址黑名单,也支持过滤URL正则规则黑名单,能抵挡大多数不安全的访问,提升服务器的安全性能,也节约了服务器的资源,提升服务器的处理速度。
进一步,所述REDIS集群缓存模块具体包括:
缓存数据检查模块,用于检查REDIS集群中是否存在访问请求的服务接口对应的缓存数据,若是,进入缓存因子检查模块,若否,进入服务接口锁定模块;
缓存因子检查模块,用于检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入服务接口锁定模块,若缓存因子相同,则进入缓存有效时间检查模块;
缓存有效时间检查模块,用于检查对应缓存数据的时间戳判断该缓存是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入动态服务接口执行模块;
服务接口锁定模块,用于检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入动态服务接口执行模块;
动态服务接口执行模块,用于执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
采用上述进一步方案的有益效果是:(1)对REDIS服务器中的缓存数据加上了缓存因子和缓存时间戳,通过缓存因子能批量控制缓存数据的有效性,只要服务接口的缓存因子发生变化,对应的REDIS服务器中的缓存数据会因为缓存因子不一致而失效,此时会重新调用动态服务接口获取数据,并将数据和新的缓存因子更新到REDIS服务器的缓存中;(2)缓存时间戳设置的REDIS集群中的缓存数据的有效时间大于共享内存中数据的有效时间,但小于REDIS集群中数据本身的缓存时间,在缓存时间戳设定的时间过期后重新调用动态服务接口去更新数据并缓存,协调了数据时效性和服务器的处理速度;(3)REDIS集群中某一服务接口对应的缓存数据时间戳过期之后,如果有访问请求该服务接口对应的缓存数据,则将该服务接口锁定并调用动态服务接口去获取数据,锁定该服务接口能避免在调用动态服务接口获取数据的过程中,其它访问也请求该服务接口对应的缓存数据,导致重复调用动态服务接口获取数据,降低了服务器性能。锁定服务接口之后,在调用动态服务接口获取数据的过程中,先将过期缓存数据发送给客户,在数据获取成功并缓存到REDIS集群和共享内存中之后,解锁该服务接口,能有效的提高服务器的处理效率。
进一步,所述装置还包括配置管理模块,用于设置所述配置信息,所述配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
采用上述进一步方案的有益效果是:各种与安全过滤和缓存相关的配置都存在配置信息中,可以灵活配置,根据情况自由调整服务器的处理方式,平衡和优化服务器的安全性和处理速度。
进一步,所述装置还包括:
缓存命中统计模块,用于在成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录;
安全过滤统计模块,用于对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录。
采用上述进一步方案的有益效果是:对缓存数据调用信息和访问过滤信息进行统计记录,能为以后分析服务数据热门度和制定新的安全防护策略提供数据支持,有助于优化服务器处理性能。
附图说明
图1为本发明实施例所述的基于NGINX+LUA的安全加速中间件实现方法的基本流程图。
图2为本发明实施例所述的基于NGINX+LUA的安全加速中间件实现方法的REDIS缓存数据处理方法流程图。
图3为本发明实施例所述的基于NGINX+LUA的安全加速中间件装置的结构图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
实施例1
如图1所示,一种基于NGINX+LUA的安全加速中间件实现方法,包括以下步骤:
S1,在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入S2,若筛选不通过不能放行,则返回报错信息;
S2,根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入S3,若否,则直接调用对应动态服务接口获取数据返回给用户;
S3,根据用户的访问请求到共享内存缓存中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,若不存在对应的缓存数据,进入S4;
S4,根据用户的访问请求到REDIS集群中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
具体地,共享内存处理速度快,但容量较小,所以作为第一级缓存使用,首先就到共享内存中查找缓存数据,一般设置的数据过期时间会较短,避免长时间占用资源,所以存储的都是使用频率非常高的缓存数据。
REDIS集群可以做扩展,容量比较大,所以作为第二级缓存使用,共享内存中找不到对应的缓存数据时再去REDIS集群中查找对应的缓存数据,一般设置的数据过期时间比共享内存中的过期时间长,可以合理使用资源,存储的是使用频率比较高的缓存数据。
初始情况下,共享内存和REDIS集群中都没有缓存数据,调用了动态服务接口获取数据后,会在数据中加入设定好的过期时间信息,并缓存到共享内存和REDIS集群中。
本实施例在服务器接到访问请求调用动态服务接口前,先进行安全过滤,再查找对应的缓存数据,使可被缓存的动态服务接口获得的数据能被快速调用而不用重新调用动态服务接口,服务器安全性和处理速度都能得到提升。
共享内存中缓存数据有效时间较短,是使用频率最高的缓存数据,REDIS集群中缓存数据有效时间比共享内存长,是使用频率较高的缓存数据,分时间级别缓存数据既能减小服务器的资源占用,又能有效提升服务器的处理速度。
配置信息首先由动态服务接口获取后缓存在共享内存中,也是一种缓存数据,有效时间较短,一段时间后会自动被清理,因此对配置信息修改之后能在较短时间被动态服务接口重新获取并更新到共享内存。
进一步,所述S1中“根据配置信息筛选该访问请求能否放行”的步骤包括:
S11,根据配置信息检查用户IP地址黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进入S12;
S12,根据配置信息检查URL正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入S2。
该改进中,既支持过滤用户IP地址黑名单,也支持过滤URL正则规则黑名单,能抵挡大多数不安全的访问,提升服务器的安全性能,也节约了服务器的资源,提升服务器的处理速度。
进一步,如图2所示,所述S4中具体包括以下步骤:
S41,检查REDIS集群中是否存在该访问请求的服务接口对应的缓存数据,若是,进入S42,若否,进入S44;
S42,检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入S44,若缓存因子相同,则进入S43;
S43,检查对应缓存数据的时间戳判断该缓存数据是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入S44;
S44,检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入S45;
S45,执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
具体地,REDIS集群中缓存数据的结构为:缓存因子+过期时间戳+原始数据,对于可缓存的服务接口,动态服务接口调用数据之后,首次将数据缓存至REDIS集群中时,会给数据添加过期时间戳和缓存因子;以后每次调用该缓存数据就会校验缓存因子和过期时间戳,如果过期时间戳的过期时间到了,则会重新调用动态服务接口更新数据,同时过期时间戳也会被更新。
如果某部分服务接口对应的数据需要全部过期失效,则可以通过修改该部分服务接口的缓存因子,这样该部分服务接口的缓存因子就跟REDIS集群中对应数据的缓存因子不一致,会重新调用动态服务接口获取数据,并将新的缓存因子和过期时间戳封装到数据上,以便下次调用。
该改进中,对REDIS服务器中的缓存数据加上了缓存因子和缓存时间戳,通过缓存因子能批量控制缓存数据的有效性,只要服务接口的缓存因子发生变化,对应的REDIS服务器中的缓存数据会因为缓存因子不一致而失效,此时会重新调用动态服务接口获取数据,并将数据和新的缓存因子更新到REDIS服务器的缓存中。
缓存时间戳设置的REDIS集群中的缓存数据的有效时间大于共享内存中数据的有效时间,但小于REDIS集群中数据本身的缓存时间,在缓存时间戳设定的时间过期后重新调用动态服务接口去更新数据并缓存,协调了数据时效性和服务器的处理速度。
REDIS集群中某一服务接口对应的缓存数据时间戳过期之后,如果有访问请求该服务接口对应的缓存数据,则将该服务接口锁定并调用动态服务接口去获取数据,锁定该服务接口能避免在调用动态服务接口获取数据的过程中,其它访问也请求该服务接口对应的缓存数据,导致重复调用动态服务接口获取数据,降低了服务器性能。锁定服务接口之后,在调用动态服务接口获取数据的过程中,先将过期缓存数据发送给客户,在数据获取成功并缓存到REDIS集群和共享内存中之后,解锁该服务接口,能有效的提高服务器的处理效率。
进一步,所述S1中的配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
具体地,可以采用专门的配置管理服务器来设置该配置信息,或在本机上建立目录保存配置信息文件,需要修改时直接在本机修改该配置信息文件。
该改进中,各种与安全过滤和缓存相关的配置都存在配置信息中,可以灵活配置,根据情况自由调整服务器的处理方式,平衡和优化服务器的安全性和处理速度。
进一步,所述方法还包括:
成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录的步骤;
对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录的步骤。
该改进中,对缓存数据调用信息和访问过滤信息进行统计记录,能为以后分析服务数据热门度和制定新的安全防护策略提供数据支持,有助于优化服务器处理性能。
实施例2
如图3所示,一种基于NGINX+LUA的安全加速中间件装置,包括:
安全防护模块,用于在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入服务接口加速模块,若筛选不通过不能放行,则返回报错信息;
服务接口加速模块,用于根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入共享内存缓存模块,若否,则直接调用对应动态服务接口获取数据返回给用户;
共享内存缓存模块,用于根据用户的访问请求在共享内存中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将缓存数据返回给用户,若不存在对应的缓存数据,进入REDIS集群缓存模块;
REDIS集群缓存模块,用于根据用户的访问请求在REDIS集群中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
具体地,共享内存处理速度快,但容量较小,所以作为第一级缓存使用,首先就到共享内存中查找缓存数据,一般设置的数据过期时间会较短,避免长时间占用资源,所以存储的都是使用频率非常高的缓存数据。
REDIS集群可以做扩展,容量比较大,所以作为第二级缓存使用,共享内存中找不到对应的缓存数据时再去REDIS集群中查找对应的缓存数据,一般设置的数据过期时间比共享内存中的过期时间长,可以合理使用资源,存储的是使用频率比较高的缓存数据。
初始情况下,共享内存和REDIS集群中都没有缓存数据,调用了动态服务接口获取数据后,会在数据中加入设定好的过期时间信息,并缓存到共享内存和REDIS集群中。
本实施例在服务器接到访问请求调用动态服务接口前,先进行安全过滤,再查找对应的缓存数据,使可被缓存的动态服务接口获得数据能被快速调用而不用重新调用动态服务接口,服务器安全性和处理速度都能得到提升。
共享内存中缓存数据有效时间较短,是使用频率最高的缓存数据,REDIS集群中缓存数据有效时间比共享内存长,是使用频率较高的缓存数据,分时间级别缓存数据既能减小服务器的资源占用,又能有效提升服务器的处理速度。
配置信息首先由动态服务接口获取后缓存在共享内存中,也是一种缓存数据,有效时间较短,一段时间后会自动被清理,因此对配置信息修改之后能在较短时间被动态服务接口重新获取并更新到共享内存。
进一步,所述安全防护模块中“根据配置信息筛选该访问请求能否放行”的过程包括:
根据配置信息检查用户IP地址黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进行URL正则规则黑名单检查;
根据配置信息检查URL正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入服务接口加速模块。
该改进中,既支持过滤用户IP地址黑名单,也支持过滤URL正则规则黑名单,能抵挡大多数不安全的访问,提升服务器的安全性能,也节约了服务器的资源,提升服务器的处理速度。
进一步,如图3所示,所述REDIS集群缓存模块具体包括:
缓存数据检查模块,用于检查REDIS集群中是否存在访问请求的服务接口对应的缓存数据,若是,进入缓存因子检查模块,若否,进入服务接口锁定模块;
缓存因子检查模块,用于检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入服务接口锁定模块,若缓存因子相同,则进入缓存有效时间检查模块;
缓存有效时间检查模块,用于检查对应缓存数据的时间戳判断该缓存是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入动态服务接口执行模块;
服务接口锁定模块,用于检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入动态服务接口执行模块;
动态服务接口执行模块,用于执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
具体地,REDIS集群中缓存数据的结构为:缓存因子+过期时间戳+原始数据,对于可缓存的服务接口,动态服务接口调用数据之后,首次将数据缓存至REDIS集群中时,会给数据添加过期时间戳和缓存因子;以后每次调用该缓存数据就会校验缓存因子和过期时间戳,如果过期时间戳的过期时间到了,则会重新调用动态服务接口更新数据,同时过期时间戳也会被更新。
如果某部分服务接口对应的数据需要全部过期失效,则可以通过修改该部分服务接口的缓存因子,这样该部分服务接口的缓存因子就跟REDIS集群中对应数据的缓存因子不一致,会重新调用动态服务接口获取数据,并将新的缓存因子和过期时间戳封装到数据上,以便下次调用。
该改进中,对REDIS服务器中的缓存数据加上了缓存因子和缓存时间戳,通过缓存因子能批量控制缓存数据的有效性,只要服务接口的缓存因子发生变化,对应的REDIS服务器中的缓存数据会因为缓存因子不一致而失效,此时会重新调用动态服务接口获取数据,并将数据和新的缓存因子更新到REDIS服务器的缓存中。
缓存时间戳设置的REDIS集群中的缓存数据的有效时间大于共享内存中数据的有效时间,但小于REDIS集群中数据本身的缓存时间,在缓存时间戳设定的时间过期后重新调用动态服务接口去更新数据并缓存,协调了数据时效性和服务器的处理速度。
REDIS集群中某一服务接口对应的缓存数据时间戳过期之后,如果有访问请求该服务接口对应的缓存数据,则将该服务接口锁定并调用动态服务接口去获取数据,锁定该服务接口能避免在调用动态服务接口获取数据的过程中,其它访问也请求该服务接口对应的缓存数据,导致重复调用动态服务接口获取数据,降低了服务器性能。锁定服务接口之后,在调用动态服务接口获取数据的过程中,先将过期缓存数据发送给客户,在数据获取成功并缓存到REDIS集群和共享内存中之后,解锁该服务接口,能有效的提高服务器的处理效率。
进一步,如图3所示,所述装置还包括配置管理模块,用于设置所述配置信息,所述配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
具体地,可以采用专门的配置管理服务器来设置该配置信息,或在本机上建立目录保存配置信息文件,需要修改时直接在本机修改该配置信息文件。
该改进中,各种与安全过滤和缓存相关的配置都存在配置信息中,可以灵活配置,根据情况自由调整服务器的处理方式,平衡和优化服务器的安全性和处理速度。
进一步,如图3所示,所述装置还包括:
缓存命中统计模块,用于在成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录;
安全过滤统计模块,用于对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录。
该改进中,对缓存数据调用信息和访问过滤信息进行统计记录,能为以后分析服务数据热门度和制定新的安全防护策略提供数据支持,有助于优化服务器处理性能。
在本说明书的描述中,参考术语“实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体方法、装置或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、方法、装置或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于NGINX+LUA的安全加速中间件实现方法,其特征在于,所述方法包括以下步骤:
S1,在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入S2,若筛选不通过不能放行,则返回报错信息;
S2,根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入S3,若否,则调用对应动态服务接口;
S3,根据用户的访问请求到共享内存缓存中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,若不存在对应的缓存数据,进入S4;
S4,根据用户的访问请求到REDIS集群中查找用户请求访问的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
2.如权利要求1所述的基于NGINX+LUA的安全加速中间件实现方法,其特征在于,所述S1中“根据配置信息筛选该访问请求能否放行”的步骤包括:
S11,根据配置信息检查用户IP地址黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进入S12;
S12,根据配置信息检查URL正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入S2。
3.如权利要求2所述的基于NGINX+LUA的安全加速中间件实现方法,其特征在于,所述S4中具体包括以下步骤:
S41,检查REDIS集群中是否存在该访问请求的服务接口对应的缓存数据,若是,进入S42,若否,进入S44;
S42,检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入S44,若缓存因子相同,则进入S43;
S43,检查对应缓存数据的时间戳判断该缓存数据是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入S44;
S44,检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入S45;
S45,执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
4.如权利要求3所述的基于NGINX+LUA的安全加速中间件实现方法,其特征在于,所述S1中的配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
5.如权利要求1至4任一项所述的基于NGINX+LUA的安全加速中间件实现方法,其特征在于,所述方法还包括:
成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录的步骤;
对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录的步骤。
6.一种基于NGINX+LUA的安全加速中间件装置,其特征在于,所述装置包括:
安全防护模块,用于在服务器接收到用户的访问请求时,先从共享内存中获取配置信息,若存在配置信息,则根据配置信息筛选该访问请求能否放行;若不存在配置信息,则访问动态服务接口获取配置信息并缓存到共享内存,然后根据配置信息筛选该访问请求能否放行,若筛选通过能放行,则进入服务接口加速模块,若筛选不通过不能放行,则返回报错信息;
服务接口加速模块,用于根据配置信息检查用户请求访问的服务接口是否为可缓存服务,若是,则进入共享内存缓存模块,若否,则调用对应动态服务接口;
共享内存缓存模块,用于根据用户的访问请求在共享内存中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将缓存数据返回给用户,若不存在对应的缓存数据,进入REDIS集群缓存模块;
REDIS集群缓存模块,用于根据用户的访问请求在REDIS集群中查找访问请求的服务接口对应的缓存数据,若存在对应的缓存数据,则将对应的缓存数据返回给用户,并将对应的缓存数据存入共享内存;若不存在对应的缓存数据,则调用对应动态服务接口处理,并将获取到的数据作为缓存数据存入REDIS集群和共享内存。
7.如权利要求6所述的基于NGINX+LUA的安全加速中间件装置,其特征在于,所述安全防护模块中“根据配置信息筛选该访问请求能否放行”的过程包括:
根据配置信息检查用户IP地址黑名单,若该访问请求的用户的IP地址属于用户IP地址黑名单,则不放行并直接返回报错信息;若该用户不属于黑名单,则进行URL正则规则黑名单检查;
根据配置信息检查URL正则规则黑名单,若该访问请求的URL属于URL正则规则黑名单,则不放行并直接返回报错信息;若该URL不属于黑名单,则放行并进入服务接口加速模块。
8.如权利要求7所述的基于NGINX+LUA的安全加速中间件装置,其特征在于,所述REDIS集群缓存模块具体包括:
缓存数据检查模块,用于检查REDIS集群中是否存在访问请求的服务接口对应的缓存数据,若是,进入缓存因子检查模块,若否,进入服务接口锁定模块;
缓存因子检查模块,用于检查对应缓存数据的缓存因子与用户请求访问的服务接口的缓存因子是否相同,若缓存因子不同,则进入服务接口锁定模块,若缓存因子相同,则进入缓存有效时间检查模块;
缓存有效时间检查模块,用于检查对应缓存数据的时间戳判断该缓存是有效还是过期,若该缓存数据有效,则将缓存数据返回给用户并存入到共享内存;若该缓存数据过期,则进入动态服务接口执行模块;
服务接口锁定模块,用于检查该访问请求的服务接口是否被锁定,若是,则将REDIS集群中过期的缓存数据返回给用户;若否,则锁定该服务接口,并进入动态服务接口执行模块;
动态服务接口执行模块,用于执行动态服务接口获取对应的数据,若动态服务接口获取数据成功,则将对应的数据返回给用户并存入REDIS集群和共享内存,同时解锁该服务接口,若动态服务接口获取数据不成功,则直接返回报错信息并解锁该服务接口。
9.如权利要求8所述的基于NGINX+LUA的安全加速中间件装置,其特征在于,所述装置还包括配置管理模块,用于设置所述配置信息,所述配置信息包括:各服务接口是否为可缓存服务、共享内存中缓存数据的有效时间、各服务接口的缓存因子、REDIS集群中缓存数据的缓存因子、REDIS集群中缓存数据的有效时间、用户IP地址黑名单、URL正则规则黑名单。
10.如权利要求6至9任一项所述的基于NGINX+LUA的安全加速中间件装置,其特征在于,所述装置还包括:
缓存命中统计模块,用于在成功获取共享内存或REDIS集群中的缓存数据返回给用户时,将获取成功的信息发送到日志服务器进行统计记录;
安全过滤统计模块,用于对访问请求进行用户IP地址黑名单检查或URL正则规则黑名单检查后,将检查结果信息发送到日志服务器进行统计记录。
CN201610973181.5A 2016-11-04 2016-11-04 一种基于nginx+lua的安全加速中间件实现方法及装置 Active CN106657258B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610973181.5A CN106657258B (zh) 2016-11-04 2016-11-04 一种基于nginx+lua的安全加速中间件实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610973181.5A CN106657258B (zh) 2016-11-04 2016-11-04 一种基于nginx+lua的安全加速中间件实现方法及装置

Publications (2)

Publication Number Publication Date
CN106657258A true CN106657258A (zh) 2017-05-10
CN106657258B CN106657258B (zh) 2019-07-12

Family

ID=58820874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610973181.5A Active CN106657258B (zh) 2016-11-04 2016-11-04 一种基于nginx+lua的安全加速中间件实现方法及装置

Country Status (1)

Country Link
CN (1) CN106657258B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107517266A (zh) * 2017-09-05 2017-12-26 江苏电力信息技术有限公司 一种基于分布式缓存的即时通讯方法
CN108279988A (zh) * 2018-01-25 2018-07-13 微梦创科网络科技(中国)有限公司 一种基于Lua脚本语言的消息处理方法及系统
CN109040272A (zh) * 2018-08-16 2018-12-18 北京中科梧桐网络科技有限公司 一种java统一缓存处理框架模型
CN109150848A (zh) * 2018-07-27 2019-01-04 众安信息技术服务有限公司 一种基于Nginx的蜜罐的实现方法及系统
CN109413656A (zh) * 2018-12-21 2019-03-01 成都路行通信息技术有限公司 一种基于应用防火墙的短信接口保护方法
CN109491862A (zh) * 2018-10-24 2019-03-19 聚好看科技股份有限公司 一种基于云平台的业务请求信息收集方法及装置
CN109960502A (zh) * 2017-12-22 2019-07-02 南京欣网互联网络科技有限公司 一种应用于电信运营商电子渠道的软件系统公告方法
CN110287252A (zh) * 2019-06-27 2019-09-27 南方电网科学研究院有限责任公司 一种数据安全防护系统
CN110795395A (zh) * 2018-07-31 2020-02-14 阿里巴巴集团控股有限公司 文件部署系统和文件部署方法
CN111767558A (zh) * 2020-06-23 2020-10-13 中国工商银行股份有限公司 数据访问监控方法、装置及系统
CN112256443A (zh) * 2020-10-14 2021-01-22 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN112637043A (zh) * 2020-11-17 2021-04-09 广州市玄武无线科技股份有限公司 消息过滤方法、系统、终端及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937467A (zh) * 2010-09-17 2011-01-05 北京开心人信息技术有限公司 一种服务器的高效缓存方法与系统
CN104573025A (zh) * 2015-01-12 2015-04-29 北京京东尚科信息技术有限公司 一种提高页面加载速度的方法及系统
CN105516017A (zh) * 2015-11-20 2016-04-20 上海斐讯数据通信技术有限公司 定向加速的方法、装置及终端设备
US20160226730A1 (en) * 2013-09-10 2016-08-04 Meetrics Gmbh A Method And System For Determining Page Impression In A Client-Server System

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937467A (zh) * 2010-09-17 2011-01-05 北京开心人信息技术有限公司 一种服务器的高效缓存方法与系统
US20160226730A1 (en) * 2013-09-10 2016-08-04 Meetrics Gmbh A Method And System For Determining Page Impression In A Client-Server System
CN104573025A (zh) * 2015-01-12 2015-04-29 北京京东尚科信息技术有限公司 一种提高页面加载速度的方法及系统
CN105516017A (zh) * 2015-11-20 2016-04-20 上海斐讯数据通信技术有限公司 定向加速的方法、装置及终端设备

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107517266A (zh) * 2017-09-05 2017-12-26 江苏电力信息技术有限公司 一种基于分布式缓存的即时通讯方法
CN109960502B (zh) * 2017-12-22 2022-04-05 南京欣网互联网络科技有限公司 一种应用于电信运营商电子渠道的软件系统公告方法
CN109960502A (zh) * 2017-12-22 2019-07-02 南京欣网互联网络科技有限公司 一种应用于电信运营商电子渠道的软件系统公告方法
CN108279988A (zh) * 2018-01-25 2018-07-13 微梦创科网络科技(中国)有限公司 一种基于Lua脚本语言的消息处理方法及系统
CN108279988B (zh) * 2018-01-25 2021-07-23 微梦创科网络科技(中国)有限公司 一种基于Lua脚本语言的消息处理方法及系统
CN109150848A (zh) * 2018-07-27 2019-01-04 众安信息技术服务有限公司 一种基于Nginx的蜜罐的实现方法及系统
CN109150848B (zh) * 2018-07-27 2021-11-23 众安信息技术服务有限公司 一种基于Nginx的蜜罐的实现方法及系统
CN110795395A (zh) * 2018-07-31 2020-02-14 阿里巴巴集团控股有限公司 文件部署系统和文件部署方法
CN110795395B (zh) * 2018-07-31 2023-04-18 阿里巴巴集团控股有限公司 文件部署系统和文件部署方法
CN109040272A (zh) * 2018-08-16 2018-12-18 北京中科梧桐网络科技有限公司 一种java统一缓存处理框架模型
CN109491862A (zh) * 2018-10-24 2019-03-19 聚好看科技股份有限公司 一种基于云平台的业务请求信息收集方法及装置
CN109413656A (zh) * 2018-12-21 2019-03-01 成都路行通信息技术有限公司 一种基于应用防火墙的短信接口保护方法
CN110287252A (zh) * 2019-06-27 2019-09-27 南方电网科学研究院有限责任公司 一种数据安全防护系统
CN111767558A (zh) * 2020-06-23 2020-10-13 中国工商银行股份有限公司 数据访问监控方法、装置及系统
CN111767558B (zh) * 2020-06-23 2024-02-20 中国工商银行股份有限公司 数据访问监控方法、装置及系统
CN112256443A (zh) * 2020-10-14 2021-01-22 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN112256443B (zh) * 2020-10-14 2024-02-06 杭州当虹科技股份有限公司 一种基于redis的动态集群锁系统
CN112637043A (zh) * 2020-11-17 2021-04-09 广州市玄武无线科技股份有限公司 消息过滤方法、系统、终端及存储介质
CN112637043B (zh) * 2020-11-17 2022-03-18 广州市玄武无线科技股份有限公司 消息过滤方法、系统、终端及存储介质

Also Published As

Publication number Publication date
CN106657258B (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
CN106657258B (zh) 一种基于nginx+lua的安全加速中间件实现方法及装置
CN103634315B (zh) 域名服务器的前端控制方法及系统
CN104917851B (zh) 信息处理方法及dns缓存服务器
US7266845B2 (en) Maintaining virus detection software
US6510463B1 (en) Service quality monitoring process
US20190222603A1 (en) Method and apparatus for network forensics compression and storage
US6985945B2 (en) Service quality monitoring process
CN103685590B (zh) 获取ip地址的方法及系统
CN112600868B (zh) 域名解析方法、域名解析装置及电子设备
US20080066190A1 (en) Method, system and apparatus for protecting service account
CN103095737B (zh) 一种网络浏览信息的处理方法和装置
US20030065812A1 (en) Tagging packets with a lookup key to facilitate usage of a unified packet forwarding cache
US20080163380A1 (en) Pre-populating local url rating cache
CN112261172B (zh) 服务寻址访问方法、装置、系统、设备及介质
CN1305258C (zh) 用于通信网的数据库维护方法和系统
CN1713674A (zh) 一种电话簿系统及移动终端电话簿更新及呼叫方法
WO2003003236A1 (en) Apparatus and method for handling electronic mail
CN104219200A (zh) 一种防范dns缓存攻击的装置和方法
CN1575575A (zh) 电信网中的分级高速缓存
CN103957282B (zh) 一种域内终端用户域名解析加速系统及其方法
CN101079749A (zh) 数据一致性检测方法
CN107172064A (zh) 数据访问控制方法、装置及服务器
CN101039317A (zh) 无线应用协议网关浏览业务cookie的实现方法
CN106599152A (zh) 一种数据缓存方法及系统
US20070239873A1 (en) Service quality monitoring process

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant