CN105554134A - 信息同步方法及装置 - Google Patents

信息同步方法及装置 Download PDF

Info

Publication number
CN105554134A
CN105554134A CN201510981802.XA CN201510981802A CN105554134A CN 105554134 A CN105554134 A CN 105554134A CN 201510981802 A CN201510981802 A CN 201510981802A CN 105554134 A CN105554134 A CN 105554134A
Authority
CN
China
Prior art keywords
information
processing server
comment
user totem
totem 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
CN201510981802.XA
Other languages
English (en)
Other versions
CN105554134B (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.)
Beijing Xiaomi Technology Co Ltd
Xiaomi Inc
Original Assignee
Xiaomi Inc
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 Xiaomi Inc filed Critical Xiaomi Inc
Priority to CN201510981802.XA priority Critical patent/CN105554134B/zh
Publication of CN105554134A publication Critical patent/CN105554134A/zh
Application granted granted Critical
Publication of CN105554134B publication Critical patent/CN105554134B/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/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开是关于一种信息同步方法及装置,其中,方法包括:当第一处理服务器接收到用户评论信息时,确定用户评论信息对应的用户标识信息;根据用户标识信息,修改第一处理服务器中用户标识信息对应的评论次数;生成包括用户标识信息的心跳包;确定第一处理服务器所处的处理服务器集群中的第二处理服务器;广播心跳包至第二处理服务器,以供第二处理服务器根据心跳包修改用户标识信息对应的评论次数。通过该技术方案,服务器集群之间通过心跳包来统一通知集群中的所有服务器,实时同步用户评论信息,这样,可以节约请求下行资源,服务器代理内部维护评论阈值,不需要请求第三方数据库或请求第三方存储,使得服务结构更简单,实时性更强,性能更好。

Description

