CN104618410A - 资源推送方法和装置 - Google Patents

资源推送方法和装置 Download PDF

Info

Publication number
CN104618410A
CN104618410A CN201310538414.5A CN201310538414A CN104618410A CN 104618410 A CN104618410 A CN 104618410A CN 201310538414 A CN201310538414 A CN 201310538414A CN 104618410 A CN104618410 A CN 104618410A
Authority
CN
China
Prior art keywords
resource
subscription
subscriber
collection
server
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
CN201310538414.5A
Other languages
English (en)
Other versions
CN104618410B (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.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing 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 Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201310538414.5A priority Critical patent/CN104618410B/zh
Publication of CN104618410A publication Critical patent/CN104618410A/zh
Application granted granted Critical
Publication of CN104618410B publication Critical patent/CN104618410B/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/0273Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP]
    • H04L41/0293Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP] for accessing web services by means of a binding identification of the management service or element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种资源推送方法和装置。其中,该方法包括:获取日志类型对应的订阅ID集和资源ID集,其中,订阅ID集包括用于标识多个订阅者的多个订阅ID,资源ID集包括用于标识多个不同的资源的多个资源ID,其中,多个不同的资源为多个订阅者各自订阅的与日志类型相关的资源的并集;从资源服务器获取资源ID集指示的全部资源;从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源,并根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者。本发明解决了分散的资源订阅和推送方式所导致的资源服务器压力过大的技术问题。

Description

