CN111026748B - 网络访问频次管控的数据压缩方法、装置及系统 - Google Patents

网络访问频次管控的数据压缩方法、装置及系统 Download PDF

Info

Publication number
CN111026748B
CN111026748B CN201911073068.1A CN201911073068A CN111026748B CN 111026748 B CN111026748 B CN 111026748B CN 201911073068 A CN201911073068 A CN 201911073068A CN 111026748 B CN111026748 B CN 111026748B
Authority
CN
China
Prior art keywords
data
compressed
ith
control
value
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.)
Active
Application number
CN201911073068.1A
Other languages
English (en)
Other versions
CN111026748A (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.)
Guangzhou Xuanwu Wireless Technology Co Ltd
Original Assignee
Guangzhou Xuanwu Wireless 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 Guangzhou Xuanwu Wireless Technology Co Ltd filed Critical Guangzhou Xuanwu Wireless Technology Co Ltd
Priority to CN201911073068.1A priority Critical patent/CN111026748B/zh
Publication of CN111026748A publication Critical patent/CN111026748A/zh
Application granted granted Critical
Publication of CN111026748B publication Critical patent/CN111026748B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种网络访问频次管控的数据压缩方法、装置及系统,该压缩方法先获取待压缩数据;根据待压缩数据的数据类型,获取待压缩数据对应的第一数值;根据第一数值、字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库;采用本发明技术方案能够降低数据的存储空间,有效提高本地服务器内存资源的利用率。

Description