信息同步方法及装置
技术领域
本公开涉及信息同步技术领域,尤其涉及一种信息同步方法及装置。
背景技术
相关技术中,一般是在后台启动一个服务,用来提供用户评论信息存储服务,读取服务,监控服务等,用户评论信息直接存入数据库(如mysql),用户的每次访问都需要实时操作数据库,包括记录用户访问次数,用户评论内容等。
服务器一般会以集群的形式进行部署,一般是4台,8台,或者更多,即有多台机器在同时处理用户的评论。
这时,在监控对用户评论的评论次数,防止恶意刷屏攻击等时,就会存在问题,一般会规定单个用户某段时间的评论次数,或者某一IP总的访问次数,即阈值。这时多台服务之间就需要做到数据的实时同步,需要准确高效地拿到用户的评论总数,或者某一IP的访问总数。
如果是把这些数据都实时存进数据库,即有一个用户来访问了,就去修改数据库数据,将访问量加1,这样随着访问量的增大,会造成对数据的频繁写操作;
同时,服务器还需要去经常读数据库,看是否已经到了设置的访问阈值,这样都会增大服务器的压力,增大开销,影响到数据库的性能。
发明内容
本公开实施例提供一种信息同步方法及装置,包括如下技术方案:
根据本公开实施例的第一方面,提供一种信息同步方法,所述方法包括:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
在一个实施例中,所述根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数,包括:
根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
在一个实施例中,所述方法还包括:
根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
在一个实施例中,所述根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法,包括:
将所述用户标识信息对应的评论次数与第一预设次数进行对比;
在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
在一个实施例中,所述方法还包括:
在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
将所述用户标识信息加入黑名单队列;
将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述将所述黑名单队列存储至所述处理服务器集群对应的数据库中,包括:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述方法还包括:
判断所述用户标识信息是否在所述黑名单队列中;
当所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
在一个实施例中,所述方法还包括:
根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
在一个实施例中,所述方法还包括:
接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
根据所述心跳包,将所述用户标识信息对应的评论次数加1。
在一个实施例中,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
根据本公开实施例的第二方面,提供一种信息同步装置,所述装置包括:
确定模块,用于当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
第一修改模块,用于根据所述确定模块确定的所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成模块,用于生成包括所述用户标识信息的心跳包;
确定模块,用于确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播模块,用于广播所述生成模块生成的所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
在一个实施例中,所述第一修改模块包括:
次数修改子模块,用于根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
在一个实施例中,所述装置还包括:
第一判断模块,用于根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
第一存储模块,用于在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
在一个实施例中,所述第一判断模块包括:
对比子模块,用于将所述用户标识信息对应的评论次数与第一预设次数进行对比;
第一判断子模块,用于在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
第二判断子模块,用于在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
在一个实施例中,所述装置还包括:
记录模块,用于在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
第一处理模块,用于将所述用户标识信息加入黑名单队列;
第二存储模块,用于将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述第二存储模块用于:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述装置还包括:
第二判断模块,用于判断所述用户标识信息是否在所述黑名单队列中;
禁止存储模块,用于当所述第二判断模块判断所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
在一个实施例中,所述装置还包括:
第二修改模块,用于根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
控制模块,用于在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
在一个实施例中,所述装置还包括:
接收模块,用于接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
第二处理模块,用于根据所述心跳包,将所述用户标识信息对应的评论次数加1。
在一个实施例中,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
根据本公开实施例的第三方面,提供一种信息同步装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
本公开的实施例提供的技术方案可以包括以下有益效果:
上述技术方案,服务器集群之间,通过心跳包来统一通知集群中的所有服务器,实时同步用户评论信息,这样,可以节约请求下行资源,服务器代理内部维护评论阈值,不需要请求第三方数据库或请求第三方存储,从而使得服务结构更简单,实时性更强,性能更好。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种信息同步方法的流程图。
图2是根据一示例性实施例示出的另一种信息同步方法的流程图。
图3是根据一示例性实施例示出的再一种信息同步方法的流程图。
图4是根据一示例性实施例示出的一种信息同步方法中步骤S301的流程图。
图5是根据一示例性实施例示出的又一种信息同步方法的流程图。
图6是根据一示例性实施例示出的又一种信息同步方法的流程图。
图7是根据一示例性实施例示出的又一种信息同步方法的流程图。
图8是根据一示例性实施例示出的又一种信息同步方法的流程图。
图9是根据一示例性实施例示出的又一种信息同步方法的流程图。
图10是根据一示例性实施例示出的一种信息同步装置的框图。
图11是根据一示例性实施例示出的信息同步装置中第一修改模块的框图。
图12是根据一示例性实施例示出的另一种信息同步装置的框图。
图13是根据一示例性实施例示出的信息同步装置中第一判断模块的框图。
图14是根据一示例性实施例示出的又一种信息同步装置的框图。
图15是根据一示例性实施例示出的又一种信息同步装置的框图。
图16是根据一示例性实施例示出的又一种信息同步装置的框图。
图17是根据一示例性实施例示出的又一种信息同步装置的框图。
图18是根据一示例性实施例示出的适用于信息同步装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供了一种信息同步方法,该方法可用于服务器中,如图1所示,该方法包括步骤S101-S105:
在步骤S101中,当第一处理服务器接收到用户评论信息时,确定用户评论信息对应的用户标识信息;其中,用户评论信息对应的用户标识信息可以是用户评论时,登录账号的账号标识,也可以是用户所使用终端的终端标识。
在步骤S102中,根据用户标识信息,修改第一处理服务器中用户标识信息对应的评论次数;每次收到用户标识信息,都会根据该用户标识信息修改第一处理服务器中用户标识信息对应的评论次数。
在步骤S103中,生成包括用户标识信息的心跳包;
在步骤S104中,确定第一处理服务器所处的处理服务器集群中的第二处理服务器;处理服务器集群中包括多个处理服务器,如第一处理服务器和除第二处理服务器之外的第二处理服务器。
在步骤S105中,广播心跳包至第二处理服务器,以供第二处理服务器根据心跳包修改用户标识信息对应的评论次数。
在该实施例中,第一处理服务器根据接收到的用户评论信息修改其记录的用户评论信息对应的用户标识信息的评论次数,并根据用户标识信息生成心跳包,广播心跳包至处理服务器集群中的第二处理服务器,第二处理服务器可以根据该心跳包修改用户标识信息对应的评论次数,从而实现处理服务器集群中的数据同步,这样,服务器集群之间通过心跳包来统一通知集群中的所有服务器,实时同步用户评论信息,可以节约请求下行资源,并且不需要请求第三方数据库或请求第三方存储,从而使得服务结构更简单,实时性更强,性能更好。
如图2所示,在一个实施例中,上述步骤S102包括步骤S201:
在步骤S201中,根据用户标识信息,将第一处理服务器中用户标识信息对应的评论次数加1。
在该实施例中,每次接收到用户评论信息,都会将用户评论信息对应的用户标识信息的评论次数加1,用以说明该用户的评论又多个一次,这样,数据只会不断增加,线程安全,处理服务器集群中,所有服务器的数值都能保证实时统一。
如图3所示,在一个实施例中,上述方法还包括步骤S301-S302:
在步骤S301中,根据用户标识信息对应的评论次数,判断用户评论信息是否合法;
在步骤S302中,在用户评论信息合法时,将用户评论信息存储至存储服务器集群中。
在该实施例中,在用户评论信息合法时,将用户评论信息存储至存储服务器集群中,不需要请求第三方数据库存储,从而节约了请求下行资源。
如图4所示,在一个实施例中,上述步骤S301包括步骤S401-S402:
在步骤S401中,将用户标识信息对应的评论次数与第一预设次数进行对比;
在步骤S402中,在用户标识信息对应的评论次数小于第一预设次数时,判断用户评论信息合法;
在步骤S403中,在用户标识信息对应的评论次数大于或等于第一预设次数时,判断用户评论信息不合法。
在该实施例中,将用户标识信息对应的评论次数与第一预设次数进行对比,在用户标识信息对应的评论次数大于或等于第一预设次数时,说明用户的评论次数过多,该用户评论信息不合法,反之,则说明用户评论信息合法。
如图5所示,在一个实施例中,上述方法还包括步骤S501-S503:
在步骤S501中,在用户评论信息不合法时,记录用户评论信息对应的用户标识信息;
在步骤S502中,将用户标识信息加入黑名单队列;
在步骤S503中,将黑名单队列存储至处理服务器集群对应的数据库中。
在该实施例中,在用户评论信息不合法时,记录用户评论信息对应的用户标识信息,并将该用户标识信息加入黑名单队列中,当再次接收到加入黑名单队列中的用户标识信息时,则不处理该用户标识信息对应的用户评论信息,不对其进行计数操作,并将黑名单队列存储至处理服务器集群对应的数据库中。
如图6所示,在一个实施例中,上述步骤S503包括步骤S601:
在步骤S601中,在第一处理服务器处于空闲状态时,将黑名单队列存储至处理服务器集群对应的数据库中。
在该实施例中,在第一处理服务器处于空闲状态时,将黑名单队列存储至处理服务器集群对应的数据库中,这样,在服务器空闲时,完成对服务器代理上维护的数据记录到数据库,而不是只能线上实时入库,节约了线上访问压力。
如图7所示,在一个实施例中,上述方法还包括步骤S701-S702:
在步骤S701中,判断用户标识信息是否在黑名单队列中;
在步骤S702中,当用户标识信息在黑名单队列中时,禁止存储用户评论信息。
在该实施例中,当用户标识信息在黑名单队列中时,禁止存储用户评论信息,这样,可以防止恶意刷屏攻击。
如图8所示,在一个实施例中,上述方法还包括步骤S801-S802:
在步骤S801中,根据用户标识信息,修改第一处理服务器中所有用户标识信息对应的总评论次数;
在步骤S802中,在总评论次数大于或等于第二预设次数时,控制第一处理服务器停止广播心跳包。
在该实施例中,还可以监控第一处理服务器中所有用户标识信息对应的总评论次数,在总评论次数大于或等于第二预设次数时,第一处理服务器停止广播心跳包,从而不再记录用户评论次数。
如图9所示,在一个实施例中,上述方法还包括步骤S901-S902:
在步骤S901中,接收第二处理服务器广播的心跳包,其中,心跳包中包括用户标识信息;
在步骤S902中,根据心跳包,将用户标识信息对应的评论次数加1。
在该实施例中,第一处理服务器可以接收第二处理服务器广播的心跳包,并根据心跳包中包括的用户标识信息,将用户标识信息对应的评论次数加1,这样,可以实现处理服务器集群中,各处理服务器中的数据可以实时同步。
在一个实施例中,处理服务器集群包括nginx服务器集群,存储服务器集群包括redis服务器集群。
在该实施例中,处理服务器集群包括nginx服务器集群,存储服务器集群包括redis服务器集群,在nginx中配置redis插件webdis,实现通过nginx直接对redis进行操作,在redis中存储用户评论的所有信息;通过nginx中的lua插件,实现通过webdis对用户评论信息进行逻辑操作,包括读取,写入,计数,监控等功能,这样,采用nginx+lua+redis这种搭配使用方式,能在现有的用到了nginx的同时,灵活使用了lua对数据处理及分析的能力,结合redis的数据结构的优势,通过灵活的消息通知机制,来改进了这种在线展示用户评论的技术方案,使得服务结构更简单,实时性更强,性能更好。
下述为本公开装置实施例,可以用于执行本公开方法实施例。
图10是根据一示例性实施例示出的一种信息同步装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部。如图10所示,该信息同步装置包括:
确定模块101,被配置为当第一处理服务器接收到用户评论信息时,确定用户评论信息对应的用户标识信息;
第一修改模块102,被配置为根据确定模块101确定的用户标识信息,修改第一处理服务器中用户标识信息对应的评论次数;
生成模块103,被配置为生成包括用户标识信息的心跳包;
确定模块104,被配置为确定第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播模块105,被配置为广播生成模块103生成的心跳包至第二处理服务器,以供第二处理服务器根据心跳包修改用户标识信息对应的评论次数。
在该实施例中,第一处理服务器根据接收到的用户评论信息修改其记录的用户评论信息对应的用户标识信息的评论次数,并根据用户标识信息生成心跳包,广播心跳包至处理服务器集群中的第二处理服务器,第二处理服务器可以根据该心跳包修改用户标识信息对应的评论次数,从而实现处理服务器集群中的数据同步,这样,服务器集群之间通过心跳包来统一通知集群中的所有服务器,实时同步用户评论信息,可以节约请求下行资源,并且不需要请求第三方数据库或请求第三方存储,从而使得服务结构更简单,实时性更强,性能更好。
如图11所示,在一个实施例中,第一修改模块102包括:
次数修改子模块111,被配置为根据用户标识信息,将第一处理服务器中用户标识信息对应的评论次数加1。
在该实施例中,每次接收到用户评论信息,都会将用户评论信息对应的用户标识信息的评论次数加1,用以说明该用户的评论又多个一次,这样,数据只会不断增加,线程安全,处理服务器集群中,所有服务器的数值都能保证实时统一。
如图12所示,在一个实施例中,上述装置还包括:
第一判断模块121,被配置为根据用户标识信息对应的评论次数,判断用户评论信息是否合法;
第一存储模块122,被配置为在用户评论信息合法时,将用户评论信息存储至存储服务器集群中。
在该实施例中,在用户评论信息合法时,将用户评论信息存储至存储服务器集群中,不需要请求第三方数据库存储,从而节约了请求下行资源。
如图13所示,在一个实施例中,第一判断模块121包括:
对比子模块131,被配置为将用户标识信息对应的评论次数与第一预设次数进行对比;
第一判断子模块132,被配置为在用户标识信息对应的评论次数小于第一预设次数时,判断用户评论信息合法;
第二判断子模块133,被配置为在用户标识信息对应的评论次数大于或等于第一预设次数时,判断用户评论信息不合法。
在该实施例中,在用户评论信息合法时,将用户评论信息存储至存储服务器集群中,不需要请求第三方数据库存储,从而节约了请求下行资源。
如图14所示,在一个实施例中,上述装置还包括:
记录模块141,被配置为在用户评论信息不合法时,记录用户评论信息对应的用户标识信息;
第一处理模块142,被配置为将用户标识信息加入黑名单队列;
第二存储模块143,被配置为将黑名单队列存储至处理服务器集群对应的数据库中。
在该实施例中,在用户评论信息不合法时,记录用户评论信息对应的用户标识信息,并将该用户标识信息加入黑名单队列中,当再次接收到加入黑名单队列中的用户标识信息时,则不处理该用户标识信息对应的用户评论信息,不对其进行计数操作,并将黑名单队列存储至处理服务器集群对应的数据库中。
在一个实施例中,第二存储模块用于:
在第一处理服务器处于空闲状态时,将黑名单队列存储至处理服务器集群对应的数据库中。
在该实施例中,在第一处理服务器处于空闲状态时,将黑名单队列存储至处理服务器集群对应的数据库中,这样,在服务器空闲时,完成对服务器代理上维护的数据记录到数据库,而不是只能线上实时入库,节约了线上访问压力。
如图15所示,在一个实施例中,上述装置还包括:
第二判断模块151,被配置为判断用户标识信息是否在黑名单队列中;
禁止存储模块152,被配置为当第二判断模块151判断用户标识信息在黑名单队列中时,禁止存储用户评论信息。
在该实施例中,当用户标识信息在黑名单队列中时,禁止存储用户评论信息,这样,可以防止恶意刷屏攻击。
如图16所示,在一个实施例中,上述装置还包括:
第二修改模块161,被配置为根据用户标识信息,修改第一处理服务器中所有用户标识信息对应的总评论次数;
控制模块162,被配置为在总评论次数大于或等于第二预设次数时,控制第一处理服务器停止广播心跳包。
在该实施例中,还可以监控第一处理服务器中所有用户标识信息对应的总评论次数,在总评论次数大于或等于第二预设次数时,第一处理服务器停止广播心跳包,从而不再记录用户评论次数。
如图17所示,在一个实施例中,上述装置还包括:
接收模块171,被配置为接收第二处理服务器广播的心跳包,其中,心跳包中包括用户标识信息;
第二处理模块172,被配置为根据心跳包,将用户标识信息对应的评论次数加1。
在该实施例中,第一处理服务器可以接收第二处理服务器广播的心跳包,并根据心跳包中包括的用户标识信息,将用户标识信息对应的评论次数加1,这样,可以实现处理服务器集群中,各处理服务器中的数据可以实时同步。
在一个实施例中,处理服务器集群包括nginx服务器集群,存储服务器集群包括redis服务器集群。
在该实施例中,处理服务器集群包括nginx服务器集群,存储服务器集群包括redis服务器集群,在nginx中配置redis插件webdis,实现通过nginx直接对redis进行操作,在redis中存储用户评论的所有信息;通过nginx中的lua插件,实现通过webdis对用户评论信息进行逻辑操作,包括读取,写入,计数,监控等功能,这样,采用nginx+lua+redis这种搭配使用方式,能在现有的用到了nginx的同时,灵活使用了lua对数据处理及分析的能力,结合redis的数据结构的优势,通过灵活的消息通知机制,来改进了这种在线展示用户评论的技术方案,使得服务结构更简单,实时性更强,性能更好。
根据本公开实施例的第三方面,提供一种信息同步装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
上述处理器还可被配置为:
所述根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数,包括:
根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
上述处理器还可被配置为:
根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
上述处理器还可被配置为:
所述根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法,包括:
将所述用户标识信息对应的评论次数与第一预设次数进行对比;
在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
上述处理器还可被配置为:
在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
将所述用户标识信息加入黑名单队列;
将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
上述处理器还可被配置为:
所述将所述黑名单队列存储至所述处理服务器集群对应的数据库中,包括:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
上述处理器还可被配置为:
判断所述用户标识信息是否在所述黑名单队列中;
当所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
上述处理器还可被配置为:
根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
上述处理器还可被配置为:
接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
根据所述心跳包,将所述用户标识信息对应的评论次数加1。
在一个实施例中,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
图18是根据一示例性实施例示出的一种用于信息同步装置的框图。例如,装置1800可以被提供为一服务器。装置1800包括处理组件1822,其进一步包括一个或多个处理器,以及由存储器1832所代表的存储器资源,用于存储可由处理组件1822的执行的指令,例如应用程序。存储器1832中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1822被配置为执行指令,以执行上述方法。
装置1800还可以包括一个电源组件1826被配置为执行装置1800的电源管理,一个有线或无线网络接口1850被配置为将装置1800连接到网络,和一个输入输出(I/O)接口1858。装置1800可以操作基于存储在存储器1832的操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置1800的处理器执行时,使得装置1800能够执行上述信息同步方法,所述方法包括:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
在一个实施例中,所述根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数,包括:
根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
在一个实施例中,所述方法还包括:
根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
在一个实施例中,所述根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法,包括:
将所述用户标识信息对应的评论次数与第一预设次数进行对比;
在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
在一个实施例中,所述方法还包括:
在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
将所述用户标识信息加入黑名单队列;
将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述将所述黑名单队列存储至所述处理服务器集群对应的数据库中,包括:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
在一个实施例中,所述方法还包括:
判断所述用户标识信息是否在所述黑名单队列中;
当所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
在一个实施例中,所述方法还包括:
根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
在一个实施例中,所述方法还包括:
接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
根据所述心跳包,将所述用户标识信息对应的评论次数加1。
在一个实施例中,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (21)