资源推送方法和装置
技术领域
本发明涉及互联网应用领域,具体而言,涉及一种资源推送方法和装置。
背景技术
由于互联网应用的复杂性,运营商通常需要在运营的产品之外构建针对安全运营的管理***,以便对运营中出现的用户恶意行为等运营安全的威胁因素进行分析和打击。
传统的安全打击方式是采用日志接收机接收生产***的中转日志,并对日志消息进行解析,比如解析出日志消息内容里的URL或者由用户输入的账号信息等,并将解析出的内容传递给用于进行分析和打击的策略进程。然而在日志携带的信息内容之外,策略进程通常还需要其他的一些资源,比如用户行为的累计数据,而这些资源是策略进行分析和打击的重要依据。
传统的安全打击方式中,这些资源通常是与策略绑定的,也就是说,每一个策略所需的资源通常是在策略的本地进行累计统计,各个策略生产并维护自身所需的资源,这可能造成各个策略的资源生产的重复,并导致整个安全管理***的维护成本偏高,且资源交互性差。
为解决这一问题,可行的方案之一是对资源进行统一管理,而各个策略分别对各自所需的资源进行订阅,并在接收到日志消息时将各个策略所需的资源分别推送给各个策略。为实现该资源订阅推送机制,惯用的方案所采用的是如图1所示的相对分散的资源订阅和推送方式。其中,如图1所示,针对每一个策略进程均设计有一个独立的资源订阅推送机制,用于在从日志接收机接收到日志消息后通过该独立的资源订阅推送机制来获取该策略进程所需的资源,并将获取到的资源推送给策略进程。这种方式很可能会造成资源的重复请求和获取,从而对作为被请求方的资源服务器造成较大的负荷。
针对这一问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种资源推送方法和装置,以至少解决分散的资源订阅和推送方式所导致的资源服务器压力过大的技术问题。
根据本发明实施例的一个方面,提供了一种资源推送方法,用于根据接收到的日志消息分别向多个订阅者推送上述多个订阅者各自订阅的资源,其中,上述多个订阅者预设为与上述日志消息的日志类型关联,其中,该方法包括:获取上述日志类型对应的订阅ID集和资源ID集,其中,上述订阅ID集包括用于标识上述多个订阅者的多个订阅ID,上述资源ID集包括用于标识多个不同的资源的多个资源ID,其中,上述多个不同的资源为上述多个订阅者各自订阅的与上述日志类型相关的资源的并集;从资源服务器获取上述资源ID集指示的全部资源;从获取的上述全部资源中查找出上述多个订阅者中的每一个所订阅的资源,并根据上述订阅ID集将查找出的上述多个订阅者中的每一个所订阅的资源发送给上述多个订阅者中对应的订阅者。
根据本发明实施例的另一方面,还提供了一种资源推送装置,用于根据接收到的日志消息分别向多个订阅者推送上述多个订阅者各自订阅的资源,其中,上述多个订阅者预设为与上述日志消息的日志类型关联,其中,该装置包括:第一获取单元,用于获取上述日志类型对应的订阅ID集和资源ID集,其中,上述订阅ID集包括用于标识上述多个订阅者的多个订阅ID,上述资源ID集包括用于标识多个不同的资源的多个资源ID,其中,上述多个不同的资源为上述多个订阅者各自订阅的与上述日志类型相关的资源的并集;第二获取单元,用于从资源服务器获取上述资源ID集指示的全部资源;查找单元,用于从获取的上述全部资源中查找出上述多个订阅者中的每一个所订阅的资源;发送单元,用于根据上述订阅ID集将查找出的上述多个订阅者中的每一个所订阅的资源发送给上述多个订阅者中对应的订阅者。
在本发明实施例中,采用了对多个订阅者所需的资源进行集中请求与获取、再将获取的资源向该多个订阅者分发的方式,达到了同一资源仅需进行一次请求与获取的目的,从而降低了资源服务器的处理压力,解决了分散的资源订阅和推送方式所导致的资源服务器压力过大的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据现有技术的一种资源推送方法的示意图;
图2是根据本发明实施例的一种可选的资源推送方法的示意图;
图3是根据本发明实施例的另一种可选的资源推送方法的示意图;
图4是根据本发明实施例的又一种可选的资源推送方法的示意图;
图5是根据本发明实施例的又一种可选的资源推送方法的示意图;
图6是根据本发明实施例的又一种可选的资源推送方法的示意图;
图7是根据本发明实施例的又一种可选的资源推送方法的示意图;
图8是根据本发明实施例的又一种可选的资源推送方法的示意图;
图9是根据本发明实施例的又一种可选的资源推送方法的示意图;
图10是根据本发明实施例的又一种可选的资源推送方法的示意图;
图11是根据本发明实施例的又一种可选的资源推送方法的示意图;
图12是根据本发明实施例的又一种可选的资源推送方法的示意图;
图13是根据本发明实施例的一种可选的资源推送装置的示意图;
图14是根据本发明实施例的另一种可选的资源推送装置的示意图;
图15是根据本发明实施例的又一种可选的资源推送装置的示意图;
图16是根据本发明实施例的又一种可选的资源推送装置的示意图;
图17是根据本发明实施例的又一种可选的资源推送装置的示意图;
图18是根据本发明实施例的又一种可选的资源推送装置的示意图;
图19是根据本发明实施例的又一种可选的资源推送装置的示意图;
图20是根据本发明实施例的又一种可选的资源推送装置的示意图;
图21是根据本发明实施例的又一种可选的资源推送装置的示意图;
图22是根据本发明实施例的又一种可选的资源推送装置的示意图;
图23是根据本发明实施例的又一种可选的资源推送装置的示意图;
图24是根据本发明实施例的一种可选的资源服务***的示意图;
图25是根据本发明实施例的一种可选的资源服务***的逻辑层的流程图;
图26是根据本发明实施例的一种可选的资源推送方法的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
应当明确的是,本发明技术方案所要解决的问题之一是提供一种方法,以实现资源向订阅该资源的订阅者的推送。其中,一般而言,对于基于日志消息进行相关策略分析的网络安全***来说,上述推送是响应于接收到的日志消息的,或者说,每接收到一个日志消息,则需要对预先设置为与该日志消息或者该日志消息所属的日志类型关联的一个或多个订阅者进行相关资源的推送,以便于订阅者根据推送过来的资源执行进一步的策略相关的处理操作。
在上述场景下,每一次推送过程中所需发送给订阅者的该相关资源表示与接收到的日志消息或者该日志消息所属的日志类型相关的资源,而该订阅者在接收到所订阅的资源后,即可以根据接收到的资源生成与日志类型相关的安全策略。例如,对于一款在线应用产品对应的策略分析***而言,若接收到属于用户登录记录这一日志类型的日志消息,则与该日志类型相关的安全策略之一可以表现为判断该用户登录的行为是否属于恶意行为,而与该日志类型其相关的资源可以是该用户在过去一个历史时期内的同属于用户登录记录这一日志类型的历史日志,也可以是该用户在该在线应用中的消费记录,还可以是由某一资源服务器所提供的某一特定的判断方法,也就是说,该资源可以是历史日志或日志数据,也可以是一个属性数据,还可以是一个临时数据或者说累计计数数据,比如在某一个历史时期内的用户行为统计、或者由上述判断方法产出的一个概率值等,甚至在本发明的一些实施例中,上述资源还可以是安全策略中的一个程序块或进程模块,进而在这些资源被推送给订阅者后,订阅者便可以根据这些资源生成一个完整的安全策略。
在另一方面,在本发明的一些实施例中,上述订阅者也可以表示根据推送的资源进行后续处理的策略进程,然而本发明对此不作任何限定,其还可以表示其他类型的资源接口,以响应于基于日志消息对该资源接口所预先订阅的资源的推送。其中,需要说明的是,在作为本发明的一种可行的实施环境的资源服务***中,可以用于处理多个不同的日志类型,其中,与每一日志类型相关联的订阅者可以有多个,而这些与同一日志类型关联的多个订阅者可以分别表示不同的安全策略,也即每一日志类型可以对应有多种不同的安全策略。
为实现上述的资源订阅推送机制,惯用的方案所采用的方式是如图1所示的相对分散的资源订阅和推送方式。其中,如图1所示,针对每一个策略进程均设计有一个独立的资源订阅推送机制,用于在从日志接收机接收到日志消息后通过该独立的资源订阅推送机制来获取该策略进程所需的资源,并将获取到的资源推送给策略进程。这种方式很可能会造成资源的重复请求和获取,从而对作为被请求方的资源服务器造成较大的负荷。
区别于惯用的方案,在本发明实施例中,采用了对多个订阅者所需的资源进行集中请求与获取、再将获取的资源向该多个订阅者分发的方式,达到了同一资源仅需进行一次请求与获取的目的,从而降低了资源服务器的处理压力,解决了分散的资源订阅和推送方式所导致的资源服务器压力过大的技术问题。
具体地,根据本发明实施例,提供了一种资源推送方法,用于根据接收到的日志消息分别向多个订阅者推送多个订阅者各自订阅的资源,其中,多个订阅者预设为与日志消息的日志类型关联,多个订阅者各自订阅的资源用于生成与日志类型相关的安全策略,其中,如图2所示,该方法包括:
S202:获取日志类型对应的订阅ID集和资源ID集,其中,订阅ID集包括用于标识多个订阅者的多个订阅ID,资源ID集包括用于标识多个不同的资源的多个资源ID,其中,多个不同的资源为多个订阅者各自订阅的与日志类型相关的资源的并集;
S204:从资源服务器获取资源ID集指示的全部资源;
S206:从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源,并根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者。
根据本发明实施例提供的资源推送方法,在步骤S202中,可以在用于实施本发明的处理设备的本地获取接收到的日志消息所属的日志类型所对应的订阅ID集和资源ID集,例如,在本发明实施例中,上述订阅ID集和资源ID集可以存储在一张查询表中,其中,该查询表的名称或某一属性与上述日志类型是对应的。
在本发明实施例中,订阅ID集可以包括用于标识多个订阅者的多个订阅ID,资源ID集可以包括用于标识多个不同的资源的多个资源ID,其中,多个不同的资源为多个订阅者各自订阅的与日志类型相关的资源的并集。
例如,在一个实施例中,共有订阅ID分别为001、002和003的三个订阅者针对某一日志类型预先进行了订阅,其中,基于该日志类型,第一订阅者所订阅的资源的资源ID为A和B,第二订阅者所订阅的资源的资源ID为B和C,第三订阅者所订阅的资源的资源ID为A和C,那么据此获取的订阅ID集为:[001,002,003],资源ID集为:[A,B,C],进而,可以在步骤S204中对资源ID集所指示的全部资源,也即资源ID分别为A、B和C的三个资源进行获取。
对于上述实施例,容易理解,资源ID集中的每一个资源分别从资源服务器获取了1次。然而对惯用方案而言,为实现上述的资源推送任务,则订阅ID为001的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为A和B的资源,订阅ID为002的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为B和C的资源,而订阅ID为003的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为A和C的资源,也即上述资源ID集中的每一个资源分别从资源服务器获取了2次。也就是说,在上述实施例中,通过本发明技术方案,资源服务器的处理压力降低了一半。
当然,这只是一种示例,用于对本发明技术方案的实施及其效果的实现进行阐述,并不意味着对本发明构成了任何限定,也不应将上述实施例中所达到的技术效果理解为本发明所必然达到的技术效果,进而对本发明所公开的内容造成曲解。
在本发明实施例中,步骤S202中所述的订阅ID集与资源ID集的获取方式可以有多种,其中,作为一种优选的方式,该订阅ID集与资源ID集可以维护在用于实施本发明的处理设备的本地,从而在一方面,可以利用推送进程对该订阅ID集与资源ID集的读取和预加载,而避免了在每接收到一条日志消息后针对该订阅ID集与资源ID集的临时处理,在另一方面,由于将该订阅ID集与资源ID集的获取方法对应的硬编码从本发明实施例中的资源推送方法中移除,这种实施方式有利于对该订阅ID集与资源ID集的维护和更新。
更具体地,上述对于订阅ID集合资源ID集的维护可以通过以下方式来实现。其中,可选地,如图3所示,在步骤S202之前,上述资源推送方法还可以包括:
S302:获取与任一订阅者对应的订阅单,其中,订阅单包括任一订阅者的订阅ID以及任一订阅者所订阅的每一资源的资源ID;
S304:根据获取的订阅单将订阅单中的订阅ID和/或资源ID更新到订阅ID集和/或资源ID集中。
其中,步骤S304中所述的根据订阅单对订阅ID和/或资源ID进行更新的具体方式可以有多种,例如图4所示,作为其中一种可选的方式,在本发明实施例中,步骤S304可以包括:
S402:判断订阅单中的订阅ID是否已存在于更新前的订阅ID集中;
S404:若订阅单中的订阅ID不存在于更新前的订阅ID集中,则将订阅单中的订阅ID添加到更新前的订阅ID集中,以形成更新后的订阅ID集,并将与资源ID集中的每一资源ID均不相同的订阅单中的资源ID添加到更新前的资源ID集中,以形成更新后的资源ID集。
此外可选地,如图5所示,在通过步骤S402得出判断结果后,步骤S304还可以进一步包括:
S502:若订阅单中的订阅ID已存在于更新前的订阅ID集中,则在更新前的资源ID集中查找出任一订阅者所订阅的每一资源的资源ID;
S504:判断查找出的资源ID所标识的资源是否被多个订阅者中的任一订阅者之外的其它订阅者所订阅,若否,则将查找出的资源ID从更新前的资源ID集中删除,以形成更新后的资源ID集。
通过上述方式,可以实现对上述订阅ID集和资源ID集的更新。除上述实施方式外,对订阅ID集和资源ID集的更新还可以有其他可行的方式,例如,可选地,如图6所示,在本发明实施例中,步骤S304也可以包括:
S602:判断订阅单中的订阅ID是否已存在于更新前的订阅ID集中,若否,则将订阅单中的订阅ID添加到更新前的订阅ID集中,以形成更新后的订阅ID集;
S604:获取订阅ID集中的每一订阅ID所对应的订阅单中包括的资源ID的并集,以形成更新后的资源ID集。
在以上描述的基础上,本发明将通过以下的一些实施例来对步骤S204中所述的资源ID集所指示的全部资源的具体获取方式进行详细描述。
根据本发明实施例提供的资源推送方法,在步骤S204中,可以从资源服务器获取资源ID集指示的全部资源。一般而言,考虑到步骤S204中所需根据资源ID进行的资源的获取操作,在本发明的一些实施例中,资源ID包括资源地址和资源子标识,其中,不同的资源地址对应不同的资源服务器,资源子标识用于区分存放在同一资源服务器上的不同资源,其中,可选地,如图7所示,步骤S204可以具体包括:
S702:访问资源ID集中的每一资源地址对应的资源服务器,并根据资源子标识从访问的资源服务器中获取对应的资源。
其中,为进一步地降低资源服务器的处理压力,还可以在一次请求及其对应的查询操作中获取由同一个资源服务器所提供的所有资源。其中,如图8所示,在步骤S702中,根据资源子标识从访问的资源服务器中获取对应的资源可以包括:
S802:在资源ID集中查找包括访问的资源服务器所对应的资源地址在内的资源ID所包含的全部资源子标识;
S804:从访问的资源服务器获取全部资源子标识所指示的资源。
在上述场景下,与前述通过对订阅者相关的订阅单的处理以实现对订阅ID和资源ID的预配置的方式对应,可选地,如图9所示,在本发明实施例中,在步骤S202之前,上述资源推送方法还可以包括:
S902:获取与任一资源对应的注册单,其中,注册单包括任一资源的以下至少之一的相关信息:资源地址、资源子标识、相关的日志类型、资源名称、资源描述,其中,资源地址为任一资源所在的资源服务器的地址,资源子地址为在任一资源所在的资源服务器上访问任一资源的端口号。
在上述场景下,可以进一步地根据订阅单和注册单获取与日志类型对应的合并查询表,其中,该合并查询表一方面记录有上述订阅ID集,另一方面可以记录有资源地址集,并且,在该合并查询表中,该资源地址集中的每一个资源地址对应记录有多个资源子标识。
进一步地,在本发明实施例中,上述注册单还可以由资源管理前台进行接收,其中,该注册单的提供方既可以是资源的生产者,也可以是由资源的生产或维护人员直接在资源管理前台所提供的操作界面上输入或编辑的内容,等,进而由资源的生产者所生产、并存放在资源服务器上的资源的相关信息可以注册在资源管理前台,而资源管理前台可以对资源的相关信息进行维护,或者将这些信息转发给资源的订阅者,以作为订阅者订阅资源,比如生成订阅单时的参考。
通过上述方式,资源的生产者可以仅负责资源的生产和注册,而无需考虑与订阅者之间的关联,从而达到了资源生产与订阅者解耦的目的。其中,值得注意的是,在本发明的一些实施例中,上述资源的生产者也可以位于上述资源服务器上,本发明对此不作限定。
在另一方面,上述资源管理前台还可以用于接收前述的订阅单,类似地,该订阅单的提供方既可以是订阅者,也可以是由资源的生产或维护人员直接在资源管理前台所提供的操作界面上输入或编辑的内容,等。其中,作为一种可选的实施方式,订阅单与注册单均可以通过资源管理前台进行编写和维护,从而使得该资源管理前台成为一个面向管理***的管理人员的唯一的接口,进而降低整个管理***的维护成本。
通过以上描述,本发明给出了步骤S202中所述的从资源服务器获取资源ID集所指示的全部资源的具体实施方式,然而这并非是本发明唯一的实现方式。例如,在本发明的一些实施例中,上述多个订阅者所订阅的全部资源均存放在一个资源服务器上,则上述资源ID也可以不包括该资源服务器的地址,而是通过其他方式,比如建立连接的方式来访问并获取对应的资源。
在另一方面,上述实施方式作为针对常见的资源在计算机网络上的分布形态而提出,并不意味着对本发明构成了限定,例如在本发明的一些实施例中,在用于实施本发明的处理设备与提供不同资源的多个资源服务器之间还可以设置有资源管理服务器,以便对该处理设备发出的资源获取请求进行响应,进而由该资源管理服务器根据存储在其本地的存储结构表来获取该处理设备所需的全部资源,比如在分布式文件***中,上述资源管理服务器可以是数据仓库服务器,而存储结构表可以是元数据或名称结构表等。
在以上描述的基础上,本发明将通过以下实施例对步骤S206中将获取到的全部资源中为多个订阅者中的某一订阅者所订阅的资源的具体推送方式进行详细描述。
根据本发明实施例提供的资源推送方法,在步骤S206中,可以从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源,并根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者。
具体地,如图10所示,作为一种可行的实施方式,步骤S204可以包括:
S1002:从资源服务器获取资源ID集中的每一资源ID所标识的资源,并将获取的每一资源ID所标识的资源存储到存储区中;
S1004:将每一资源ID所标识的资源在存储区中的存储位置的标识记录到位置索引中;
其中,步骤S206中所述的从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源的步骤可以包括:
S1006:查找多个订阅者中的每一个对应的订阅单中包括的全部资源ID;
S1008:根据位置索引从与全部资源ID对应的存储位置获取存储区中存储的资源。
进一步地,如图11所示,步骤S206中所述的根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者的步骤可以包括:
S1102:将查找出的多个订阅者中的每一个所订阅的一个或多个资源封装成为与每一订阅者对应的资源包;
S1104:将资源包发送给对应的订阅者。
在上述场景下,为进一步实现资源的生产者与订阅者的解耦,可选地,如图12所示,在步骤S206之前,上述资源推送方法还可以包括:
S1202:生成与资源包的封装相对应的解包例程,并通过资源管理前台将解包例程发送给多个订阅者。
在本发明实施例中,面向不同的订阅者的上述解包例程既可以是相同的,也可以是不同的、与每一订阅者对应的例程,例如,作为一种可选的方式,上述解包例程可以根据接收到的订阅单自动地生成,并由资源管理前台分发给对应的订阅者。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
应当明确的是,本发明技术方案所要解决的问题之一是提供一种装置,以实现资源向订阅该资源的订阅者的推送。其中,一般而言,对于基于日志消息进行相关策略分析的网络安全***来说,上述推送是响应于接收到的日志消息的,或者说,每接收到一个日志消息,则需要对预先设置为与该日志消息或者该日志消息所属的日志类型关联的一个或多个订阅者进行相关资源的推送,以便于订阅者根据推送过来的资源执行进一步的策略相关的处理操作。
在上述场景下,每一次推送过程中所需发送给订阅者的该相关资源表示与接收到的日志消息或者该日志消息所属的日志类型相关的资源,而该订阅者在接收到所订阅的资源后,即可以根据接收到的资源生成与日志类型相关的安全策略。例如,对于一款在线应用产品对应的策略分析***而言,若接收到属于用户登录记录这一日志类型的日志消息,则与该日志类型相关的安全策略之一可以表现为判断该用户登录的行为是否属于恶意行为,而与该日志类型其相关的资源可以是该用户在过去一个历史时期内的同属于用户登录记录这一日志类型的历史日志,也可以是该用户在该在线应用中的消费记录,还可以是由某一资源服务器所提供的某一特定的判断方法,也就是说,该资源可以是历史日志或日志数据,也可以是一个属性数据,还可以是一个临时数据或者说累计计数数据,比如在某一个历史时期内的用户行为统计、或者由上述判断方法产出的一个概率值等,甚至在本发明的一些实施例中,上述资源还可以是安全策略中的一个程序块或进程模块,进而在这些资源被推送给订阅者后,订阅者便可以根据这些资源生成一个完整的安全策略。
在另一方面,在本发明的一些实施例中,上述订阅者也可以表示根据推送的资源进行后续处理的策略进程,然而本发明对此不作任何限定,其还可以表示其他类型的资源接口,以响应于基于日志消息对该资源接口所预先订阅的资源的推送。其中,需要说明的是,在作为本发明的一种可行的实施环境的资源服务***中,可以用于处理多个不同的日志类型,其中,与每一日志类型相关联的订阅者可以有多个,而这些与同一日志类型关联的多个订阅者可以分别表示不同的安全策略,也即每一日志类型可以对应有多种不同的安全策略。
为实现上述的资源订阅推送机制,惯用的方案所采用的方式是如图1所示的相对分散的资源订阅和推送方式。其中,如图1所示,针对每一个策略进程均设计有一个独立的资源订阅推送机制,用于在从日志接收机接收到日志消息后通过该独立的资源订阅推送机制来获取该策略进程所需的资源,并将获取到的资源推送给策略进程。这种方式很可能会造成资源的重复请求和获取,从而对作为被请求方的资源服务器造成较大的负荷。
区别于惯用的方案,在本发明实施例中,采用了对多个订阅者所需的资源进行集中请求与获取、再将获取的资源向该多个订阅者分发的方式,达到了同一资源仅需进行一次请求与获取的目的,从而降低了资源服务器的处理压力,解决了分散的资源订阅和推送方式所导致的资源服务器压力过大的技术问题。
具体地,根据本发明实施例,提供了一种资源推送装置,用于根据接收到的日志消息分别向多个订阅者推送多个订阅者各自订阅的资源,其中,多个订阅者预设为与日志消息的日志类型关联,多个订阅者各自订阅的资源用于生成与日志类型相关的安全策略,其中,如图13所示,该装置包括:
1)第一获取单元1302,用于获取日志类型对应的订阅ID集和资源ID集,其中,订阅ID集包括用于标识多个订阅者的多个订阅ID,资源ID集包括用于标识多个不同的资源的多个资源ID,其中,多个不同的资源为多个订阅者各自订阅的与日志类型相关的资源的并集;
2)第二获取单元1304,用于从资源服务器获取资源ID集指示的全部资源;
3)查找单元1306,用于从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源;
4)发送单元1308,用于根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者。
根据本发明实施例提供的资源推送装置,在第一获取单元1302中,可以在资源推送装置的本地获取接收到的日志消息所属的日志类型所对应的订阅ID集和资源ID集,例如,在本发明实施例中,上述订阅ID集和资源ID集可以存储在一张查询表中,其中,该查询表的名称或某一属性与上述日志类型是对应的。
在本发明实施例中,订阅ID集可以包括用于标识多个订阅者的多个订阅ID,资源ID集可以包括用于标识多个不同的资源的多个资源ID,其中,多个不同的资源为多个订阅者各自订阅的与日志类型相关的资源的并集。
例如,在一个实施例中,共有订阅ID分别为001、002和003的三个订阅者针对某一日志类型预先进行了订阅,其中,基于该日志类型,第一订阅者所订阅的资源的资源ID为A和B,第二订阅者所订阅的资源的资源ID为B和C,第三订阅者所订阅的资源的资源ID为A和C,那么据此获取的订阅ID集为:[001,002,003],资源ID集为:[A,B,C],进而,可以在第二获取单元1304中对资源ID集所指示的全部资源,也即资源ID分别为A、B和C的三个资源进行获取。
对于上述实施例,容易理解,资源ID集中的每一个资源分别从资源服务器获取了1次。然而对惯用方案而言,为实现上述的资源推送任务,则订阅ID为001的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为A和B的资源,订阅ID为002的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为B和C的资源,而订阅ID为003的订阅者所对应的推送进程需要从资源服务器获取资源ID分别为A和C的资源,也即上述资源ID集中的每一个资源分别从资源服务器获取了2次。也就是说,在上述实施例中,通过本发明技术方案,资源服务器的处理压力降低了一半。
当然,这只是一种示例,用于对本发明技术方案的实施及其效果的实现进行阐述,并不意味着对本发明构成了任何限定,也不应将上述实施例中所达到的技术效果理解为本发明所必然达到的技术效果,进而对本发明所公开的内容造成曲解。
在本发明实施例中,第一获取单元1302中所述的订阅ID集与资源ID集的获取方式可以有多种,其中,作为一种优选的方式,该订阅ID集与资源ID集可以维护在资源推送装置的本地,从而在一方面,可以利用推送进程对该订阅ID集与资源ID集的读取和预加载,而避免了在每接收到一条日志消息后针对该订阅ID集与资源ID集的临时处理,在另一方面,由于将该订阅ID集与资源ID集的获取方法对应的硬编码从本发明实施例中的资源推送装置中移除,这种实施方式有利于对该订阅ID集与资源ID集的维护和更新。
更具体地,上述对于订阅ID集合资源ID集的维护可以通过以下方式来实现。其中,可选地,如图14所示,与第一获取单元1302耦合地,上述资源推送装置还可以包括:
1)第三获取单元1402,用于获取与任一订阅者对应的订阅单,其中,订阅单包括任一订阅者的订阅ID以及任一订阅者所订阅的每一资源的资源ID;
2)更新单元1404,用于根据获取的订阅单将订阅单中的订阅ID和/或资源ID更新到订阅ID集和/或资源ID集中。
其中,更新单元1404中所述的根据订阅单对订阅ID和/或资源ID进行更新的具体方式可以有多种,例如,作为其中一种可选的方式,在本发明实施例中,更新单元1404可以包括:
1)判断模块1502,用于判断订阅单中的订阅ID是否已存在于更新前的订阅ID集中;
2)第三更新模块1504,用于在订阅单中的订阅ID不存在于更新前的订阅ID集中时,将订阅单中的订阅ID添加到更新前的订阅ID集中,以形成更新后的订阅ID集,并将与资源ID集中的每一资源ID均不相同的订阅单中的资源ID添加到更新前的资源ID集中,以形成更新后的资源ID集。
此外可选地,如图16所示,在通过判断模块1502得出判断结果后,更新单元1404还可以进一步包括:
1)第一查找模块1602,用于在订阅单中的订阅ID已存在于更新前的订阅ID集中时,在更新前的资源ID集中查找出任一订阅者所订阅的每一资源的资源ID;
2)第四更新模块1604,用于判断查找出的资源ID所标识的资源是否被多个订阅者中的任一订阅者之外的其它订阅者所订阅,若否,则将查找出的资源ID从更新前的资源ID集中删除,以形成更新后的资源ID集。
通过上述方式,可以实现对上述订阅ID集和资源ID集的更新。除上述实施方式外,对订阅ID集和资源ID集的更新还可以有其他可行的方式,例如,可选地,如图17所示,在本发明实施例中,更新单元1404也可以包括:
1)第一更新模块1702,用于判断订阅单中的订阅ID是否已存在于更新前的订阅ID集中,若否,则将订阅单中的订阅ID添加到更新前的订阅ID集中,以形成更新后的订阅ID集;
2)第二更新模块1704,用于获取订阅ID集中的每一订阅ID所对应的订阅单中包括的资源ID的并集,以形成更新后的资源ID集。
在以上描述的基础上,本发明将通过以下的一些实施例来对第二获取单元1304中所述的资源ID集所指示的全部资源的具体获取方式进行详细描述。
根据本发明实施例提供的资源推送装置,在第二获取单元1304中,可以从资源服务器获取资源ID集指示的全部资源。一般而言,考虑到第二获取单元1304中所需根据资源ID进行的资源的获取操作,在本发明的一些实施例中,资源ID包括资源地址和资源子标识,其中,不同的资源地址对应不同的资源服务器,资源子标识用于区分存放在同一资源服务器上的不同资源,其中,可选地,如图18所示,第二获取单元1304可以具体包括:
1)第一获取模块1802,用于访问资源ID集中的每一资源地址对应的资源服务器,并根据资源子标识从访问的资源服务器中获取对应的资源。
其中,为进一步地降低资源服务器的处理压力,还可以在一次请求及其对应的查询操作中获取由同一个资源服务器所提供的所有资源。其中,如图19所示,第一获取模块1802可以包括:
1)查找子模块1902,用于在资源ID集中查找包括访问的资源服务器所对应的资源地址在内的资源ID所包含的全部资源子标识;
2)获取子模块1904,用于从访问的资源服务器获取全部资源子标识所指示的资源。
在上述场景下,与前述通过对订阅者相关的订阅单的处理以实现对订阅ID和资源ID的预配置的方式对应,可选地,如图20所示,在本发明实施例中,与第一获取单元1302耦合地,上述资源推送装置还可以包括:
1)第四获取单元2002,用于获取与任一资源对应的注册单,其中,注册单包括任一资源的以下至少之一的相关信息:资源地址、资源子标识、相关的日志类型、资源名称、资源描述,其中,资源地址为任一资源所在的资源服务器的地址,资源子地址为在任一资源所在的资源服务器上访问任一资源的端口号。
在上述场景下,可以进一步地根据订阅单和注册单获取与日志类型对应的合并查询表,其中,该合并查询表一方面记录有上述订阅ID集,另一方面可以记录有资源地址集,并且,在该合并查询表中,该资源地址集中的每一个资源地址对应记录有多个资源子标识。
进一步地,在本发明实施例中,上述注册单还可以由资源管理前台进行接收,其中,该注册单的提供方既可以是资源的生产者,也可以是由资源的生产或维护人员直接在资源管理前台所提供的操作界面上输入或编辑的内容,等,进而由资源的生产者所生产、并存放在资源服务器上的资源的相关信息可以注册在资源管理前台,而资源管理前台可以对资源的相关信息进行维护,或者将这些信息转发给资源的订阅者,以作为订阅者订阅资源,比如生成订阅单时的参考。
通过上述方式,资源的生产者可以仅负责资源的生产和注册,而无需考虑与订阅者之间的关联,从而达到了资源生产与订阅者解耦的目的。其中,值得注意的是,在本发明的一些实施例中,上述资源的生产者也可以位于上述资源服务器上,本发明对此不作限定。
在另一方面,上述资源管理前台还可以用于接收前述的订阅单,类似地,该订阅单的提供方既可以是订阅者,也可以是由资源的生产或维护人员直接在资源管理前台所提供的操作界面上输入或编辑的内容,等。其中,作为一种可选的实施方式,订阅单与注册单均可以通过资源管理前台进行编写和维护,从而使得该资源管理前台成为一个面向管理***的管理人员的唯一的接口,进而降低整个管理***的维护成本。
通过以上描述,本发明给出了第一获取单元1302中所述的从资源服务器获取资源ID集所指示的全部资源的具体实施方式,然而这并非是本发明唯一的实现方式。例如,在本发明的一些实施例中,上述多个订阅者所订阅的全部资源均存放在一个资源服务器上,则上述资源ID也可以不包括该资源服务器的地址,而是通过其他方式,比如建立连接的方式来访问并获取对应的资源。
在另一方面,上述实施方式作为针对常见的资源在计算机网络上的分布形态而提出,并不意味着对本发明构成了限定,例如在本发明的一些实施例中,在资源推送装置与提供不同资源的多个资源服务器之间还可以设置有资源管理服务器,以便对该处理设备发出的资源获取请求进行响应,进而由该资源管理服务器根据存储在其本地的存储结构表来获取该处理设备所需的全部资源,比如在分布式文件***中,上述资源管理服务器可以是数据仓库服务器,而存储结构表可以是元数据或名称结构表等。
在以上描述的基础上,本发明将通过以下实施例对查找单元1306中将获取到的全部资源中为多个订阅者中的某一订阅者所订阅的资源的具体推送方式进行详细描述。
根据本发明实施例提供的资源推送装置,在查找单元1306中,可以从获取的全部资源中查找出多个订阅者中的每一个所订阅的资源,并通过发送单元1308,根据订阅ID集将查找出的多个订阅者中的每一个所订阅的资源发送给多个订阅者中对应的订阅者。
具体地,如图21所示,作为一种可行的实施方式,第二获取单元1304可以包括:
1)存储模块2102,用于从资源服务器获取资源ID集中的每一资源ID所标识的资源,并将获取的每一资源ID所标识的资源存储到存储区中;
2)记录模块2104,用于将每一资源ID所标识的资源在存储区中的存储位置的标识记录到位置索引中;
其中,查找单元1306可以包括:
1)第二查找模块2106,用于查找多个订阅者中的每一个对应的订阅单中包括的全部资源ID;
2)第二获取模块2108,用于根据位置索引从与全部资源ID对应的存储位置获取存储区中存储的资源。
进一步地,如图22所示,发送单元1308可以包括:
1)封装模块2202,用于将查找出的多个订阅者中的每一个所订阅的一个或多个资源封装成为与每一订阅者对应的资源包;
2)发送模块2204,用于将资源包发送给对应的订阅者。
在上述场景下,为进一步实现资源的生产者与订阅者的解耦,可选地,如图23所示,与查找单元1306耦合地,上述资源推送装置还可以包括:
1)生成单元2302,用于生成与资源包的封装相对应的解包例程,并通过资源管理前台将解包例程发送给多个订阅者。
在本发明实施例中,面向不同的订阅者的上述解包例程既可以是相同的,也可以是不同的、与每一订阅者对应的例程,例如,作为一种可选的方式,上述解包例程可以根据接收到的订阅单自动地生成,并由资源管理前台分发给对应的订阅者。
实施例3
在本发明实施例中,还提供了一种资源服务***,其中,该***可以包括如实施例2中所述的资源推送装置和多个订阅者。
以下将结合附图24至26给出本发明的一个更为具体的实施方式,以作为根据本发明以上实施例提供的上述资源推送方法、装置以及资源服务器***的参考。
可选地,如图24所示,在本发明实施例中,资源服务***的总体架构可以包括:资源中心前台、资源中心后台、以及策略单元,其中,该策略单元用于根据接收到的资源生成并执行安全策略。
如图24所示,资源中心可以划分为资源中心前台和资源中心后台,其中,资源中心前台可以用于提供资源注册、修改、查看、订阅、资源订阅解包API下载、资源及订阅的修改流水查询等功能。此外,可选地,资源中心前台还可以进一步提供API自动生成的功能,以根据订阅的资源自动生成相应的解包API,供订阅者下载使用,并自动生成资源外挂时的用于解析资源中心请求以及封装资源响应包的API,供资源生产者下载使用。而资源中心的后台可以包括日志接收机、资源中心逻辑层以及各资源服务器,其中,日志接收机可以用于接收生产***的操作流水日志,做相关的基础解析,资源中心逻辑层负责接收日志接收机过来的请求,并根据资源订阅信息获取订阅者需要的资源并组装推送给资源订阅者,资源服务器或者说各类资源的生产者可以用于生产资源,并提供资源中心逻辑层的查询服务,以在收到资源中心逻辑层的查询服务时把相关资源响应给资源中心。其中,在本发明实施例中,订阅的资源的推送是基于日志触发的,订阅了某种类型的日志以及相关资源后,当逻辑层收到该类型的日志就会请求其订阅的资源,资源完备后推送给订阅者。
具体地,在本发明实施例中,资源中心前台可以作为资源和订阅的管理和操作的平台提供给资源服务器的管理人员,其中,前台功能可以包括:资源注册、资源查看、资源订阅以及API下载。资源注册是资源生产者向资源中心注册资源,具体地,资源注册可以注册如下信息:
1)资源的名称和描述,便于资源订阅者查看;
2)资源的类型,资源可以根据特性以及资源直接的依赖关系共分为三类:日志资源、属性资源、临时计数资源,其中,日志资源表示日志接收机的输出数据,属性资源表示值特性化的一些属性数据,临时计数资源表示对用户行为操作的累计计数,其中,临时计数性资源会依赖日志资源或属性资源做某些数据的累计计数;
3)资源的服务的IP地址和端口,也就是资源逻辑层请求资源的地址;
4)资源的负责人;
5)资源的具体定义,描述资源的具体订阅,方便订阅者了解资源的具体含义,并作为API自动生成的依据。
资源中心前台可以维护一张资源表,资源注册成功后会在资源表里新增一条记录,该资源表也是资源逻辑层的资源配置表来源,资源逻辑层通过加载该资源表获取资源配置。资源查看页面可以提供给资源订阅者资源,查找需要订阅资源的页面,并且可以支持对已注册的资源的修改。资源订阅页面可以提供资源订阅功能,其中,订阅者可以在资源订阅页面上勾选需要订阅的资源,进而在提交订阅成功后,可以生成一条新的订阅单。类似地,资源中心前台还可以维护一张订阅表,新增一个订阅单就会在该表新增一条记录,逻辑层通过订阅表来获取订阅信息。订阅表主要包括订阅ID、订阅的日志类型、订阅的具体资源ID,订阅修改时间等信息。
此外,在面向订阅者时,资源中心前台除提供订阅单的查询功能外,还可以提供针对某个订阅单下载其对应的订阅信息解包API的功能。进一步地,资源中心前台还可以提供资源和订阅修改的流程的查看,以便于跟踪修改、定位问题。
在另一方面,如图24所示,资源中心后台可以包括日志接收机、逻辑层和资源服务器。以下将重点阐述逻辑层的实现方案,逻辑层是整个平台的核心模块,负责根据资源及订阅配置请求组装各订阅者所订阅的资源,并推送给订阅者,完成资源从资源生产者到资源消费者的推送功能,实现生产和消费的解耦。
如图25所示,在本发明实施例中,逻辑层启动时会启动一个配置进程,启动加载资源和订阅的配置信息,且当前台资源或订阅变更时会通知配置进程,配置进程重新加载配置。配置进程加载资源和订阅的配置后会计算出属性资源合并查询表和临时资源合并查询表,请求资源时根据这两张表做快速的资源请求和分发。
在图25中,业务进程是逻辑层处理资源请求和推送的核心模块,根据资源之间的依赖关系,逻辑层做两层会话(session)的请求,这两次session分别处理第一层的属性化资源的请求和第二层的临时资源的请求。
其中,第一层session直接根据属性资源合并查询表,向所有该日志类型关联的属性资源服务器请求资源,请求到所有的属性资源后做第二层session的请求,由于第二次session的资源累计依赖于第一层session属性资源做计数,在第二层请求的时会带上属性化资源。第二层session请求时根据临时资源合并查询表做请求。
在以上描述的基础上,考虑到微博每天的生产***写操作日志有1.9亿条,每个订阅同时可以订阅多个资源,如果对每次订阅都单独请求每个资源,则在整个***中与请求相关的收发包的数量将是巨大的,这对于服务器的网卡和CPU网卡中断构成了较大的负担,从而增大了资源服务器及整个资源服务***的处理压力。针对这一问题,本发明实施例采用了一种合并快速查询的方式,其中,这里的合并包括两层含义:1)对日志类型的多个订阅单的请求资源做合并,计算出一个日志类型的所有订阅单订阅的资源合集,一次日志操作只要请求资源合集,再根据订阅做组装分发;2)资源服务的合并,对相关的资源可以通过一个接口进程做打包查询,提高资源中一次请求的效率。
在本发明实施例中,快速合并查询的实现是通过属性资源合并查询表和临时资源合并查询表来实现的,以下将结合图26对根据本发明实施例提供的资源推送方法进行解释。
在图26中,属性资源合并查询表和临时资源合并查询表是以日志类型为主键(Key)的两层session的资源请求表,查询表描述了该日志类型在两层session上所要请求的所有资源以及对应的地址信息,同时在临时资源日志请求表里,记录着该日志的所有订阅单。收到一条日志时根据日志类型获取两个请求表信息,向请求表的地址发送对应的资源请求,收到响应包时把资源数据加载的session数据区。
如图26所示,两层session获取到所有的资源数据缓存在session数据区,session数据区同时也记录各个资源数据在数据区的位置索引,某个日志类型下所有资源请求完备后,查询临时资源日志类型请求表,获取该日志类型的所有订阅单,逐一获取每个订阅单所订阅的所有资源,在数据区组装订阅的资源推送给订阅者。
通过上述方式,本发明实施例实现了资源生产与消费的解耦,从而在一方面可以通过统一的资源管理平台实现策略之间的共享与联动,另一方面使得资源开发与策略开发可以并行地进行,从而提高了安全策略的打击效率以及安全策略的开发效率。进一步地,在本发明实施例中,通过快速合并查询的方式还达到了减轻资源服务器及资源服务***的处理压力的效果。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的资源推送装置和资源服务器,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (13)