网络访问频次管控的数据压缩方法、装置及系统
技术领域
本发明涉及数据处理技术领域,尤其涉及一种网络访问频次管控的数据压缩方法、装置及系统。
背景技术
目前,普遍采用GuavaRateLimiter或metrics-ganglia的方法进行计算机网络访问频次的分析和限流,但是这两种方法在存储数据的过程中,都占用大量的本地服务器的内存,导致本地服务器的内存的容量不足,进而引起服务器卡顿以及网络延迟的现象。因此,能够降低网络访问频次管控的数据存储空间有助于提高本地服务器内存的利用率。
现有技术中,采用Redis+lua的方法进行计算机网络访问频次的分析和限流,能够使数据存储在Redis所在的服务器上,且通过网络的形式进行数据交互,若控制程序和Redis不在同一台机器,则限流数据是不占用本地内存的,因此采用Redis+lua的方法能够减少数据占用本地服务器的存储空间,使得本地服务器的内存在容量不变的情况下能够存储更多的数据。但是目前仅使用Redis+lua的方法压缩数据仍需要占用大量本地服务器的内存空间,例如,根据管控策略+用户+手机号+自定义的传输形式生成的key值长度已超过100个字符,仍然占用大量的本地内存空间,因此仅使用Redis+lua的方法不足以大幅度减少数据占用本地服务器的存储空间。
发明内容
本发明实施例提出一种网络访问频次管控的数据压缩方法、装置及系统,能够降低数据的存储空间,有效提高本地服务器内存资源的利用率。
本发明实施例提供一种网络访问频次管控的数据压缩方法,包括:
获取待压缩数据;
根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值;
根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将所述压缩数据存储到缓存数据库。
作为优选方案,所述根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值,具体为:
判断所述待压缩数据的数据类型,若所述待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;
若所述待压缩数据的数据类型为char中的合法字符时,则将所述待压缩数据的原始值标记为第一数值;
若所述待压缩数据的数据类型为long、float、double中的任意一项时,则将所述待压缩数据的原始值标记为第一数值;
若所述待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值。
作为优选方案,所述根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,具体为:
以所述第i数值为被除数,以所述容量为除数,进行迭代运算,获得第i余数和第i商值;
当所述第i商值大于所述容量时,则将所述第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于所述容量;i的初始值为1,且每经历一次迭代后i的值加1;
当所述第i商值小于所述容量时,停止迭代;
在每次迭代后,从所述字符池中提取所述第i余数对应的字符,获得第i字符;
将获得的字符按照提取顺序进行拼接,获得压缩数据。
相应地,本实施例还提供一种网络访问频次管控的数据压缩装置,包括:
获取单元,用于获取待压缩数据;
转换单元,用于根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值;
压缩单元,用于根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将所述压缩数据存储到缓存数据库。
作为优选方案,所述根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值,具体为:
判断所述待压缩数据的数据类型,若所述待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;
若所述待压缩数据的数据类型为char中的合法字符时,则将所述待压缩数据的原始值标记为第一数值;
若所述待压缩数据的数据类型为long、float、double中的任意一项时,则将所述待压缩数据的原始值标记为第一数值;
若所述待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值。
作为优选方案,所述根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,具体为:
以所述第i数值为被除数,以所述容量为除数,进行迭代运算,获得第i余数和第i商值;
当所述第i商值大于所述容量时,则将所述第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于所述容量;i的初始值为1,且每经历一次迭代后i的值加1;
当所述第i商值小于所述容量时,停止迭代;
在每次迭代后,从所述字符池中提取所述第i余数对应的字符,获得第i字符;
将获得的字符按照提取顺序进行拼接,获得压缩数据。
相应地,本实施例还提供一种网络访问频次管控的数据压缩系统,包括:
任一项所述的压缩装置、用于限制管控数据的传输频率的限流装置和用于限制管控策略的修改顺序的管控装置;
所述压缩装置用于减少待压缩数据的存储空间;
所述限流装置包括第一数据获取单元、判断单元、第一执行单元和第二执行单元;
所述第一数据获取单元,用于获取管控策略和管控数据;其中所述管控策略包括管控频次和预设周期;所述判断单元,用于判断在所述预设周期内所述管控数据进入系统的频次是否超过所述管控频次;所述第一执行单元,用于所述判断单元确定所述管控数据进入系统的频次在所述管控频次内时,将放通所述管控数据;所述第二执行单元,用于所述判断单元确定所述管控数据进入系统的频次超出所述管控频次时,拦截超出管控频次的管控数据,以便于系统分析记录所述超出管控频次的管控数据;
所述管控装置包括,第二数据获取单元和修改单元;
所述第二数据获取单元,用于获取M个待修改的管控策略;M为大于0的正整数;所述修改单元,用于将所述待修改的管控策略按照时间序列进行排序,并按照从先后顺序,分别一一修改每个所述待修改的管控策略,获得M个已修改的管控策略,以便于管控数据根据所述已修改的管控策略进行相应的频次限流。
实施本发明实施例,具有如下有益效果:
本发明实施例提供的网络访问频次管控的数据压缩方法,该压缩方法先获取待压缩数据;根据待压缩数据的数据类型,获取待压缩数据对应的第一数值;根据第一数值、字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库。相比于现有技术采用Redis+lua的方法以减少数据占用本地服务器的存储空间,本发明不仅仅使用Redis+lua的方法以减少数据占用本地服务器的存储空间,还会将数据进行压缩,进一步降低数据的存储空间,从而有效提高本地服务器内存资源的利用率。
相应地,本发明还公开了一种网络访问频次管控的数据压缩系统,包括用于减少待压缩数据的存储空间的压缩装置、用于限制管控数据的传输频率的限流装置和用于限制管控策略的修改顺序的管控装置。相比于现有技术采用Redis+lua的方法以减少数据占用本地服务器的存储空间,本发明具有如下有益效果:
1、能够对数据进行压缩,进一步降低数据的存储空间,从而有效提高本地服务器内存资源的利用率。
2、能够限制管控数据的传输频率,防止管控数据在预设周期内通过的频率过高而引起的系统阻塞现象。
3、能够限制管控策略的修改顺序,防止多个管理员在同个时间内对同一个管控策略进行修改而引起数据的不一致性,从而避免管控数据的频次计数数据无效的现象。
附图说明
图1是本发明提供的网络访问频次管控的数据压缩方法的第一实施例的流程示意图;
图2是本发明提供的网络访问频次管控的数据压缩装置的第一实施例的结构示意图;
图3是本发明提供的网络访问频次管控的数据压缩系统的第二实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明第一实施例:
请参见图1,是本发明提供的网络访问频次管控的数据压缩方法的第一实施例的流程示意图。如图1,该构建方法包括步骤101至步骤103,各步骤具体如下:
步骤101:获取待压缩数据。
在本实施例中,待压缩数据包括管控策略和管控数据;其中,管控策略指代管控数据的限制条件,例如,X条/Y分钟,其中X和Y均为大于0的正整数;管控数据指代需要限制的目标数据,管控数据可以按照不同系统不同的需求进行灵活配置,譬如,以通信管控数据为例,“手机用户+手机号+手机用户自定义的传输形式”,传输形式不局限于文本传输、图片传输;以车流控制系统为例,“(A|B|C)类车+(本地|外地)车+(单|双)号+其他”。
步骤102:根据待压缩数据的数据类型,获取待压缩数据对应的第一数值。
在本实施例中,步骤102具体为:判断待压缩数据的数据类型,若待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取待压缩数据的哈希码值,并将哈希码值标记为第一数值;若待压缩数据的数据类型为char中的合法字符时,则将待压缩数据的原始值标记为第一数值;若待压缩数据的数据类型为long、float、double中的任意一项时,则将待压缩数据的原始值标记为第一数值;若待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取待压缩数据的哈希码值,并将哈希码值标记为第一数值。其中,待压缩数据对应的原始值或哈希码值均由Java平台内置算法获得;char的非法字符表示为与redis及lua冲突的字符。
在本实施例中,首先判断待压缩数据的数据类型,并根据数据类型获取该待压缩数据对应的第一数值,使得第一数值不会因为数据类型不同而导致获取的第一数值存在偏差,进一步确保数据获取的准确性;不仅如此,采用该方法不需要预先将待压缩数据的数据类型一一转换为特定的数据类型,从而减少数据转换的时间和降低数据转换的复杂度,进而提高了工作效率。
步骤103:根据第一数值、预设的字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库。
在本实施例中,步骤103具体为:以第i数值为被除数,以容量为除数,进行迭代运算,获得第i余数和第i商值;当第i商值大于容量时,则将第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于容量;i的初始值为1,且每经历一次迭代后i的值加1;当第i商值小于容量时,停止迭代;在每次迭代后,从字符池中提取第i余数对应的字符,获得第i字符;将获得的字符按照提取顺序进行拼接,获得压缩数据。
在本实施例中,字符池是根据开发人员根据实际情况预先设定好的,假设字符池为[0:a,1:b,2:c,3:d],容量可以理解为字符池的数量,因此字符池[0:a,1:b,2:c,3:d]对应的容量为4。
譬如,假设第一数值W1为25,字符池为[0:a,1:b,2:c,3:d];容量U为4,根据公式V=W%U,获得第一余数V1=1,第一商值Z1=6,判断第一商值是否小于容量,该步骤中6大于4,因此将第一商值Z1=6的值赋值给第二数值W2=6,进入下一次迭代运算,根据公式V=W%U,获得第二余数V2=2,第二商值Z2=1,判断第二商值是否大于容量,该步骤2小于4,因此停止迭代。从字符池中按顺序提取第一余数对应的字符和第二余数对应的字符,该步骤中,第一余数V1=1对应的字符为b,第二余数对应的字符为c,因此压缩数据为bc。
在本实施例中,获取的压缩数据仍然保持原状态,能通过该压缩数据的前几个参数找到所有具有相同前缀的压缩数据,例如由字符A,B,C,D,E构建的第一压缩数据“ABCDE”;由字符A,B,C,D,F,G构建的第二压缩数据“ABCDFG”,可以根据字符A,B和C找到第一压缩数据和第二压缩数据,使得压缩后的压缩数据不是一个无状态且乱序的数据。
由上可见,本发明实施例提供的网络访问频次管控的数据压缩方法,该压缩方法先获取待压缩数据;根据待压缩数据的数据类型,获取待压缩数据对应的第一数值;根据第一数值、字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库。相比于现有技术采用Redis+lua的方法以减少数据占用本地服务器的存储空间,本发明不仅仅使用Redis+lua的方法以减少数据占用本地服务器的存储空间,还会将数据进行压缩,进一步降低数据的存储空间,从而有效提高本地服务器内存资源的利用率。
本实施例还提供一种网络访问频次管控的数据压缩装置,请参见图2,是本发明提供的一种网络访问频次管控的数据压缩装置的第一实施例的结构示意图,该装置包括:获取单元201、转换单元202和压缩单元203。
获取单元201,用于获取待压缩数据;
转换单元202,用于根据待压缩数据的数据类型,获取待压缩数据对应的第一数值;
压缩单元203,用于根据第一数值、预设的字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库。
本装置更详细的工作原理和流程可以但不限于参见第一实施例的网络访问频次管控的数据压缩方法。
由上可见,本发明实施例提供的网络访问频次管控的数据压缩装置,相比于现有技术采用Redis+lua的方法以减少数据占用本地服务器的存储空间,本发明不仅仅使用Redis+lua的方法以减少数据占用本地服务器的存储空间,还会将数据进行进一步地压缩,从而降低数据的存储空间,进而有效提高本地服务器内存资源的利用率。
本发明第二实施例:
请参见图3,是本发明提供的一种网络访问频次管控的数据压缩系统的第二实施例的结构示意图。该系统包括:用于减少待压缩数据的存储空间的压缩装置301、用于限制管控数据的传输频率的限流装置302和用于限制管控策略的修改顺序的管控装置303;
压缩装置301包括第一获取单元、转换单元和压缩单元;
在本实施例中,第一获取单元,用于获取待压缩数据,待压缩数据包括管控策略和管控数据;其中,管控策略指代管控数据的限制条件,例如,X条/Y分钟,其中X和Y均为大于0的正整数;管控数据指代需要限制的目标数据,管控数据可以按照不同系统不同的需求进行灵活配置,譬如,以通信管控数据为例,“手机用户+手机号+手机用户自定义的传输形式”,传输形式不局限于文本传输、图片传输;以车流控制系统为例,“(A|B|C)类车+(本地|外地)车+(单|双)号+其他”。
转换单元,用于根据待压缩数据的数据类型,获取待压缩数据对应的第一数值,具体为:判断待压缩数据的数据类型,若待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取待压缩数据的哈希码值,并将哈希码值标记为第一数值;若待压缩数据的数据类型为char中的合法字符时,则将待压缩数据的原始值标记为第一数值;若待压缩数据的数据类型为long、float、double中的任意一项时,则将待压缩数据的原始值标记为第一数值;若待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取待压缩数据的哈希码值,并将哈希码值标记为第一数值。其中,待压缩数据对应的原始值或哈希码值均由Java平台内置算法获得;char的非法字符表示为与redis及lua冲突的字符。
在本实施例中,首先判断待压缩数据的数据类型,并根据数据类型获取该待压缩数据对应的第一数值,使得第一数值不会因为数据类型不同而导致获取的第一数值存在偏差,进一步确保数据获取的准确性;不仅如此,采用该方法不需要预先将待压缩数据的数据类型一一转换为特定的数据类型,从而减少数据转换的时间和降低数据转换的复杂度,进而提高了工作效率。
在本实施例中,数据类型非int、string、short、byte、char、long、float、double,则获取待压缩数据的哈希码值即可,因为Java中哈希码经过散列算法,使得哈希碰撞的概率非常小,加上系统的数据容量和时效性、以及管控数据的多种组合方式,导致最终生成的管控数据的重复概率为0。
压缩单元,用于根据第一数值、预设的字符池和字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将压缩数据存储到缓存数据库,具体为:以第i数值为被除数,以容量为除数,进行迭代运算,获得第i余数和第i商值;当第i商值大于容量时,则将第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于容量;i的初始值为1,且每经历一次迭代后i的值加1;当第i商值小于容量时,停止迭代;在每次迭代后,从字符池中提取第i余数对应的字符,获得第i字符;将获得的字符按照提取顺序进行拼接,获得压缩数据。
在本实施例中,字符池是根据开发人员根据实际情况预先设定好的,假设字符池为[0:a,1:b,2:c,3:d],容量可以理解为字符池的数量,因此字符池[0:a,1:b,2:c,3:d]对应的容量为4。
譬如,假设第一数值W1为25,字符池为[0:a,1:b,2:c,3:d];容量U为4,根据公式V=W%U,获得第一余数V1=1,第一商值Z1=6,判断第一商值是否小于容量,该步骤中6大于4,因此将第一商值Z1=6的值赋值给第二数值W2=6,进入下一次迭代运算,根据公式V=W%U,获得第二余数V2=2,第二商值Z2=1,判断第二商值是否大于容量,该步骤2小于4,因此停止迭代。从字符池中按顺序提取第一余数对应的字符和第二余数对应的字符,该步骤中,第一余数V1=1对应的字符为b,第二余数对应的字符为c,因此压缩数据为bc。
在本实施例中,获取的压缩数据仍然保持原状态,能通过该压缩数据的前几个参数找到所有具有相同前缀的压缩数据,例如由字符A,B,C,D,E构建的第一压缩数据“ABCDE”;由字符A,B,C,D,F,G构建的第二压缩数据“ABCDFG”,可以根据字符A,B和C找到第一压缩数据和第二压缩数据,使得压缩后的压缩数据不是一个无状态且乱序的数据。
限流装置302包括第一数据获取单元、判断单元、第一执行单元和第二执行单元;
第一数据获取单元,用于获取管控策略和管控数据;其中管控策略包括管控频次和预设周期;在本实施例中,管控数据可以根据业务需要进行灵活变动,例如,以通信管控数据为例,管控数据可以为“手机用户+手机号+文本内容”、“手机用户+手机号”和“手机用户”。
判断单元,用于判断在预设周期内管控数据进入系统的频次是否超过管控频次;第一执行单元,用于判断单元确定管控数据进入系统的频次在管控频次内时,将放通管控数据;第二执行单元,用于判断单元确定管控数据进入系统的频次超出管控频次时,拦截超出管控频次的管控数据,以便于系统分析记录超出管控频次的管控数据。
在本实施例中,在拦截超出管控频次的管控数据之后,系统将超出管控频次的管控数据返回到业务调用层,业务调用层可根据业务要求进行相应的处理操作,例如,向该数据的请求方输出该管控数据存在超频信息,从而使得该管控数据不能进行相应的传输操作,或者将超出管控频次的管控数据记录在日记文件,以便于系统根据日记文件进行相应的管控数据的修改。
在本实施例中,管控策略和管控数据存储在Mysql关系型数据库中,其中Mysql关系型数据库还存储业务相关的数据,例如,账号策略类型(高频|低频)、(同手机号同内容|同手机号)的数据。本系统将管控数据的频次计数数据存储在Redis数据库中,使得所有管控数据的频次计数在Redis中进行,以保证管控数据频次计数的正确性。
管控装置303包括第二数据获取单元和修改单元;
第二数据获取单元,用于获取M个待修改的管控策略;M为大于0的正整数;修改单元,用于将待修改的管控策略按照时间序列进行排序,并按照从先后顺序,分别一一修改每个待修改的管控策略,获得M个已修改的管控策略,以便于管控数据根据已修改的管控策略进行相应的频次限流。
在本实施例中,首先获取全部待修改的管控策略;其中每个待修改的管控策略标记修改内容;其次,将待修改的管控策略按照时间序列进行排序,获得待修改管控策略表;接着,待修改管控策略表中的第一个待修改的管控策略可以获锁,当待修改的管控策略获锁后,可以根据修改内容进行相应的修改,未获锁的待管控策略不能进行修改,当第一个待修改的管控策略数据修改完毕后,将该待修改的管控策略在待修改管控策略表中剔除;紧接着,待修改管控策略表中的第二个待修改的管控策略替代原先的第一个待修改的管控策略,并获取锁,从而进行相应的修改操作,根据上述方法,直到待修改管控策略表中的全部待修改的管控策略修改完毕。
在本实施例中,获取待修改的管控策略对应的所有管控数据,并通知所有管控数据该管控策略已经修改,并根据已修改后的管控策略进行相应的频次限流。
在本实施例中,限制管控策略的修改顺序,能够有效避免多个管理员同时修改同一个管控策略而引起数据读取不一致性;例如,管理员甲将管控策略A修改为10条/1分钟,而管理员乙将管控策略A修改为20条/1分钟,然而管控策略A对应的管控数据不清楚执行哪一个管控策略,从而导致管控数据的频次计数数据无效。
由上可见,本发明实施例提供的网络访问频次管控的数据压缩系统,包括用于减少待压缩数据的存储空间的压缩装置、用于限制管控数据的传输频率的限流装置和用于限制管控策略的修改顺序的管控装置。相比于现有技术采用Redis+lua的方法以减少数据占用本地服务器的存储空间,本发明具有如下有益效果:
1、能够对数据进行压缩,进一步降低数据的存储空间,从而有效提高本地服务器内存资源的利用率。
2、能够限制管控数据的传输频率,防止管控数据在预设周期内通过的频率过高而引起的系统阻塞现象。
3、能够限制管控策略的修改顺序,防止多个管理员在同个时间内对同一个管控策略进行修改而引起数据读取的不一致性,从而避免管控数据的频次计数数据无效的现象。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (3)