1.一种信息同步方法,其特征在于,所述方法包括:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
2.根据权利要求1所述的方法,其特征在于,所述根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数,包括:
根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
4.根据权利要求3所述的方法,其特征在于,所述根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法,包括:
将所述用户标识信息对应的评论次数与第一预设次数进行对比;
在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
将所述用户标识信息加入黑名单队列;
将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
6.根据权利要求5所述的方法,其特征在于,所述将所述黑名单队列存储至所述处理服务器集群对应的数据库中,包括:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
判断所述用户标识信息是否在所述黑名单队列中;
当所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
根据所述心跳包,将所述用户标识信息对应的评论次数加1。
10.根据权利要求1至9中任一项所述的方法,其特征在于,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
11.一种信息同步装置,其特征在于,所述装置包括:
确定模块,用于当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
第一修改模块,用于根据所述确定模块确定的所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成模块,用于生成包括所述用户标识信息的心跳包;
确定模块,用于确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播模块,用于广播所述生成模块生成的所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
12.根据权利要求11所述的装置,其特征在于,所述第一修改模块包括:
次数修改子模块,用于根据所述用户标识信息,将所述第一处理服务器中所述用户标识信息对应的评论次数加1。
13.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第一判断模块,用于根据所述用户标识信息对应的评论次数,判断所述用户评论信息是否合法;
第一存储模块,用于在所述用户评论信息合法时,将所述用户评论信息存储至存储服务器集群中。
14.根据权利要求13所述的装置,其特征在于,所述第一判断模块包括:
对比子模块,用于将所述用户标识信息对应的评论次数与第一预设次数进行对比;
第一判断子模块,用于在所述用户标识信息对应的评论次数小于所述第一预设次数时,判断所述用户评论信息合法;
第二判断子模块,用于在所述用户标识信息对应的评论次数大于或等于所述第一预设次数时,判断所述用户评论信息不合法。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
记录模块,用于在所述用户评论信息不合法时,记录所述用户评论信息对应的所述用户标识信息;
第一处理模块,用于将所述用户标识信息加入黑名单队列;
第二存储模块,用于将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
16.根据权利要求15所述的装置,其特征在于,所述第二存储模块用于:
在所述第一处理服务器处于空闲状态时,将所述黑名单队列存储至所述处理服务器集群对应的数据库中。
17.根据权利要求15所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于判断所述用户标识信息是否在所述黑名单队列中;
禁止存储模块,用于当所述第二判断模块判断所述用户标识信息在所述黑名单队列中时,禁止存储所述用户评论信息。
18.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第二修改模块,用于根据所述用户标识信息,修改所述第一处理服务器中所有用户标识信息对应的总评论次数;
控制模块,用于在所述总评论次数大于或等于第二预设次数时,控制所述第一处理服务器停止广播所述心跳包。
19.根据权利要求11所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述第二处理服务器广播的心跳包,其中,所述心跳包中包括用户标识信息;
第二处理模块,用于根据所述心跳包,将所述用户标识信息对应的评论次数加1。
20.根据权利要求11至19中任一项所述的装置,其特征在于,所述处理服务器集群包括nginx服务器集群,所述存储服务器集群包括redis服务器集群。
21.一种信息同步装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
当第一处理服务器接收到用户评论信息时,确定所述用户评论信息对应的用户标识信息;
根据所述用户标识信息,修改所述第一处理服务器中所述用户标识信息对应的评论次数;
生成包括所述用户标识信息的心跳包;
确定所述第一处理服务器所处的处理服务器集群中的第二处理服务器;
广播所述心跳包至所述第二处理服务器,以供所述第二处理服务器根据所述心跳包修改所述用户标识信息对应的评论次数。
CN201510981802.XA 2015-12-23 2015-12-23 信息同步方法及装置 Active CN105554134B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510981802.XA CN105554134B (zh) 2015-12-23 2015-12-23 信息同步方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510981802.XA CN105554134B (zh) 2015-12-23 2015-12-23 信息同步方法及装置