1.一种资源推送方法,用于根据接收到的日志消息分别向多个订阅者推送所述多个订阅者各自订阅的资源,其中,所述多个订阅者预设为与所述日志消息的日志类型关联,其特征在于,所述方法包括:
获取所述日志类型对应的订阅ID集和资源ID集,其中,所述订阅ID集包括用于标识所述多个订阅者的多个订阅ID,所述资源ID集包括用于标识多个不同的资源的多个资源ID,其中,所述多个不同的资源为所述多个订阅者各自订阅的与所述日志类型相关的资源的并集;
从资源服务器获取所述资源ID集指示的全部资源;
从获取的所述全部资源中查找出所述多个订阅者中的每一个所订阅的资源,并根据所述订阅ID集将查找出的所述多个订阅者中的每一个所订阅的资源发送给所述多个订阅者中对应的订阅者。
2.根据权利要求1所述的方法,其特征在于,所述资源ID包括资源地址和资源子标识,其中,不同的所述资源地址对应不同的所述资源服务器,所述资源子标识用于区分存放在同一所述资源服务器上的不同资源,其中,所述从资源服务器获取所述资源ID集指示的全部资源包括:
访问所述资源ID集中的资源地址的并集中的每一资源地址所对应的所述资源服务器,并从访问的所述资源服务器批量获取所述资源ID集中与所述每一资源地址对应的全部资源子标识所指示的资源。
3.根据权利要求1所述的方法,其特征在于,在所述获取所述日志类型对应的订阅ID集和资源ID集之前,还包括:
获取与任一订阅者对应的订阅单,其中,所述订阅单包括所述任一订阅者的订阅ID以及所述任一订阅者所订阅的每一资源的资源ID;
根据获取的所述订阅单将所述订阅单中的订阅ID和/或资源ID更新到所述订阅ID集和/或所述资源ID集中。
4.根据权利要求3所述的方法,其特征在于,所述根据获取的所述订阅单将所述订阅单中的订阅ID和/或资源ID更新到所述订阅ID集和/或所述资源ID集中包括:
判断所述订阅单中的订阅ID是否已存在于更新前的所述订阅ID集中,若否,则将所述订阅单中的订阅ID添加到更新前的所述订阅ID集中,以形成更新后的所述订阅ID集;
获取所述订阅ID集中的每一订阅ID所对应的所述订阅单中包括的资源ID的并集,以形成更新后的所述资源ID集。
5.根据权利要求3所述的方法,其特征在于,
所述从资源服务器获取所述资源ID集指示的全部资源包括:从所述资源服务器获取所述资源ID集中的每一所述资源ID所标识的资源,并将获取的每一所述资源ID所标识的资源存储到存储区中;将每一所述资源ID所标识的资源在所述存储区中的存储位置的标识记录到位置索引中;
所述从获取的所述全部资源中查找出所述多个订阅者中的每一个所订阅的资源包括:查找所述多个订阅者中的每一个对应的所述订阅单中包括的全部资源ID;根据所述位置索引从与所述全部资源ID对应的存储位置获取所述存储区中存储的资源。
6.根据权利要求3至5中任一项所述的方法,其特征在于,在所述获取所述日志类型对应的订阅ID集和资源ID集之前,还包括:
资源管理前台获取与任一资源对应的注册单,其中,所述注册单包括所述任一资源的以下至少之一的相关信息:资源地址、资源子标识、相关的日志类型、资源名称、资源描述,其中,所述资源地址为所述任一资源所在的资源服务器的地址,所述资源子标识为在所述任一资源所在的资源服务器上访问所述任一资源的端口号;其中,
所述获取与任一订阅者对应的订阅单包括:所述资源管理前台获取根据所述注册单生成的所述订阅单。
7.根据权利要求1至5中任一项所述的方法,其特征在于,在所述根据所述订阅ID集将查找出的所述多个订阅者中的每一个所订阅的资源发送给所述多个订阅者中对应的订阅者之前,还包括:
资源管理前台根据资源包封装格式生成与所述资源包封装格式对应的解包例程,并将所述解包例程发送给所述多个订阅者;其中,
所述根据所述订阅ID集将查找出的所述多个订阅者中的每一个所订阅的资源发送给所述多个订阅者中对应的订阅者包括:根据所述资源包封装格式将查找出的所述多个订阅者中的每一个所订阅的一个或多个资源封装成为与每一所述订阅者对应的资源包;将所述资源包发送给对应的订阅者。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述多个订阅者各自订阅的资源用于生成与所述日志类型相关的安全策略,其中,在所述根据所述订阅ID集将查找出的所述多个订阅者中的每一个所订阅的资源发送给所述多个订阅者中对应的订阅者之后,所述方法还包括:
所述多个订阅者中的每一个接收所订阅的资源,并根据接收到的资源生成所述安全策略;其中,
所述资源包括以下至少之一:日志数据、属性数据、临时数据、安全策略子程序块。
9.一种资源推送装置,用于根据接收到的日志消息分别向多个订阅者推送所述多个订阅者各自订阅的资源,其中,所述多个订阅者预设为与所述日志消息的日志类型关联,其特征在于,所述装置包括:
第一获取单元,用于获取所述日志类型对应的订阅ID集和资源ID集,其中,所述订阅ID集包括用于标识所述多个订阅者的多个订阅ID,所述资源ID集包括用于标识多个不同的资源的多个资源ID,其中,所述多个不同的资源为所述多个订阅者各自订阅的与所述日志类型相关的资源的并集;
第二获取单元,用于从资源服务器获取所述资源ID集指示的全部资源;
查找单元,用于从获取的所述全部资源中查找出所述多个订阅者中的每一个所订阅的资源;
发送单元,用于根据所述订阅ID集将查找出的所述多个订阅者中的每一个所订阅的资源发送给所述多个订阅者中对应的订阅者。
10.根据权利要求9所述的装置,其特征在于,所述资源ID包括资源地址和资源子标识,其中,不同的所述资源地址对应不同的所述资源服务器,所述资源子标识用于区分存放在同一所述资源服务器上的不同资源,其中,所述第二获取单元包括:
获取模块,用于访问所述资源ID集中的资源地址的并集中的每一资源地址所对应的所述资源服务器,并从访问的所述资源服务器批量获取所述资源ID集中与所述每一资源地址对应的全部资源子标识所指示的资源。
11.根据权利要求9所述的装置,其特征在于,还包括:
第三获取单元,用于获取与任一订阅者对应的订阅单,其中,所述订阅单包括所述任一订阅者的订阅ID以及所述任一订阅者所订阅的每一资源的资源ID;
更新单元,用于根据获取的所述订阅单将所述订阅单中的订阅ID和/或资源ID更新到所述订阅ID集和/或所述资源ID集中。
12.根据权利要求11所述的装置,其特征在于,还包括:
所述第三获取单元还用于获取与任一资源对应的注册单,其中,所述注册单包括所述任一资源的以下至少之一的相关信息:资源地址、资源子标识、相关的日志类型、资源名称、资源描述,其中,所述资源地址为所述任一资源所在的资源服务器的地址,所述资源子标识为在所述任一资源所在的资源服务器上访问所述任一资源的端口号;其中,
所述订阅单根据所述注册单生成。
13.根据权利要求9至12中任一项所述的装置,其特征在于,所述多个订阅者中的每一个用于接收所订阅的资源,并根据接收到的资源生成与所述日志类型相关的安全策略,其中,所述资源包括以下至少之一:日志数据、属性数据、临时数据、安全策略子程序块。
CN201310538414.5A 2013-11-04 2013-11-04 资源推送方法和装置 Active CN104618410B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310538414.5A CN104618410B (zh) 2013-11-04 2013-11-04 资源推送方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310538414.5A CN104618410B (zh) 2013-11-04 2013-11-04 资源推送方法和装置