1.一种网络访问频次管控的数据压缩方法,其特征在于,包括:
获取待压缩数据;
根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值;具体为:判断所述待压缩数据的数据类型,若所述待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;若所述待压缩数据的数据类型为char中的合法字符时,则将所述待压缩数据的原始值标记为第一数值;若所述待压缩数据的数据类型为long、float、double中的任意一项时,则将所述待压缩数据的原始值标记为第一数值;若所述待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;
根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将所述压缩数据存储到缓存数据库;具体为:以第i数值为被除数,以所述容量为除数,进行迭代运算,获得第i余数和第i商值;当所述第i商值大于所述容量时,则将所述第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于所述容量;i的初始值为1,且每经历一次迭代后i的值加1;当所述第i商值小于所述容量时,停止迭代;在每次迭代后,从所述字符池中提取所述第i余数对应的字符,获得第i字符;将获得的字符按照提取顺序进行拼接,获得压缩数据。
2.一种网络访问频次管控的数据压缩装置,其特征在于,包括:
获取单元,用于获取待压缩数据;
转换单元,用于根据所述待压缩数据的数据类型,获取所述待压缩数据对应的第一数值;具体为:判断所述待压缩数据的数据类型,若所述待压缩数据的数据类型为int、string、char的非法字符、short、byte中的任意一项时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;若所述待压缩数据的数据类型为char中的合法字符时,则将所述待压缩数据的原始值标记为第一数值;若所述待压缩数据的数据类型为long、float、double中的任意一项时,则将所述待压缩数据的原始值标记为第一数值;若所述待压缩数据的数据类型为除int、string、short、byte、char、long、float、double外的其他对象数据类型时,则获取所述待压缩数据的哈希码值,并将所述哈希码值标记为第一数值;
压缩单元,用于根据所述第一数值、预设的字符池和所述字符池对应的容量,结合预设的数据压缩方法,获得压缩数据,并将所述压缩数据存储到缓存数据库;具体为:以第i数值为被除数,以所述容量为除数,进行迭代运算,获得第i余数和第i商值;当所述第i商值大于所述容量时,则将所述第i商值赋值给第i+1数值,进入下一次迭代运算;其中,第i数值、第i余数和第i商值均取整数,且第i余数小于所述容量;i的初始值为1,且每经历一次迭代后i的值加1;当所述第i商值小于所述容量时,停止迭代;在每次迭代后,从所述字符池中提取所述第i余数对应的字符,获得第i字符;将获得的字符按照提取顺序进行拼接,获得压缩数据。
3.一种网络访问频次管控的数据压缩系统,其特征在于,包括如权利要求2所述的压缩装置、用于限制管控数据的传输频率的限流装置和用于限制管控策略的修改顺序的管控装置;
所述压缩装置用于减少待压缩数据的存储空间;
所述限流装置包括第一数据获取单元、判断单元、第一执行单元和第二执行单元;
所述第一数据获取单元,用于获取管控策略和管控数据;其中所述管控策略包括管控频次和预设周期;所述判断单元,用于判断在所述预设周期内所述管控数据进入系统的频次是否超过所述管控频次;所述第一执行单元,用于所述判断单元确定所述管控数据进入系统的频次在所述管控频次内时,将放通所述管控数据;所述第二执行单元,用于所述判断单元确定所述管控数据进入系统的频次超出所述管控频次时,拦截超出管控频次的管控数据,以便于系统分析记录所述超出管控频次的管控数据;
所述管控装置包括,第二数据获取单元和修改单元;
所述第二数据获取单元,用于获取M个待修改的管控策略;M为大于0的正整数;所述修改单元,用于将所述待修改的管控策略按照时间序列进行排序,并按照从先后顺序,分别一一修改每个所述待修改的管控策略,获得M个已修改的管控策略,以便于管控数据根据所述已修改的管控策略进行相应的频次限流。
CN201911073068.1A 2019-11-05 2019-11-05 网络访问频次管控的数据压缩方法、装置及系统 Active CN111026748B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911073068.1A CN111026748B (zh) 2019-11-05 2019-11-05 网络访问频次管控的数据压缩方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911073068.1A CN111026748B (zh) 2019-11-05 2019-11-05 网络访问频次管控的数据压缩方法、装置及系统