Publications (2)

Publication Number Publication Date
CN105554134A true CN105554134A (zh) 2016-05-04
CN105554134B CN105554134B (zh) 2018-12-18

Family

ID=55833066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510981802.XA Active CN105554134B (zh) 2015-12-23 2015-12-23 信息同步方法及装置

Country Status (1)

Country Link
CN (1) CN105554134B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110392104A (zh) * 2019-07-18 2019-10-29 腾讯科技(深圳)有限公司 数据同步方法、系统、服务器及存储介质
CN110995781A (zh) * 2019-11-01 2020-04-10 腾讯科技(深圳)有限公司 点赞信息处理方法、装置及系统
CN115484221A (zh) * 2022-09-15 2022-12-16 重庆长安汽车股份有限公司 中台评论系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333029A (zh) * 2011-06-23 2012-01-25 北京新媒传信科技有限公司 一种服务器集群系统中的路由方法
CN104077291A (zh) * 2013-03-27 2014-10-01 腾讯科技(深圳)有限公司 用户生成内容访问次数的发布方法、客户端及系统
CN104753994A (zh) * 2013-12-27 2015-07-01 杭州海康威视系统技术有限公司 基于集群服务器系统的数据同步方法及其装置
CN104780190A (zh) * 2014-01-13 2015-07-15 北京兆维电子(集团)有限责任公司 数据读写控制方法及装置
JP2015207992A (ja) * 2014-04-10 2015-11-19 ソニー株式会社 送信装置、送信方法、受信装置および受信方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333029A (zh) * 2011-06-23 2012-01-25 北京新媒传信科技有限公司 一种服务器集群系统中的路由方法
CN104077291A (zh) * 2013-03-27 2014-10-01 腾讯科技(深圳)有限公司 用户生成内容访问次数的发布方法、客户端及系统
CN104753994A (zh) * 2013-12-27 2015-07-01 杭州海康威视系统技术有限公司 基于集群服务器系统的数据同步方法及其装置
CN104780190A (zh) * 2014-01-13 2015-07-15 北京兆维电子(集团)有限责任公司 数据读写控制方法及装置
JP2015207992A (ja) * 2014-04-10 2015-11-19 ソニー株式会社 送信装置、送信方法、受信装置および受信方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110392104A (zh) * 2019-07-18 2019-10-29 腾讯科技(深圳)有限公司 数据同步方法、系统、服务器及存储介质
CN110392104B (zh) * 2019-07-18 2022-06-10 腾讯科技(深圳)有限公司 数据同步方法、系统、服务器及存储介质
CN110995781A (zh) * 2019-11-01 2020-04-10 腾讯科技(深圳)有限公司 点赞信息处理方法、装置及系统
CN115484221A (zh) * 2022-09-15 2022-12-16 重庆长安汽车股份有限公司 中台评论系统