Publications (2)

Publication Number Publication Date
CN104618410A true CN104618410A (zh) 2015-05-13
CN104618410B CN104618410B (zh) 2019-06-07

Family

ID=53152685

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310538414.5A Active CN104618410B (zh) 2013-11-04 2013-11-04 资源推送方法和装置

Country Status (1)

Country Link
CN (1) CN104618410B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878246A (zh) * 2016-07-27 2017-06-20 阿里巴巴集团控股有限公司 一种资源管理方法及装置
CN107181636A (zh) * 2016-03-10 2017-09-19 阿里巴巴集团控股有限公司 一种负载均衡***中的健康检查方法及装置
CN108810048A (zh) * 2017-05-02 2018-11-13 ***通信集团重庆有限公司 资源推送方法及装置
CN109672735A (zh) * 2018-12-20 2019-04-23 ***通信集团江苏有限公司 一种消息处理的方法、装置及设备
CN110737447A (zh) * 2018-07-18 2020-01-31 阿里巴巴集团控股有限公司 应用更新方法和装置
CN114928604A (zh) * 2022-06-29 2022-08-19 建信金融科技有限责任公司 文件分发方法和装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967695A (zh) * 2005-08-01 2007-05-23 索尼株式会社 信息处理装置、再现装置、通信方法、再现方法及计算机程序
CN101047691A (zh) * 2006-04-29 2007-10-03 华为技术有限公司 一种对订阅进行集中控制的方法
CN102110104A (zh) * 2009-12-28 2011-06-29 北大方正集团有限公司 索引库的建立方法、检索方法和索引库的更新方法
CN102255944A (zh) * 2011-04-14 2011-11-23 浪潮(北京)电子信息产业有限公司 集群***的管理方法和***
CN102780768A (zh) * 2012-06-29 2012-11-14 北京奇虎科技有限公司 一种大并发量请求的处理方法及处理***
CN102902733A (zh) * 2012-09-11 2013-01-30 北京奇艺世纪科技有限公司 一种基于内容订阅的信息推送方法、装置及***
CN103064842A (zh) * 2011-10-20 2013-04-24 北京中搜网络技术股份有限公司 信息订阅处理装置和信息订阅处理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1967695A (zh) * 2005-08-01 2007-05-23 索尼株式会社 信息处理装置、再现装置、通信方法、再现方法及计算机程序
CN101047691A (zh) * 2006-04-29 2007-10-03 华为技术有限公司 一种对订阅进行集中控制的方法
CN102110104A (zh) * 2009-12-28 2011-06-29 北大方正集团有限公司 索引库的建立方法、检索方法和索引库的更新方法
CN102255944A (zh) * 2011-04-14 2011-11-23 浪潮(北京)电子信息产业有限公司 集群***的管理方法和***
CN103064842A (zh) * 2011-10-20 2013-04-24 北京中搜网络技术股份有限公司 信息订阅处理装置和信息订阅处理方法
CN102780768A (zh) * 2012-06-29 2012-11-14 北京奇虎科技有限公司 一种大并发量请求的处理方法及处理***
CN102902733A (zh) * 2012-09-11 2013-01-30 北京奇艺世纪科技有限公司 一种基于内容订阅的信息推送方法、装置及***

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107181636A (zh) * 2016-03-10 2017-09-19 阿里巴巴集团控股有限公司 一种负载均衡***中的健康检查方法及装置
CN106878246A (zh) * 2016-07-27 2017-06-20 阿里巴巴集团控股有限公司 一种资源管理方法及装置
CN108810048A (zh) * 2017-05-02 2018-11-13 ***通信集团重庆有限公司 资源推送方法及装置
CN110737447A (zh) * 2018-07-18 2020-01-31 阿里巴巴集团控股有限公司 应用更新方法和装置
CN110737447B (zh) * 2018-07-18 2023-11-14 阿里巴巴集团控股有限公司 应用更新方法和装置
CN109672735A (zh) * 2018-12-20 2019-04-23 ***通信集团江苏有限公司 一种消息处理的方法、装置及设备
CN114928604A (zh) * 2022-06-29 2022-08-19 建信金融科技有限责任公司 文件分发方法和装置
CN114928604B (zh) * 2022-06-29 2023-06-16 建信金融科技有限责任公司 文件分发方法和装置