Publications (2)

Publication Number Publication Date
CN111026748A CN111026748A (zh) 2020-04-17
CN111026748B true CN111026748B (zh) 2020-11-17

Family

ID=70200814

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911073068.1A Active CN111026748B (zh) 2019-11-05 2019-11-05 网络访问频次管控的数据压缩方法、装置及系统

Country Status (1)

Country Link
CN (1) CN111026748B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112036554B (zh) * 2020-11-04 2021-04-06 深圳追一科技有限公司 神经网络模型的处理方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401561A (zh) * 2013-07-25 2013-11-20 百度在线网络技术(北京)有限公司 用于地图数据的压缩和解压缩的方法及装置
CN106874425A (zh) * 2017-01-23 2017-06-20 福州大学 基于Storm的实时关键词近似搜索算法
CN107291454A (zh) * 2017-05-27 2017-10-24 北京思特奇信息技术股份有限公司 一种在事件的评论列表中添加评论的方法及评论系统
CN109739913A (zh) * 2018-12-24 2019-05-10 北京明朝万达科技股份有限公司 一种基于可配置化的热点数据缓存处理方法及设备
CN110177102A (zh) * 2019-05-28 2019-08-27 深圳市网心科技有限公司 基于边缘节点的防攻击方法、电子设备、系统及介质
CN110399104A (zh) * 2019-07-23 2019-11-01 网易(杭州)网络有限公司 数据存储方法、数据存储装置、电子设备、存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020154040A1 (en) * 2001-04-23 2002-10-24 Pentti Vataja Lossless data compression method enabling fast decompression
CN103546161A (zh) * 2013-10-31 2014-01-29 江苏引跑网络科技有限公司 基于二进制位处理的无损压缩方法
US9448924B2 (en) * 2014-01-08 2016-09-20 Netapp, Inc. Flash optimized, log-structured layer of a file system
CN104703183A (zh) * 2015-03-05 2015-06-10 北京成众志科技有限公司 一种专线apn安全增强接入方法与装置
US10013170B1 (en) * 2016-03-31 2018-07-03 EMC IP Holding Company LLC Intelligent data compression
CN106202505B (zh) * 2016-07-20 2019-09-20 北京京东尚科信息技术有限公司 数据处理方法及其系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401561A (zh) * 2013-07-25 2013-11-20 百度在线网络技术(北京)有限公司 用于地图数据的压缩和解压缩的方法及装置
CN106874425A (zh) * 2017-01-23 2017-06-20 福州大学 基于Storm的实时关键词近似搜索算法
CN107291454A (zh) * 2017-05-27 2017-10-24 北京思特奇信息技术股份有限公司 一种在事件的评论列表中添加评论的方法及评论系统
CN109739913A (zh) * 2018-12-24 2019-05-10 北京明朝万达科技股份有限公司 一种基于可配置化的热点数据缓存处理方法及设备
CN110177102A (zh) * 2019-05-28 2019-08-27 深圳市网心科技有限公司 基于边缘节点的防攻击方法、电子设备、系统及介质
CN110399104A (zh) * 2019-07-23 2019-11-01 网易(杭州)网络有限公司 数据存储方法、数据存储装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN111026748A (zh) 2020-04-17

