CN110933448B - 直播列表服务系统及方法 - Google Patents
直播列表服务系统及方法 Download PDFInfo
- Publication number
- CN110933448B CN110933448B CN201911202053.0A CN201911202053A CN110933448B CN 110933448 B CN110933448 B CN 110933448B CN 201911202053 A CN201911202053 A CN 201911202053A CN 110933448 B CN110933448 B CN 110933448B
- Authority
- CN
- China
- Prior art keywords
- list
- data
- live
- room
- layer
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 303
- 230000008569 process Effects 0.000 claims abstract description 273
- 230000008859 change Effects 0.000 claims description 54
- 238000012544 monitoring process Methods 0.000 claims description 11
- 238000009826 distribution Methods 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims 1
- 238000013500 data storage Methods 0.000 abstract description 5
- 238000004364 calculation method Methods 0.000 abstract description 4
- 238000000926 separation method Methods 0.000 abstract description 4
- 230000007246 mechanism Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000005192 partition Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 238000013523 data management Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2181—Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/241—Operating system [OS] processes, e.g. server setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了直播列表服务系统及方法,该系统包括:数据层及列表服务层;数据层包含数据中心,数据中心存储在线直播房间的房间信息;列表服务层包含列表服务进程,列表服务进程与对应的数据中心连接,连接到同一数据中心的列表服务进程竞争分布式锁,竞争成功的列表服务进程根据在线直播房间的房间信息生成直播列表数据,并将直播列表数据发送给对应的数据中心。利用该系统,实现了列表服务进程计算与数据存储的分离,由此保证列表服务进程可直接启动无需进行数据同步,极大降低了内存占用,并实现了列表服务进程的无状态运行,同时,多个列表服务进程采用分布式锁的方式竞争获取直播列表生成的执行权,保证了直播列表服务的高可用性。
Description
技术领域
本发明涉及直播技术领域,尤其涉及直播列表服务系统及方法。
背景技术
在网络直播领域,直播列表的展现是直播应用软件的必备功能,而直播列表则由直播应用后台中的直播列表服务进行支持。
传统的直播列表服务中,主要采用基于进程内存的方式来实现服务支持,考虑到负载问题,直播应用后台会存在多个列表服务进程均用于进行直播列表服务,该支持实现中,每个列表服务进程都需要分配内存对应存储一份保存所有在线直播信息的全量数据,而各个进程根据所具备的全量数据生成直播列表,提供给所对应的客户端。
上述传统的直播列表服务支持至少存在以下问题:1)每个列表服务进程都需要占用内存来存储全量数据,内存占用巨大,且内存的占用与部署的线程数成正比;此外,每一个列表服务进程都需要处理生成直播列表,由此造成直播列表生成的重复计算,浪费CPU计算资源;2)新启动的一个列表服务进程,需要先从其他进程进行全量数据同步,整个列表服务进程从启动到可用需要耗费较多时间在数据同步机制上,而且数据同步机制依赖服务发现,若服务发现异常,同步机制也会受到影响,此外,若列表服务进程全部宕机,所存储的全量数据也将全部消失。上述问题均降低了直播列表服务的高可用性,影响了直播列表服务支持的有效性。
发明内容
本发明实施例提供了直播列表服务系统及方法,有效提高了直播列表服务的高可用性。
第一方面,本发明实施例提供了直播列表服务系统,包括:数据层及列表服务层;
所述数据层包含数据中心,所述数据中心存储在线直播房间的房间信息;
所述列表服务层包含列表服务进程,所述列表服务进程与对应的数据中心连接,连接到同一数据中心的列表服务进程竞争分布式锁,竞争成功的列表服务进程根据所述在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心。
第二方面,本发明实施例提供了直播列表服务方法,由本实施例第一方面提供的直播列表服务系统执行,包括:
在分布式锁当前处于解锁状态时,连接到同一数据中心的列表服务进程竞争分布式锁;
竞争成功的列表服务进程根据所述在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心,其中,所述分布式锁在列表服务进程竞争成功后处于上锁状态,并在所述上锁状态持续设定时间阈值后解锁。
在上述提供的直播列表服务系统及方法中,该服务系统包括数据层和列表服务层,数据层包含数据中心,能够存储在线直播房间的房间信息,列表服务层包含列表服务进程,列表服务进程与对应的数据中心连接,连接到同一数据中心的列表服务进程竞争分布式锁,竞争成功的列表服务进程根据在线直播房间的房间信息生成直播列表数据,并将直播列表数据发送给数据中心。本实施例提供的直播列表服务系统,与现有采用进程内存的直播列表服务支持相比,采用列表服务进程进行直播列表的生成操作与采用数据中心进行数据存储,实现了列表服务进程计算与数据存储的分离,并使得一个数据中心能够向多个列表服务进程提供数据支持,由此保证列表服务进程可直接启动无需进行数据同步,极大降低了内存占用,并实现了列表服务进程的无状态运行;同时,多个列表服务进程采用分布式锁的方式竞争获取直播列表生成的执行权,无需每个列表服务进程均单独重复执行直播列表生成,大大减少了CPU资源的占用率,列表服务层与数据层相结合的服务系统,保证了直播列表服务的高可用性。
附图说明
图1给出了本发明实施例一提供的一种直播列表服务系统的架构图;
图2给出了本发明实施例一所提供直播列表服务系统中数据层所包含数据中心的部署分布示例图;
图3给出了本发明实施例一所提供直播列表服务系统中房间变更信息写入的实现示例图;
图4给出了本发明实施例一所提供直播列表服务系统中列表查询服务的实现示例图;
图5为本发明实施例二提供的一种直播列表服务方法的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。另外,在不冲突的情况下,本发明实施例及实施例中的特征可以相互结合,各个实施例可以相互参考和引用。
实施例一
图1给出了本发明实施例一提供的一种直播列表服务系统的架构图,如图1所示,该直播列表服务系统包括:数据层11和列表服务层12。
数据层11包含数据中心111,数据中心111存储在线直播房间的房间信息;列表服务层包含列表服务进程121,列表服务进程121与对应的数据中心连接,连接到同一数据中心的列表服务进程121竞争分布式锁,竞争成功的列表服务进程121根据所述在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心111。
在本实施例中,所述直播列表服务系统具体可理解为一个部署在直播应用软件的后台服务端的服务支持系统,该直播列表服务系统具体可看做一个分布式架构系统,且为保证全球服务部署,该直播列表服务系统具体可在架设于不同地域的后台服务器上实现。
在本实施例中,数据层11以及列表服务层12均可理解为系统中进行直播列表服务的抽象机制,示例性的,可以将数据层11抽象为一个数据管理机制,具体包含了部署在后台服务器中的数据中心111,对于数据层11而言,其主要通过所包含的数据中心111来实现直播列表服务的数据管理,所管理的数据至少包括用户端上所呈现在线直播房间的房间信息;又如,本实施例还可以将列表服务层12抽象为一个列表服务执行机制,具体包含了创建于后台服务器中的列表服务进程121,对于列表服务层12而言,其主要通过列表服务进程121来实现直播列表服务中直播列表数据的生成,且所生成的直播列表数据可以上传存储至数据中心111。
需要说明的是,数据层11中可以包含多个部署在不同地域所对应后台服务器上的数据中心111,具体的,可以在不同地域对应的后台服务器上通过搭建codis集群来形成数据层中的各数据中心,其中,codis集群可理解为一个分布式数据库集群具体可用于进行海量数据的管理,如执行数据的增删改查等管理操作。
图2给出了本发明实施例一所提供直播列表服务系统中数据层所包含数据中心的部署分布示例图;如图2所示,数据中心的部署可以分别以欧洲21、亚洲22以及北美洲23等不同的地域分布来进行,具体可在各地域对应的后台服务器上进行codis集群的搭建,可以理解的是,一个地域上可以包含很多后台服务器,codis集群可以在地域的多台后台服务器上实现分布式搭建;同时,所搭建的每个数据中心通过网络可以向其他数据中心进行数据传递,由此保证全球不同区域的房间信息及直播列表数据相互同步,由此体现了本直播列表服务系统的数据高可用性。
在本实施例中,架设于不同地域内的后台服务器上除进行数据层11所包含数据中心111的部署外,还参与直播列表服务系统中其他层(如列表服务层12)的构设,具体的,可以在各后台服务器上创建作为列表服务层12的列表服务进程121,且对于创建在同一地域各后台服务器上的列表服务进程121而言,均可与部署在该同一地域后台服务器上的同一数据中心连接,即,创建于同一地域后台服务器上的列表服务进程121均与部署在该地域上的同一数据中心111存在连接。
在本实施例中,列表服务进程121具体可用于基于在线直播房间的房间信息生成直播列表数据,且本实施例设置有分布式锁,可以通过分布式锁在连接到同一数据中心的列表服务进程中确定一个列表服务进程获得直播列表数据生成的执行权,并仅由获得分布式锁的列表服务进程进行直播列表数据的生成操作。
其中,所述分布式锁具体可理解为在分布式部署架构下进行数据共享时保证资源数据一致性的进程锁,该分布式锁具有排他性和超时性,示例性的,分布式锁包括解锁状态和上锁状态两个模式,同时还设置有一个上锁状态的持续时长,当分布式锁处于解锁状态时,与之对应的多个进程可以竞争该分布式锁,并当一个进程竞争到该分布式锁时,分布式锁进入上锁状态,且分布式锁处于上锁状态时仅有竞争成功的进程具备执行权力,直至上锁状态达到持续时长,所有进程可再次竞争获取分布式锁。
在本实施例中,列表服务层12所包含列表服务进程121进行的直播列表数据生成操作是周期性重复进行的,本实施例中可设定该生成操作的周期时间与分布式锁上锁状态的持续时长相同,由此,只要有列表服务进程竞争到分布式锁,就可触发执行直播列表数据的生成操作。此外,直播列表数据具体可根据数据中心中所存储在线直播房间的房间信息生成,所述房间信息具体可以包括在线直播房间的房间封面、标题、房主性别、房主名称以及在线总人数等,可作为直播列表数据生成的前提数据。
在本实施例中,考虑到数据中心对所连接各列表服务进程有关数据信息的及时存储,而列表服务进程仅负责直播列表数据的生成,并不具备对所需的数据信息进行保存必要,因此与现有技术相比,当一个列表服务进程所服务在线直播房间发生变更导致房间数据有修改时,所修改的数据将直接存储在数据中心内,并不需要该列表服务进程将修改的数据广播给其他所有列表服务进程,由此省略了列表服务进程的数据同步操作,从而避免了数据同步时在时间及计算资源上的耗费,同时也避免了网络带宽资源在列表服务进程进行数据同步上的占用。
本发明实施例一提供的一种直播列表服务系统,本发明实施例一提供的一种直播列表服务系统,与现有采用进程内存的直播列表服务支持相比,采用列表服务进程进行直播列表的生成操作与采用数据中心进行数据存储,实现了列表服务进程计算与数据存储的分离,并使得一个数据中心能够向多个列表服务进程提供数据支持,由此保证列表服务进程可直接启动无需进行数据同步,极大降低了内存占用,实现了列表服务进程的无状态运行;同时,多个列表服务进程采用分布式锁的方式竞争获取直播列表生成的执行权,无需每个列表服务进程均单独重复执行直播列表生成,大大减少了CPU资源的占用率,列表服务层与数据层相结合的服务系统,保证了直播列表服务的高可用性。
进一步地,如图1所示,该直播列表服务系统还可以包括:数据代理层13以及写入层14;数据代理层13包含数据代理器131,数据代理器131与对应的数据中心111连接,写入层14包含写入进程141,写入进程141与对应的数据代理器131连接,其中,写入进程141用于接收用户端反馈的房间变更信息,并将所述房间变更信息转发至对应的数据代理器131,所述房间变更信息为用户端上的在线直播房间发生变化时对应生成的房间信息;数据代理器131用于将所对应写入进程141转发的房间变更信息写入到对应的数据中心111上,以替换所对应数据中心111上已存储的房间信息,作为新的在线直播房间的房间信息。
在本实施例中,直播列表服务系统包括的数据代理层13以及写入层14同样可理解为系统中进行直播列表服务的抽象机制,示例性的,可以将写入层14抽象为一个数据写入服务执行机制,具体包含了创建于后台服务器中的写入进程141,对于写入层14而言,其主要通过所包含的写入进程141来实现对用户端所反馈数据信息的接收以及向数据中心的写入。
一般情况下,写入进程141可以将所接收的数据信息直接写入到所连接的数据中心111,本实施例考虑到直播列表服务中各所创建进程的高可用性,在写入层14和数据层11之间构设了数据代理层13,可以说明的是,本实施例也可以将数据代理层13抽象为一个数据转发的代理转发机制,具体包含了部署在后台服务器中的数据代理器131,对于数据代理层13而言,其主要通过所包含的数据代理器131来代理转发所对应写入进程14待写入相应数据中心的数据信息。
根据本实施例上述描述,可知在架设于不同地域内的后台服务器上还可以根据需要构设写入层14以及数据代理层13,具体的,可以在各后台服务器上创建作为写入层14的写入进程141,同时,还可在各后台服务器上部署作为数据代理层13的数据代理器131,数据代理器131处于写入进程141及其所对应数据中心111之间。
需要说明的是,同一地域的后台服务器上根据用户端的负载情况可以创建多数量的写入进程141,同时也可以部署多数量的数据代理器131,所部署的多个数据代理器131均可以与部署在同一地域各后台服务器上的数据中心111连接;同时,本实施例创建于同一地域后台服务器上的各写入进程141可以与部署在该后台服务器上的数据代理器131进行连接,但二者并不存在对应的连接关系,其连接可看做动态随机的,如,一个写入进程141当前可以与一个数据代理器131连接,当该数据代理器出现故障时,写入进程可切换所连接的数据代理器(图1将处于同一地域中的写入进程141与数据代理器131以一一对应关系连接,但实际应用中连接关系并不局限于此)。
在本实施例中,对于写入层中14的写入进程141而言,其具体可以接收用户端反馈的房间变更信息,在具体实现中,用户端反馈的房间变更信息可以首先通过同样构设于后台服务器上的外部输入服务机制,之后再由外部输入服务机制传递给写入进程进行房间变更信息的接收;写入进程141所接收的房间变更信息将再次转发至该写入进程对应的数据代理器131上,数据代理器131可继续将房间变更信息写入到所对应的数据中心上,从而实现数据中心上已存储房间信息的替换,尤其将房间变更信息作为新的房间信息,具体的,数据代理器可优选为与codis集群关联的分布式代理器proxy。
可以理解的是,所述房间变更信息具体可在用户端产生,其具体可以在用户端的在线直播房间中存在数据变更时生成,常见的数据变更可以有房间人数的调整,房间内直播用户信息的变更,房间名称的更改等。同时,可以理解的是,将房间变更信息写入数据中心后,上述列表服务层12的列表服务进程121可依据更新后的房间信息进行直播列表数据的生成,由此实现了直播列表数据随房间信息的变更而实时变更。
本实施例直播列表服务系统中所包括的写入层以及数据代理层,写入层所包含的写入进程由于仅考虑房间变更信息的接收,无需直接对该房间变更信息进行保存,使得写入进程更好的处于无状态模式,同时保证了写入进程的高可用性,进而有效提升整个直播列表服务系统的高可用性。
在上述实施例的基础上,写入层14中创建并启动新写入进程141的条件为:监测到当前进行房间变更信息反馈的用户端数量达到第一负载均衡上限值;写入层14中关闭已启动写入进程141的条件为:监测到当前进行房间变更信息反馈的用户端数量低于第一负载均衡下限值。
在本实施例中,写入层14所包含写入进程141的数量是可以动态变化的,其具体考虑用户端进行房间变更信息的反馈数量的均衡,可以理解的是,创建于后台服务器上的写入进程在一段时间内能够接收的数据量是有限的,为保证数据接收的负载均衡,可预先创建一定数量的写入进程,且可在所监测到的进行房间变更信息反馈的用户端数量达到第一负载均衡上限值时,动态创建新的写入进程,并启动新创建的写入进程进行数据接收的操作;同样,当进行房间变更信息反馈的用户端数量小于第一负载均衡下限值时,可以动态的关闭当前处于工作状态的写入进程,以减少写入进程的参与量。
本实施例的上述设置,所创建的写入进程满足启动条件时,无需所关联数据到该写入进程上的同步就能直接启动进入工作模式,上述设置同样也不会因为写入进程的关闭而导致所处理数据的丢失,由此体现了本实施例所提供直播列表服务系统的动态伸缩性,该动态伸缩的特性也体现了直播列表服务系统的高可用性。
进一步地,写入层14中各写入进程141的进程名称预先存储在进程调用表中,以实现按照所述进程调用表中的进程名称来调用相应的写入进程141接收用户端反馈的房间变更信息。
一般的,现有的进程调用多为基于IP地址的进程调用,其容易出现的问题就是进程的IP地址发生变化时,继续基于预先写入的IP地址无法正常调用写入进程,在本实施例中,写入层14中的各写入进程141在最初创建时都设置有相应的进程名称,本实施例可以将各写入进程141的进程名称预先存储在进程调用表中,并考虑直接按照进程调用表中的进程名称来调用相应的写入进程,从而实现了写入进程的灵活调用,保证了写入层在进程调用方面的高可用性。
进一步地,数据代理层13中的数据代理器131具体可用于监测到自身运行故障时,向对应的写入进程推送备选数据代理器,并中断与所对应写入进程的连接,以使对应的写入进程通过与所述备选数据代理器连接将房间变更信息写入到相应的数据中心;其中,所述备选数据代理器从连接到同一数据中心的其他数据代理器中选定。
在本实施例中,数据代理器131具体可用于数据的代理转发,数据代理器131作为一个转发纽带连接写入进程和数据中心,当数据代理器131自身运行故障(如无法正常进行数据转发等)时,数据代理器131可自主进行主备切换,即自动确定一个备用数据代理器分别于写入进程和数据中心连接,以使写入进程通过该备用数据代理器进行房间变更信息到数据中心的正常写入。本实施例优选备用数据代理器从与数据代理器自身处于同一地域且连接到同一数据中心的其他数据代理器中选择,由此保证了数据写入数据中心的高可用性,从而实现了整个写入层的高可用性。
示例性的,图3给出了本发明实施例一所提供直播列表服务系统中房间变更信息写入的实现示例图。本实施例在该示例图中所提供上述直播列表服务系统的各层同样可构设在任一地域所架设后台服务器上,如图3所示,主要示出了写入层31、数据代理层32以及数据层33,同时还示出了架设于后台服务器上的外部输入机制30,该外部输入机制30中存在外部输入接口,用于接收用户端反馈的房间更新数据;写入层31可以根据接收需求按照进程名称进行写入进程的调用,所调用的各写入进程可分别负责接收经外部输入机制30所包含外部输入接口传输的房间变更数据;各写入进程与数据代理层32中的数据代理器建立连接,从而经过数据代理器将房间变更数据转发给作为数据层33的数据中心,由此基于本实施例提供的直播列表服务系统实现房间数据到后台服务器的更新。
在图3所示的房间变更信息写入的实现过程中,写入进程本身无需进行数据存储,由此可以保证所调用写入进程数量的动态伸缩,数据代理层可以在写入进程所连接数据代理器故障时自主进行主备切换,从而选择备用数据代理器继续进行房间变更信息到数据中心的写入,保证了直播列表服务中数据写入操作的高可用。
以上述实施例为基础,如图1所示,本实施例提供的直播列表服务系统还可以包括列表代理层15和前端服务层16;列表代理层15包含列表代理器151,列表代理器151与对应的列表服务进程121连接;前端服务层16包含前端服务进程161,前端服务进程161与对应的列表代理器151连接。
在本实施例中,直播列表服务系统包括的列表代理层15和前端服务层16同样可理解为系统中进行直播列表服务的抽象机制,示例性的,可以将列表代理层15看作与列表服务层12关联的,用于对传输至列表服务层12的数据进行代理转发的代理转发机制,其与上述数据代理层13的区别主要在于二者服务的对应不同,列表代理层15主要服务于列表服务层12,且构设于前端服务层16和列表服务层12之间,列表代理层15中具备包含了部署在后台服务器中的列表代理器151,具体可用来代理转发前端服务层到列表服务层的数据信息,以此来提高前端服务层16与列表服务层12数据交互实现的高可用性,同时,该列表代理器同样可优选采用分布式代理器proxy来进行列表代理层的部署。
在本实施例中,可以将前端服务层16抽象为一个用户端请求监听机制,具体包含了创建于后台服务器中的前端服务进程161,对于前端服务层16而言,其主要通过所包含的前端服务进程161来监听用户端是否有请求发送,并接收用户端发送的请求,然后可通过列表代理器151转发给列表服务进程121。
在上述实施例的基础上,前端服务进程161用于接收用户端发送的直播列表查询请求并转发至对应的列表代理器151;列表代理器151用于将由所对应前端服务进程161发送的直播列表查询请求转发至对应的列表服务进程121;相应的,列表服务进程121还可以用于接收所对应列表代理器151转发的直播列表查询请求,并从所对应数据中心111获取所述直播列表查询请求对应的目标直播列表数据;将所述目标直播列表数据通过所连接列表代理器151及相应的前端服务进程161反馈给所述用户端。
需要说明的是,本实施例创建于同一地域后台服务器上的各前端服务进程161可以与部署在该后台服务器上的列表代理器151进行连接,但二者并不存在对应的连接关系,其连接可看做动态随机的(图1将处于同一地域中的前端服务进程161与列表代理器151以一一对应关系连接,但实际应用中并不局限于此),同时,创建于同一地域后台服务器上的各列表服务进程121与与部署在该后台服务器上列表代理器151的连接同样为动态随机的,如,一个列表代理器151可以与一个列表服务进程121连接,当列表服务进程宕机时,列表代理器可切换所连接的列表服务进程(图1将处于同一地域中的列表服务进程121与列表代理器151以一一对应关系连接,但实际应用中并不局限于此)。
在本实施例中,上述前端服务层16、列表代理层15以及列表服务层12之间的配合具体可实现用户端向后台服务器进行直播列表查询求的接收和有关数据信息的反馈。图4给出了本发明实施例一所提供直播列表服务系统中列表查询服务的实现示例图。本实施例在该示例图中所提供上述直播列表服务系统的各层同样可构设在任一地域所架设后台服务器上,如图4所示,具体包括了直播应用软件的客户端40、存在于后台服务器上的前端服务层41、列表代理层42、列表服务层43以及数据层44。
由图4可以看出,直播应用软件的使用者需要进行直播列表查询时,获得直播应用软件以设定时间间隔刷新所显示直播列表时,可以通过用户端40生成直播列表查询请求,前端服务层41同样可以按照进程名称调用前端服务进程来接收该直播列表查询请求,之后可转发给列表代理层42中与该前端服务进程连接的列表代理器,并由列表代理器将该直播列表查询请求转发给列表服务层43中的列表服务进程,从而使列表服务进程在接到该直播列表查询请求后从数据层44与之连接的数据中心中获得该直播列表查询请求对应的目标直播列表数据;之后列表服务进程可沿相反路径通过列表代理器以及前端服务进程将目标直播列表数据反馈给用户端40,以此实现用户端与后台服务器的数据交互。
在本实施例所提供直播列表服务系统中,所构设前端服务层中的前端服务进程同样处于无状态模式下,无需进行数据处理和数据存储,仅简单实现数据的传输,由此保证了前端服务进程的动态伸缩性以及高可用性。此外,本实施例中所构设的列表代理层也同样起到了容灾切换的作用,从而保证自身或当前所连接列表服务进程不可用时,及时选定备用的列表代理器或列表服务进程,从而及时对直播列表查询请求进行响应,以从数据中心内及时获取相关的目标直播列表数据,保证直播列表服务的高可用性。
在本实施例中,列表代理层15中的列表代理器151具体可用于监测到向当前所连接列表服务进程发送所述直播列表查询请求失败时,中断与所连接列表服务进程的连接;确定当前所连接列表服务进程连接的目标数据中心,从与所述目标数据中心连接的其他列表服务进程中选定备选列表服务进程,并将所述直播列表查询请求转发至所述备选列表服务进程。
可以理解的是,与列表服务进程121连接的列表代理器151无法向列表服务进程121成功发送直播列表查询请求,可认为该列表服务进程121出现了问题,此时列表代理器151可中断与该列表服务进程121的连接,然后从与该列表服务进程121处于同一数据中心的其他列表服务进程中选定一个作为备选列表服务进程并与之建立连接,最终将直播列表查询请求通过该备选列表服务进程得到响应。
需要说明的是,前端服务层16中创建并启动新前端服务进程161的条件为:监测到当前发送直播列表查询请求的用户端数量达到第二负载均衡上限值;前端服务层16中关闭已启动前端服务进程161的条件为:监测到当前发送直播列表查询请求的用户端数量低于第二负载均衡下限值。
在本实施例中,前端服务层16所包含前端服务进程161的数量也是可以动态变化的,其具体可以考虑用户端进行直播列表服务的各种请求时请求数量的均衡,可以理解的是,创建于后台服务器上的前端服务进程在一段时间内能够接受的请求数量是有限的,为保证请求接收的负载均衡,可预先创建一定数量的前端服务进程,且可在所监测到的进行直播列表查询请求等类似请求的用户端数量达到第二负载均衡上限值时,动态创建信息的前端服务进程,并启动新创建前端服务进程进行请求接收的操作;同样,当进行直播列表查询请求等类似请求的用户端数量地域第二负载均衡下限值时,可以动态的关闭当前处于工作状态的一部分前端服务进程,以减少前端服务进程的参与量。
本实施例的上述设置,所创建的前端服务进程满足启动条件时,无需关联数据到该前端服务进程的同步就能直接启动进入工作模式,上述设置同样也不会因为前端服务进程的关闭而导致所处理数据的丢失,由此体现了本实施例所提供直播列表服务系统的动态伸缩行,前端服务层所具备的动态伸缩特征也体现了直播列表服务系统的高可用性。
在上述实施例的基础上,数据层11中的数据中心111还可以用于监测到所存储在线直播房间的房间信息和/或直播列表数据发生更新时,将更新后的房间信息和/或直播列表数据以消息形式转发给其他数据中心,以保证数据层11中各数据中心111内的房间信息及直播列表数据同步。
在本实施例中,考虑到直播应用软件具备全球服务的特点,本实施例提供的直播列表服务系统应该支持直播列表服务所需数据的全球性同步。本实施例具体可通过基于地域所部署各数据中心之间的网络交互功能实现数据中心间所存储数据信息的同步。示例性的,数据层11所包含数据中心111中存储的数据信息至少可以包括在线直播房间的房间信息以及基于房间信息生成的直播列表数据,房间信息可以根据写入进程实现信息的更新,直播列表数据具体依据变更后的房间信息实现更新,当数据中心监测到有数据信息存在变更时,就可实时的将变更后的数据信息通过消息以命令通道的形式实现数据同步,由此保证数据中心所存储数据信息在全球不同地域的相互同步。
需要理解的是,由于网络延迟等因素的影响,可能会导致跨地域信息传输的延迟,但是本直播列表服务系统与现有技术相比能够更好的保证同一地域内数据信息的实时性,保证了直播列表服务的分区可用,由此提高同地域用户交互的体验感受。本实施例所提供的直播列表服务系统,整个系统架构中仅有数据层进行数据管理,其他各层都处于无数据状态,方便其他各层所包含代理器或进程的动态伸缩以及数据交互时的路径规划,整个直播列表服务过程省时省力,同时也具备节省网络带宽的效果。
实施例二
图5为本发明实施例二提供的一种直播列表服务方法的流程示意图,该方法适用于对直播列表实现提供服务支持的情况,该方法可以由本发明上述实施例一提供的直播列表服务系统执行。
其中,根据上述实施例一对直播列表服务系统的描述,可知直播列表服务系统具体包括了:包含数据中心的数据层、包含列表服务进程的列表服务层、包含列表代理器的列表代理层、包含数据代理器的数据代理层、包含写入进程的写入层以及包含前端服务进程的前端服务层。本实施例二提供的直播列表服务的方法具体可看做直播列表服务系统中各层之间的信息交互。
如图5所示,本实施例二提供的一种直播列表服务方法,具体包括如下操作:
S201、在分布式锁当前处于解锁状态时,连接到同一数据中心的列表服务进程竞争分布式锁。
在本实施例中,所述分布式锁具体可理解为在分布式部署架构下进行数据共享时保证资源数据一致性的进程锁,该分布式锁具有排他性和超时性,且主要包括解锁状态和上锁状态两种锁模式。本步骤可以让连接到同一数据中心的列表服务进程在分布式锁处于解锁状态时进行分布式锁的竞争。
可以知道的是,根据地域分布的不同,在各地域所架设的后台服务器上部署有分布式数据库codis集群,以作为数据层中的各数据中心,且同一地域内后台服务器上创建的列表服务进程与该地域所部署的数据中心存在连接,连接在同一数据中心的各列表服务进程可以通过竞争分布式锁来获取直播列表生成的执行权,此时其他列表服务进程可处于等待状态,以此减少列表服务进程不必要的资源占用,同时提高直播列表服务的高可用性。
S202、竞争成功的列表服务进程根据在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心。
在本实施例中,所述房间信息预先存储在数据中心上,所述房间信息可以包括在线直播房间的房间封面、标题、房主性别、房主名称以及在线总人数等,为直播列表数据的生成提供基础数据;此外,所述分布式锁在列表服务进程竞争成功后处于上锁状态,并在所述上锁状态持续设定时间阈值后解锁。
具体的,其中一个列表服务进程竞争成功时,相当于该列表服务进程取得了执行权,分布式锁可自行进入上锁状态,忽略其他列表服务进程的竞争,然而直播列表数据的生成操作是周期性重复进行的,每次生成操作的执行就需要进行一次执行权的竞争,由此本实施例为分布式锁设定了上锁状态的持续时长,且使该持续时长等同于生成操作的周期时间,由此,在分布式锁处于解锁状态后,列表服务进程就可以再次进行分布式锁的竞争,且只要有列表服务进程竞争到分布式锁,就可触发执行直播列表数据的生成操作。
本发明实施例二提供的一种直播列表服务方法,连接到同一数据中心的列表服务进程能够通过竞争分布式锁来获得直播列表生成的执行权,并且所生成的直播列表数据之间更新存储在数据中心上,供同一数据中心所连接的其他列表服务进程共用,与现有采用进程内存的直播列表服务支持相比,实现了列表服务进程计算与数据存储的分离,并使得一个数据中心能够向多个列表服务进程提供数据支持,由此保证列表服务进程可直接启动无需进行数据同步,极大降低了内存占用,并实现了列表服务进程的无状态运行;同时生成执行权的竞争使得每个列表服务进程无需均单独重复执行直播列表生成,大大减少了CPU资源的占用率,保证了直播列表服务的高可用性。
在本实施例的一个可选实施例中,该直播列表服务方法还可以包括:通过调用的写入进程接收用户端反馈的房间变更信息,并将所述房间变更信息转发至对应的数据代理器;通过数据代理器将接收的房间变更信息写入到对应的数据中心上,以替换所对应数据中心上已存储的房间信息信息,作为新的在线直播房间的房间信息。
本实施例提供的直播列表服务方法中还进一步描述了直播列表服务系统的写入层及数据代理层相互配合实现房间变更信息到所连接数据中心写入的过程。在该写入实现中,具体由写入层的写入进程接收用户端反馈的房间变更信息,且本实施例考虑到直播列表服务中各所创建进程的无状态性,写入进程首先将房间变更信息转发给数据代理层中的数据代理器,然后由数据代理器来代理转发待写入相应数据中心的房间变更信息。所述数据代理器可以在自身出现故障是提供一个备选数据代理器继续进行房间变更信息到数据中心的写入,由此提高整个房间变更信息写入的高可用性。
在本实施例的另一个可选实施例中,该直播列表服务方法还可以包括:通过调用的前端服务进程接收用户端发送的直播列表查询请求并转发至对应的列表代理器;通过列表代理器将所述直播列表查询请求转发至对应的列表服务进程;通过列表服务进程接收转发的直播列表查询请求,并从所对应数据中心获取直播列表查询请求对应的目标直播列表数据;通过列表服务进程将所述目标直播列表数据转发至对应的列表代理器;通过列表代理器将所述目标直播列表数据转发至对应的前端服务进程;通过前端服务进程将所述目标直播列表数据反馈给所述用户端,以使所述用户端以设定的列表展示形式展示所述目标直播列表数据。
本实施例提供的直播列表服务方法中还进一步描述了直播列表服务系统的前端服务层、列表代理层以及列表服务层相互配合实现直播列表数据查询的过程。在该直播列表查询实现中,具体由前端服务层的前端服务进程接收用户端发出的直播列表查询请求,然后由起到容灾切换作用的列表代理层中的列表代理器接收该直播列表查询请求并代理转发至列表服务层的列表服务进程,列表服务进程通过数据层的数据中心进行数据信息查询获得相应的目标直播列表数据,最终将该目标直播列表数据原路反馈给用户端,以使用户端基于该目标直播列表数据进行直播列表展示。
作为本实施例二的又一个可选实施例,该直播列表服务方法还可以包括:数据中心监测到当前存储的在线直播房间的房间信息和/或直播列表数据为更新后数据,将更新后的房间信息和/或直播列表数据以消息形式转发给数据层中其他数据中心,以实现各数据中心内房间信息及直播列表数据同步。
该可选实施例中提到了直播列表服务系统的数据同步实现,示例性的,考虑到直播应用软件具备全球服务的特点,本实施例提供的直播列表服务方法基于数据中心间的通信支持了直播列表服务所需数据的全球性同步,本实施例具体可通过基于地域所部署各数据中心之间的网络交互功能实现数据中心间所存储数据信息的同步。
可以理解的是,由于全球各个地域的用户都有可能使用直播应用软件开启直播,通过本实施例所提供的同步数据方式可以保证全球不同地域的直播列表数据相互同步,由于网络延迟可能会导致跨区信息的延迟,但是同一地域分区内的数据仍然是可以保证数据的实时同步,由此提高了同区域用户交互体验感受。此外,在不同地域分区存在网络分区是,还可以保证同一分区内在线直播房间信息到相对应数据中心的正常写入,由此,基于该房间信息的直播列表生产以及查询也能够正常进行,本实施例提供的直播列表服务方法至少达到了分区可用的效果。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的连接的建立方法和/或图像拼接方法。
值得注意的是,上述连接的建立装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (15)
1.一种直播列表服务系统,其特征在于,包括:数据层及列表服务层;
所述数据层包含数据中心,所述数据中心存储在线直播房间的房间信息;
所述列表服务层包含列表服务进程,所述列表服务进程与对应的数据中心连接,连接到同一数据中心的列表服务进程竞争分布式锁,竞争成功的列表服务进程根据所述在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心;
所述列表服务进程不进行所述直播列表数据的存储。
2.根据权利要求1所述的系统,其特征在于,还包括:数据代理层以及写入层;
所述数据代理层包含数据代理器,所述数据代理器与对应的数据中心连接,所述写入层包含写入进程,所述写入进程与对应的数据代理器连接,
所述写入进程用于接收用户端反馈的房间变更信息,并将所述房间变更信息转发至对应的数据代理器,所述房间变更信息为用户端上的在线直播房间发生变化时对应生成的房间信息;
所述数据代理器用于将所对应写入进程转发的房间变更信息写入到对应的数据中心上,以替换所对应数据中心上已存储的房间信息,作为新的在线直播房间的房间信息。
3.根据权利要求2所述的系统,其特征在于,
所述写入层中创建并启动新写入进程的条件为:监测到当前进行房间变更信息反馈的用户端数量达到第一负载均衡上限值;
所述写入层中关闭已启动写入进程的条件为:监测到当前进行房间变更信息反馈的用户端数量低于第一负载均衡下限值。
4.根据权利要求2所述的系统,其特征在于,所述写入层中各写入进程的进程名称预先存储在进程调用表中,以实现按照所述进程调用表中的进程名称来调用相应的写入进程接收用户端反馈的房间变更信息。
5.根据权利要求2所述的系统,其特征在于,所述数据代理层中的数据代理器,具体用于:
监测到自身运行故障时,向对应的写入进程推送备选数据代理器,并中断与所对应写入进程的连接,以使对应的写入进程通过与所述备选数据代理器连接将房间变更信息写入到相应的数据中心;
其中,所述备选数据代理器从连接到同一数据中心的其他数据代理器中选定。
6.根据权利要求1所述的系统,其特征在于,还包括:列表代理层和前端服务层;
所述列表代理层包含列表代理器,所述列表代理器与对应的列表服务进程连接;
所述前端服务层包含前端服务进程,所述前端服务进程与对应的列表代理器连接。
7.根据权利要求6所述的系统,其特征在于,
所述前端服务进程用于接收用户端发送的直播列表查询请求并转发至对应的列表代理器;
所述列表代理器用于将由所对应前端服务进程发送的直播列表查询请求转发至对应的列表服务进程;
相应的,所述列表服务进程,还用于:
接收所对应列表代理器转发的直播列表查询请求,并从所对应数据中心获取所述直播列表查询请求对应的目标直播列表数据;
将所述目标直播列表数据通过所连接列表代理器及相应的前端服务进程反馈给所述用户端。
8.根据权利要求7所述的系统,其特征在于,所述列表代理层中的列表代理器,具体用于:
监测到向当前所连接列表服务进程发送所述直播列表查询请求失败时,中断与所连接列表服务进程的连接;
确定当前所连接列表服务进程连接的目标数据中心,从与所述目标数据中心连接的其他列表服务进程中选定备选列表服务进程,并将所述直播列表查询请求转发至所述备选列表服务进程。
9.根据权利要求6所述的系统,其特征在于,
所述前端服务层中创建并启动新前端服务进程的条件为:监测到当前发送直播列表查询请求的用户端数量达到第二负载均衡上限值;
所述前端服务层中关闭已启动前端服务进程的条件为:监测到当前发送直播列表查询请求的用户端数量低于第二负载均衡下限值。
10.根据权利要求1-9任一项所述的系统,其特征在于,所述数据层中的数据中心,还用于:
监测到所存储在线直播房间的房间信息和/或直播列表数据发生更新时,将更新后的房间信息和/或直播列表数据以消息形式转发给其他数据中心,以保证所述数据层中各数据中心内的房间信息及直播列表数据同步。
11.根据权利要求1-9任一项所述的系统,其特征在于,所述数据层中的各数据中心按照预设的地域分布部署,各所述数据中心为搭建在地域所对应后台服务器上的codis集群。
12.一种直播列表服务方法,其特征在于,由权利要求1-11任一项所述的直播列表服务系统执行,所述方法包括:
在分布式锁当前处于解锁状态时,连接到同一数据中心的列表服务进程竞争分布式锁;
竞争成功的列表服务进程根据在线直播房间的房间信息生成直播列表数据,并将所述直播列表数据发送给对应的数据中心,其中,所述房间信息预先存储在所述数据中心上,所述分布式锁在列表服务进程竞争成功后处于上锁状态,并在所述上锁状态持续设定时间阈值后解锁。
13.根据权利要求12所述的方法,其特征在于,还包括:
通过调用的写入进程接收用户端反馈的房间变更信息,并将所述房间变更信息转发至对应的数据代理器;
通过数据代理器将接收的房间变更信息写入到对应的数据中心上,以替换所对应数据中心上已存储的房间信息,作为新的在线直播房间的房间信息。
14.根据权利要求12所述的方法,其特征在于,还包括:
通过调用的前端服务进程接收用户端发送的直播列表查询请求并转发至对应的列表代理器;
通过列表代理器将所述直播列表查询请求转发至对应的列表服务进程;
通过列表服务进程接收转发的直播列表查询请求,并从所对应数据中心获取直播列表查询请求对应的目标直播列表数据;
通过列表服务进程将所述目标直播列表数据转发至对应的列表代理器;
通过列表代理器将所述目标直播列表数据转发至对应的前端服务进程;
通过前端服务进程将所述目标直播列表数据反馈给所述用户端,以使所述用户端以设定的列表展示形式展示所述目标直播列表数据。
15.根据权利要求12-14任一项所述的方法,其特征在于,还包括:
数据中心监测到当前存储的在线直播房间的房间信息和/或直播列表数据为更新后数据,将更新后的房间信息和/或直播列表数据以消息形式转发给数据层中其他数据中心,以实现各数据中心内房间信息及直播列表数据同步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911202053.0A CN110933448B (zh) | 2019-11-29 | 2019-11-29 | 直播列表服务系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911202053.0A CN110933448B (zh) | 2019-11-29 | 2019-11-29 | 直播列表服务系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110933448A CN110933448A (zh) | 2020-03-27 |
CN110933448B true CN110933448B (zh) | 2022-07-12 |
Family
ID=69846995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911202053.0A Active CN110933448B (zh) | 2019-11-29 | 2019-11-29 | 直播列表服务系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110933448B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822528B (zh) * | 2020-12-29 | 2023-04-18 | 百果园技术(新加坡)有限公司 | 直播列表服务系统、直播列表管理方法、服务器及介质 |
CN112766705A (zh) * | 2021-01-13 | 2021-05-07 | 北京洛塔信息技术有限公司 | 分布式工单处理方法、系统、设备和存储介质 |
CN112995691B (zh) * | 2021-02-26 | 2023-02-28 | 北京达佳互联信息技术有限公司 | 直播数据处理方法、装置、电子设备及存储介质 |
CN113301379B (zh) * | 2021-05-26 | 2022-10-04 | 广州方硅信息技术有限公司 | 一种直播列表更新方法、装置、系统和存储介质 |
CN113171613B (zh) * | 2021-05-27 | 2022-08-05 | 腾讯科技(深圳)有限公司 | 组队对局方法、装置、设备及存储介质 |
CN114745571B (zh) * | 2022-04-15 | 2024-01-23 | 网易(杭州)网络有限公司 | 直播状态信息同步方法、装置、电子设备和可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511969A (zh) * | 2015-11-25 | 2016-04-20 | 中国船舶工业系统工程研究院 | 一种跨进程的线程间进行互斥的方法 |
CN106385594A (zh) * | 2016-09-18 | 2017-02-08 | 深圳市青柠互动科技开发有限公司 | 一种优化视频直播服务的方法 |
CN106713942A (zh) * | 2016-12-27 | 2017-05-24 | 广州华多网络科技有限公司 | 视频处理方法和装置 |
CN107158697A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对进程进行识别的方法及装置 |
CN109101341A (zh) * | 2017-06-21 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 分布式锁的分配方法及设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030095447A1 (en) * | 2001-11-20 | 2003-05-22 | Koninklijke Philips Electronics N.V. | Shared memory controller for display processor |
US8612300B2 (en) * | 2006-09-08 | 2013-12-17 | Ariba, Inc. | Buyer/supplier network that aids supplier enablement through collaboration between buyers and suppliers |
US8762642B2 (en) * | 2009-01-30 | 2014-06-24 | Twinstrata Inc | System and method for secure and reliable multi-cloud data replication |
US20130239018A1 (en) * | 2012-03-12 | 2013-09-12 | W.W. Grainger, Inc. | Graphical display responsive to voice input |
US20180096306A1 (en) * | 2016-09-30 | 2018-04-05 | Linkedin Corporation | Identifying a skill gap based on member profiles and job postings |
CN108347623B (zh) * | 2017-01-23 | 2021-05-25 | 北京新唐思创教育科技有限公司 | 在线直播内容的生成方法、装置及在线直播系统 |
CN110287044B (zh) * | 2019-07-02 | 2021-08-03 | 广州虎牙科技有限公司 | 无锁共享内存处理方法、装置、电子设备及可读存储介质 |
-
2019
- 2019-11-29 CN CN201911202053.0A patent/CN110933448B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511969A (zh) * | 2015-11-25 | 2016-04-20 | 中国船舶工业系统工程研究院 | 一种跨进程的线程间进行互斥的方法 |
CN106385594A (zh) * | 2016-09-18 | 2017-02-08 | 深圳市青柠互动科技开发有限公司 | 一种优化视频直播服务的方法 |
CN106713942A (zh) * | 2016-12-27 | 2017-05-24 | 广州华多网络科技有限公司 | 视频处理方法和装置 |
CN107158697A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对进程进行识别的方法及装置 |
CN109101341A (zh) * | 2017-06-21 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 分布式锁的分配方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110933448A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110933448B (zh) | 直播列表服务系统及方法 | |
TWI724106B (zh) | 資料中心間的業務流量控制方法、裝置及系統 | |
EP3490224B1 (en) | Data synchronization method and system | |
US9999030B2 (en) | Resource provisioning method | |
US7849138B2 (en) | Peer-to-peer multi-party voice-over-IP services | |
WO2019101020A1 (zh) | 多终端协同工作的方法,终端设备以及多终端协同系统 | |
US20030041138A1 (en) | Cluster membership monitor | |
CN112463366A (zh) | 面向云原生的微服务自动扩缩容和自动熔断方法及系统 | |
CN113824723B (zh) | 一种应用于音视频数据传输的端到端系统解决方法 | |
CN111800285A (zh) | 实例迁移方法和装置以及电子设备 | |
US20180123969A1 (en) | Openflow protocol-based resource control method and system, and apparatus | |
CN111083177B (zh) | 基于协同网关的跨域协同交互方法 | |
CN110719311A (zh) | 分布式协调服务方法、系统及计算机可读存储介质 | |
CN115567486A (zh) | 一种mlag环境下的租约同步方法、装置、设备及介质 | |
CN111865632A (zh) | 分布式数据存储集群的切换方法及切换指令发送方法和装置 | |
CN113485821A (zh) | 一种高可靠视频会议系统及其控制方法、存储介质 | |
CN109560903A (zh) | 一种完全容灾的车载指挥通信系统 | |
CN111541608B (zh) | 一种网络通信的方法、系统以及相关装置 | |
CN113326100A (zh) | 一种集群管理方法、装置、设备及计算机存储介质 | |
CN113765690A (zh) | 集群切换方法、系统、装置、终端、服务器及存储介质 | |
US20230144294A1 (en) | Method for data transmission of audio and video in end-to-end system | |
CN113127271A (zh) | 交易系统的部署方法、装置、计算机设备和存储介质 | |
CN209134427U (zh) | 一种完全容灾的车载指挥通信系统 | |
WO2015043257A1 (zh) | 分布式cdn系统的建链方法、系统及计算机存储介质 | |
CN114567894A (zh) | 无线自组织网络多控制器通信方法 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231017 Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd. Address before: 511400 floor 5-13, West Tower, building C, 274 Xingtai Road, Shiqiao street, Panyu District, Guangzhou City, Guangdong Province Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd. |