Also Published As

Publication number Publication date
CN105554134B (zh) 2018-12-18

Similar Documents

Publication Publication Date Title
CN111770002B (zh) 测试数据转发控制方法、装置、可读存储介质和电子设备
CN105162879B (zh) 实现多机房数据一致性的方法、装置及系统
CN108845877B (zh) 管理内存的方法、装置和系统
CN112492372B (zh) 评论消息的显示方法、装置、电子设备、系统及存储介质
EP3331213A1 (en) Access to data on a remote device
CN111694644A (zh) 基于机器人操作系统的消息处理方法、装置及计算机设备
CN110740145A (zh) 消息消费方法、装置、存储介质及电子设备
CN110781149A (zh) 管理直播间信息的方法、装置、设备及存储介质
CN107040576A (zh) 信息推送方法及装置、通讯系统
CN105554134A (zh) 信息同步方法及装置
CN111193633A (zh) 异常网络连接的检测方法及装置
CN107979629B (zh) 分布式缓存系统及其数据缓存方法和装置
CN109788251B (zh) 视频处理方法、装置及存储介质
CN110719526A (zh) 视频播放方法及装置
CN112838980B (zh) 一种消息处理方法、系统、装置、电子设备及存储介质
KR101845195B1 (ko) M2m 시스템에서 다중 리소스 구독 연관 방법
CN108093077B (zh) 异常处理方法、装置以及服务器
CN103023704A (zh) 虚拟网络服务设备接入方法及系统
CN104363257A (zh) 一种用户界面数据刷新方法和设备
CN112363980A (zh) 一种分布式系统的数据处理方法及装置
CN111767558A (zh) 数据访问监控方法、装置及系统
CN109445966B (zh) 事件处理方法、装置、介质和计算设备
US20210382872A1 (en) Blockchain-based Data Storage Method, Related Device and Storage Medium
CN114402313A (zh) 标签更新方法、装置、电子设备及存储介质
CN109818851A (zh) 一种消息持久化方法、装置及电子设备

Legal Events

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