Similar Documents

Publication Publication Date Title
CN105677250B (zh) 对象存储系统中的对象数据的更新方法和更新装置
KR101318985B1 (ko) 클라우드 컴퓨팅에서의 콘텐츠 보안 장치 및 방법
US10649959B2 (en) Write-optimized nested trees
CN105354315B (zh) 分布式数据库中子表分裂的方法、子表节点和系统
CN111881133A (zh) 存储桶管理方法、装置、计算机设备及可读存储介质
CN107704573A (zh) 一种与业务耦合的智能缓存方法
CN111026748B (zh) 网络访问频次管控的数据压缩方法、装置及系统
CN105608197A (zh) 一种高并发下Memcache数据的获取方法及系统
EP2224381A1 (en) Method and apparatus for case-based service composition
CN106815232A (zh) 目录管理方法、装置及系统
CN115907949A (zh) 银行交易数据处理方法及装置
CN110851433B (zh) 键值存储系统键优化方法、存储介质、电子设备及系统
CN113254470B (zh) 一种数据更改方法、装置、计算机设备及存储介质
CN116301656A (zh) 基于日志结构合并树的数据存储方法、系统及设备
CN107422991B (zh) 一种存储策略管理系统
CN107181715B (zh) 一种业务校验方法和装置
CN110990640B (zh) 一种数据判定方法、装置、设备及计算机可读存储介质
CN114238390A (zh) 数据仓库优化方法、装置、设备及存储介质
CN109976896B (zh) 业务排重处理方法和装置
CN110222105B (zh) 数据汇总处理方法及装置
CN114265560A (zh) 一种亿级合规指标业务数据的自规范存储系统
CN116132528B (zh) 一种航班管理消息的推送方法、装置及电子设备
CN104778406A (zh) 一种基于文件指纹对恶意代码统一命名的方法及其系统
CN110334098A (zh) 一种基于脚本的数据库合并方法及系统
CN111694559B (zh) Gc程序语言中哈希表的实现方法及装置

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
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data compression method, device and system for network access frequency control