Also Published As

Publication number Publication date
CN104618410B (zh) 2019-06-07

Similar Documents

Publication Publication Date Title
CN111460506B (zh) 数据访问控制方法及装置
CN104618410A (zh) 资源推送方法和装置
CN102546708B (zh) 插件获取方法、***及相关装置
CN111414407A (zh) 数据库的数据查询方法、装置、计算机设备及存储介质
CN104965691A (zh) 配置网页页面的页面元素的方法、装置及***
CN104838620A (zh) 电信网中的事件管理
CN102158541B (zh) 一种共享信息的获取方法、装置、移动终端及服务器
CN107347062A (zh) 一种日志数据处理的方法、电子设备和可读存储介质
CN105701122A (zh) 一种日志收集方法、装置及***
CN104836782B (zh) 服务器、客户端以及数据访问方法和***
CN104580310A (zh) 日志处理方法和服务器
CN103457802A (zh) 一种信息传输***及方法
CN101847146A (zh) 一种搜索方法、***及搜索服务器
CN107665237A (zh) 数据结构分类装置、非结构化数据的发布订阅***及方法
CN105447151A (zh) 访问分布式数据库的方法、数据源代理装置及应用服务器
CN107644017A (zh) 日志文件的查询方法及装置
CN104283925A (zh) 交互式qr码管理***
CN114374965A (zh) 一种用户签约数据处理方法、***、设备及介质
CN105812432A (zh) 云文档处理方法及装置
CN103079194A (zh) 业务适配方法、装置及***
CN113010904A (zh) 数据处理方法和装置及电子设备
CN102769663B (zh) 一种传递信息的服务器及方法、信息传递***
CN103166829B (zh) 网信页面提供方法及***、网信平台及业务***
CN102223399B (zh) 基于智能终端的联系人会话展现方法及***
CN112416875B (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