Effective date of registration: 20210308

Granted publication date: 20201117

Pledgee: Shanghai Pudong Development Bank Limited by Share Ltd. Guangzhou branch

Pledgor: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Registration number: Y2021440000062

PE01 Entry into force of the registration of the contract for pledge of patent right
CP02 Change in the address of a patent holder

Address after: 510000 room 23bd, No. 109, TIYU West Road, Tianhe District, Guangzhou City, Guangdong Province

Patentee after: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Address before: 32B, no.103b, TianLiHe Road, Guangzhou, 510000

Patentee before: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20220525

Granted publication date: 20201117

Pledgee: Shanghai Pudong Development Bank Limited by Share Ltd. Guangzhou branch

Pledgor: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Registration number: Y2021440000062

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data compression methods, devices, and systems for controlling network access frequency

Effective date of registration: 20230331

Granted publication date: 20201117

Pledgee: Shanghai Pudong Development Bank Limited by Share Ltd. Guangzhou branch

Pledgor: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Registration number: Y2023980037128

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20201117

Pledgee: Shanghai Pudong Development Bank Limited by Share Ltd. Guangzhou branch

Pledgor: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Registration number: Y2023980037128

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Data compression methods, devices, and systems for controlling network access frequency

Granted publication date: 20201117

Pledgee: Shanghai Pudong Development Bank Limited by Share Ltd. Guangzhou branch

Pledgor: GUANGZHOU XUANWU WIRELESS TECHNOLOGY Co.,Ltd.

Registration number: Y2024980017460