CN113709514B - 一种数据处理方法、装置和电子设备 - Google Patents

一种数据处理方法、装置和电子设备 Download PDF

Info

Publication number
CN113709514B
CN113709514B CN202111026489.6A CN202111026489A CN113709514B CN 113709514 B CN113709514 B CN 113709514B CN 202111026489 A CN202111026489 A CN 202111026489A CN 113709514 B CN113709514 B CN 113709514B
Authority
CN
China
Prior art keywords
user
dotting data
time
message receiving
data
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
CN202111026489.6A
Other languages
English (en)
Other versions
CN113709514A (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 Yiyi Education Technology Co ltd
Original Assignee
Beijing Yiyi Education 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 Beijing Yiyi Education Technology Co ltd filed Critical Beijing Yiyi Education Technology Co ltd
Priority to CN202111026489.6A priority Critical patent/CN113709514B/zh
Publication of CN113709514A publication Critical patent/CN113709514A/zh
Application granted granted Critical
Publication of CN113709514B publication Critical patent/CN113709514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/08Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
    • G09B5/10Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations all student stations being capable of presenting the same information simultaneously
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Educational Technology (AREA)
  • Educational Administration (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种数据处理方法、装置和电子设备,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。

Description

一种数据处理方法、装置和电子设备
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种数据处理方法、装置和电子设备。
背景技术
目前,网校为用户提供在线直播课程,为了保证用户在直播过程中的体验,必须保证系统在预估的并发量范围内提供稳定可靠的在线教育直播服务,保证老师和学生之间的互动流畅且稳定。为了保证服务质量,全链路压测可以说是必不可缺少的一环。因为在线教育直播的互动场景很丰富,所以网络层面的流量回放很难实现复杂的业务场景的压测。而且又因为在线教育直播课的互动性很强,且老师与学生的行为的随机性较强,很难提前预测,所以,导致业务峰值很不稳定,即波峰与波谷的差距很大,也就给传统的压测方式的带来了很大的困难。
发明内容
为解决上述问题,本发明实施例的目的在于提供一种数据处理方法、装置和电子设备。
第一方面,本发明实施例提供了一种数据处理方法,包括:
获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
第二方面,本发明实施例还提供了一种数据处理装置,包括:
获取模块,用于获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
排列模块,用于按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
分类模块,用于按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
压测模块,用于将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
第三方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面所述的方法的步骤。
第四方面,本发明实施例还提供了一种电子设备,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行第一方面所述的方法的步骤。
本发明实施例上述第一方面提供的方案中,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例1所提供的一种数据处理方法的流程图;
图2示出了本发明实施例2所提供的一种数据处理装置的结构示意图;
图3示出了本发明实施例3所提供的一种电子设备的结构示意图。
具体实施方式
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
网校为用户提供在线直播课程,为了保证用户在直播过程中的体验,我们必须保证系统在预估的并发量的范围内提供稳定可靠的在线教育直播服务,保证老师和学生之间的互动流畅且稳定。为了保证服务质量,全链路压测可以说是必不可缺少的一环。因为在线教育直播的互动场景很丰富,所以网络层面的流量回放很难实现复杂的业务场景的压测。而且又因为在线教育直播课的互动性很强,且老师与学生的行为的随机性较强,很难提前预测,所以导致业务峰值很不稳定,即波峰与波谷的差距很大,也就给传统方式的压测带来了很大的困难。传统方式的压测一般会长时间模拟稳定的系统需要接受的最大峰值长时间的压测。这其实会导致压测与实际线上的流量很不准确,为了撑住压测,不断的增加资源即增加成本。而真实的线上流量并不需要这么多的资源。本专利提出的方案能够用线上的真实数据完美的模拟线上真实的流量,从而完成复杂业务场景的流量回放的全链路压测。
基于此,本申请实施例提出一种数据处理方法、装置和电子设备,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。
首先,用户直播过程中的所有交互消息需要通过打点的形式记录下来,这是实现复杂业务场景的流量回放的基础。在此基础之上对打点数据进行分析,首先以直播为单位计算出当前直播的开始时间。再次以每一个用户为基础,计算每一个用户打点数据相对于直播开始的发生的时间偏移量,得到当前用户所有消息发生的时间点。之后把每一节需要压测的直播课的用户均匀的分配到所有的压测机上,下发压测指令后,等待整个压测过程完成即可。通过这种方式可以完美的复刻线上的流量。
在对本申请各实施例的内容进行说明之前,先对以下术语进行解释:
用户打点数据:在线教育直播中的用户打点数据指的是在用户参与直播的过程中,与其他用户包括其他学生,助教,老师等进行互动产生的离散的数据包。
即每个打点数据,就是用户在在线课堂直播时进行的每个操作所产生的日志消息。
流量回放:是软件系统的一种测试方法,它是通过复制线上真实流量并重新灌入到修改后的系统来确定新的修改是否有隐藏的问题,以此快速并可靠的进行自动化测试。
全链路压测:对一个系统的整个核心链路进行压测,以在线教育的直播服务为例来说,整个系统分为很多环节,各自开发并测试自己负责业务,之后很多业务线合并到一起形成一个庞大的系统,这时候就需要从整体上对整个系统进行压测,当然这种压测不仅要压测业务,还需要压测中间件,网络等一些基础服务于设施。这个压测对系统整体的性能瓶颈的发现有着至关重要的作用。如在线教育直播系统必须经过充分的全链路压测,才能够上线。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明。
实施例1
本实施例提出的数据处理方法的执行主体是服务器。
参见图1所示的一种数据处理方法的结构示意图,本实施例提出一种数据处理方法,包括以下具体步骤:
步骤100、获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间。
在上述步骤100中,所述用户标识,用于唯一识别用户身份的字符串。是用户登录在线课堂后,在线课堂分配给用户的。
所述消息类型,包括但不限于:登录类型、登出类型、学生发起消息类型、教师发起消息类型。
步骤102、按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列。
在上述步骤102中,按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列,就是按照各条用户打点数据接收时间(即各用户打点数据的)的先后顺序,对各条用户打点数据进行排列。
步骤104、按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据。
在上述步骤104中,不同用户的用户打点数据,就是不同用户在在线课堂的上课过程中按照信息接收时间(信息发送时间)的升序排列后的用户打点数据。
按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,就是按照用户对用户打点数据进行分类。
步骤106、基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长。
在上述步骤106中,为了基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间,包括以下具体步骤(1)至步骤(8):
(1)当有用户的用户打点数据的消息接收时间在所述用户的所述登陆类型的用户打点数据的消息接收时间的前面时,将在所述登陆类型的用户打点数据的消息接收时间前面接收到的用户打点数据的消息接收时间,与所述登陆类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
(2)按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序;
(3)当有用户的用户打点数据的消息接收时间在所述用户的所述登出类型的用户打点数据的消息接收时间的后面时,将在所述登出类型的用户打点数据的消息接收时间后面接收到的用户打点数据的消息接收时间,与所述登出类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
(4)按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序;
(5)获取所有用户消息类型为登陆类型的用户打点数据;
(6)根据获取到的所述登陆类型的用户打点数据中消息接收时间,统计所述不同用户登录所述在线课堂的登录时间;
(7)当在一段时间内登录所述在线课堂的用户的用户数量达到用户数量阈值时,确定所述在线课堂的直播授课已经开始,并获取所述一段时间内登录用户的用户打点数据;
(8)将所述一段时间内登录用户的所有的用户打点数据中记录的消息接收时间按照时间的先后顺序进行排序,并将排序后最靠前的消息接收时间确定为所述在线课堂的直播开始时间。
在上述步骤(1)至步骤(4)中,在正常情况下,在用户登陆之前是不可能产生任何用户打点数据的,同样的,也不可能在用户登出之后产生任何用户打点数据,但在实际情况下,容易出现消息排序错乱的情况。所以为了保证按照用户消息接收时间的升序排列后的用户打点数据的准确性,可以采用上述步骤(1)至步骤(4)的内容对升序排列后的用户打点数据进行修正。
消息排序错乱的情况,包括:有用户的用户打点数据的消息接收时间在所述用户的所述登陆类型的用户打点数据的消息接收时间的前面;以及,有用户的用户打点数据的消息接收时间在所述用户的所述登出类型的用户打点数据的消息接收时间的后面的情况。而上述消息排序错乱的情况大都是因为分布式系统里很多消息是异步,而分布式系统中各服务器的本地时间也有差别,各服务器的消息处理时延也不尽相同。所以需要后期进行调整,将排序错乱的用户打点数据修正为排序正确的用户打点数据。
在上述步骤(7)中,所述一段时间的时长,与一般情况下是10秒到200秒之间的任意时间长度。可以根据在线课堂的上课人数多少而定。在线课堂的上课人数与所述一段时间的时长大小成正比。
所述用户数量阈值,是40%在线课堂预设上课人数至100%在线课堂预设上课人数的任意人数数值。
为了基于不同用户的用户打点数据的消息接收时间,确定不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,包括以下步骤(1)至步骤(2):
(1)利用不同用户的用户打点数据的消息接收时间分别减去所述在线课堂的直播开始时间得到时间差值;
(2)将得到的不同用户的用户打点数据的消息接收时间分别与所述在线课堂的直播开始时间的时间差值,确定为不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长。
步骤108、将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
在上述步骤108中,将不同用户的用户打点数据平均分配到各压测机上。
综上所述,本实施例提出一种数据处理方法,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。
实施例2
本实施例提出一种数据处理装置,用于执行上述实施例1提出的数据处理方法的流程。
参见图2所示的一种数据处理装置的结构示意图,本实施例提出一种数据处理装置,包括:
获取模块200,用于获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
排列模块202,用于按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
分类模块204,用于按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
确定模块206,用于基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
压测模块208,用于将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
所述消息类型,包括:登录类型;所述确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间,包括:
获取所有用户消息类型为登陆类型的用户打点数据;
根据获取到的所述登陆类型的用户打点数据中消息接收时间,统计所述不同用户登录所述在线课堂的登录时间;
当在一段时间内登录所述在线课堂的用户的用户数量达到用户数量阈值时,确定所述在线课堂的直播授课已经开始,并获取所述一段时间内登录用户的用户打点数据;
将所述一段时间内登录用户的所有的用户打点数据中记录的消息接收时间按照时间的先后顺序进行排序,并将排序后最靠前的消息接收时间确定为所述在线课堂的直播开始时间。
所述确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,包括:
利用不同用户的用户打点数据的消息接收时间分别减去所述在线课堂的直播开始时间得到时间差值;
将得到的不同用户的用户打点数据的消息接收时间分别与所述在线课堂的直播开始时间的时间差值,确定为不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长。
所述消息类型,包括:登出类型;确定模块,还具体用于:
当有用户的用户打点数据的消息接收时间在所述用户的所述登陆类型的用户打点数据的消息接收时间的前面时,将在所述登陆类型的用户打点数据的消息接收时间前面接收到的用户打点数据的消息接收时间,与所述登陆类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序;
当有用户的用户打点数据的消息接收时间在所述用户的所述登出类型的用户打点数据的消息接收时间的后面时,将在所述登出类型的用户打点数据的消息接收时间后面接收到的用户打点数据的消息接收时间,与所述登出类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序。
综上所述,本实施例提出一种数据处理装置,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。
实施例3
本实施例提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述实施例1描述的数据处理方法的步骤。具体实现可参见方法实施例1,在此不再赘述。
此外,参见图3所示的一种电子设备的结构示意图,本实施例还提出一种电子设备,上述电子设备包括总线51、处理器52、收发机53、总线接口54、存储器55和用户接口56。上述电子设备包括有存储器55。
本实施例中,上述电子设备还包括:存储在存储器55上并可在处理器52上运行的一个或者一个以上的程序,经配置以由上述处理器执行上述一个或者一个以上程序用于进行以下步骤(1)至步骤(5):
(1)获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
(2)按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
(3)按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
(4)基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
(5)将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
收发机53,用于在处理器52的控制下接收和发送数据。
其中,总线架构(用总线51来代表),总线51可以包括任意数量的互联的总线和桥,总线51将包括由处理器52代表的一个或多个处理器和存储器55代表的存储器的各种电路链接在一起。总线51还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本实施例不再对其进行进一步描述。总线接口54在总线51和收发机53之间提供接口。收发机53可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发机53从其他设备接收外部数据。收发机53用于将处理器52处理后的数据发送给其他设备。取决于计算系统的性质,还可以提供用户接口56,例如小键盘、显示器、扬声器、麦克风、操纵杆。
处理器52负责管理总线51和通常的处理,如前述上述运行通用操作系统。而存储器55可以被用于存储处理器52在执行操作时所使用的数据。
可选的,处理器52可以是但不限于:中央处理器、单片机、微处理器或者可编程逻辑器件。
可以理解,本发明实施例中的存储器55可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DRRAM)。本实施例描述的系统和方法的存储器55旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器55存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:操作系统551和应用程序552。
其中,操作系统551,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序552,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序552中。
综上所述,本实施例提出一种电子设备和计算机可读存储介质,通过按照各条用户打点数据中的消息接收时间升序顺序对各条用户打点数据进行排列,并对排列后的用户打点数据进行处理,得到不同用户的用户打点数据,并以此确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,从而根据不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,可以在任意时间下进行在线课堂的直播数据的压测,极大的提高了压测的效率;而且,可以使用实际发生过的在线课堂的直播数据进行压测,大大提高了压测结果的真实性。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
2.根据权利要求1所述的方法,其特征在于,所述消息类型,包括:登录类型;
基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间,包括:
获取所有用户消息类型为登陆类型的用户打点数据;
根据获取到的所述登陆类型的用户打点数据中消息接收时间,统计所述不同用户登录所述在线课堂的登录时间;
当在一段时间内登录所述在线课堂的用户的用户数量达到用户数量阈值时,确定所述在线课堂的直播授课已经开始,并获取所述一段时间内登录用户的用户打点数据;
将所述一段时间内登录用户的所有的用户打点数据中记录的消息接收时间按照时间的先后顺序进行排序,并将排序后最靠前的消息接收时间确定为所述在线课堂的直播开始时间。
3.根据权利要求1所述的方法,其特征在于,基于不同用户的用户打点数据的消息接收时间,确定不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,包括:
利用不同用户的用户打点数据的消息接收时间分别减去所述在线课堂的直播开始时间得到时间差值;
将得到的不同用户的用户打点数据的消息接收时间分别与所述在线课堂的直播开始时间的时间差值,确定为不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长。
4.根据权利要求2所述的方法,其特征在于,所述消息类型,包括:登出类型;
在获取所有用户消息类型为登陆类型的用户打点数据步骤之前,所述基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间,还包括:
当有用户的用户打点数据的消息接收时间在所述用户的所述登陆类型的用户打点数据的消息接收时间的前面时,将在所述登陆类型的用户打点数据的消息接收时间前面接收到的用户打点数据的消息接收时间,与所述登陆类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序;
当有用户的用户打点数据的消息接收时间在所述用户的所述登出类型的用户打点数据的消息接收时间的后面时,将在所述登出类型的用户打点数据的消息接收时间后面接收到的用户打点数据的消息接收时间,与所述登出类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序。
5.一种数据处理装置,其特征在于,包括:
获取模块,用于获取进行流量回放的在线课堂的直播数据;其中,所述在线课堂的直播数据,包括:多条用户打点数据;多条所述用户打点数据中的各条用户打点数据,分别包括:用户标识、消息类型、以及消息接收时间;
排列模块,用于按照各条用户打点数据中的消息接收时间升序顺序,对各条用户打点数据进行排列;
分类模块,用于按照各条所述用户打点数据中记录的用户标识对排序后的各所述用户打点数据进行分类,得到不同用户的用户打点数据;
确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间、以及不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长;
压测模块,用于将不同用户的用户打点数据分配到各压测机上,并对各所述压测机同时发送压测指令,确定发送压测指令的时刻,使得各所述压测机进行流量回放的在线课堂的压测;其中,当当前时刻与所述发送压测指令的时刻之间的间隔时间长度达到各所述压测机上分配的用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长时,将各所述压测机上所述偏移时长与所述间隔时间长度相同的用户打点数据发送到服务端,进行压测。
6.根据权利要求5所述的装置,其特征在于,所述消息类型,包括:登录类型;
所述确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定所述在线课堂的直播开始时间,包括:
获取所有用户消息类型为登陆类型的用户打点数据;
根据获取到的所述登陆类型的用户打点数据中消息接收时间,统计所述不同用户登录所述在线课堂的登录时间;
当在一段时间内登录所述在线课堂的用户的用户数量达到用户数量阈值时,确定所述在线课堂的直播授课已经开始,并获取所述一段时间内登录用户的用户打点数据;
将所述一段时间内登录用户的所有的用户打点数据中记录的消息接收时间按照时间的先后顺序进行排序,并将排序后最靠前的消息接收时间确定为所述在线课堂的直播开始时间。
7.根据权利要求5所述的装置,其特征在于,所述确定模块,用于基于不同用户的用户打点数据的消息接收时间,确定不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长,包括:
利用不同用户的用户打点数据的消息接收时间分别减去所述在线课堂的直播开始时间得到时间差值;
将得到的不同用户的用户打点数据的消息接收时间分别与所述在线课堂的直播开始时间的时间差值,确定为不同用户的用户打点数据的消息接收时间与所述直播开始时间之间的偏移时长。
8.根据权利要求6所述的装置,其特征在于,所述消息类型,包括:登出类型;
确定模块,还具体用于:
当有用户的用户打点数据的消息接收时间在所述用户的所述登陆类型的用户打点数据的消息接收时间的前面时,将在所述登陆类型的用户打点数据的消息接收时间前面接收到的用户打点数据的消息接收时间,与所述登陆类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序;
当有用户的用户打点数据的消息接收时间在所述用户的所述登出类型的用户打点数据的消息接收时间的后面时,将在所述登出类型的用户打点数据的消息接收时间后面接收到的用户打点数据的消息接收时间,与所述登出类型的用户打点数据的消息接收时间进行互换,得到所述用户消息接收时间互换后的用户打点数据;
按照所述消息接收时间的升序顺序对所述用户消息接收时间互换后的用户打点数据进行排序。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1-4任一项所述的方法的步骤。
10.一种电子设备,其特征在于,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行权利要求1-4任一项所述的方法的步骤。
CN202111026489.6A 2021-09-02 2021-09-02 一种数据处理方法、装置和电子设备 Active CN113709514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111026489.6A CN113709514B (zh) 2021-09-02 2021-09-02 一种数据处理方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111026489.6A CN113709514B (zh) 2021-09-02 2021-09-02 一种数据处理方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN113709514A CN113709514A (zh) 2021-11-26
CN113709514B true CN113709514B (zh) 2023-06-23

Family

ID=78657386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111026489.6A Active CN113709514B (zh) 2021-09-02 2021-09-02 一种数据处理方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN113709514B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782727B1 (en) * 2012-04-04 2014-07-15 Google Inc. Adaptive video stream testing
CN107211165A (zh) * 2015-01-09 2017-09-26 艾斯适配有限公司 用于自动延迟视频演示的装置、系统和方法
CN107454384A (zh) * 2017-07-27 2017-12-08 网宿科技股份有限公司 一种直播性能测试方法和装置
CN110022259A (zh) * 2018-12-19 2019-07-16 香港乐蜜有限公司 消息到达率确定方法、装置、数据统计服务器及存储介质
CN110213356A (zh) * 2019-05-21 2019-09-06 深圳壹账通智能科技有限公司 一种基于数据处理的登录处理方法及相关设备
CN110489339A (zh) * 2019-07-26 2019-11-22 北京字节跳动网络技术有限公司 客户端压测报表生成方法、系统、介质和电子设备
CN112954311A (zh) * 2021-02-08 2021-06-11 福建天晴数码有限公司 一种直播流媒体的性能测试方法及其系统
US11101906B1 (en) * 2020-06-30 2021-08-24 Microsoft Technology Licensing, Llc End-to-end testing of live digital media streaming

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015148953A1 (en) * 2014-03-27 2015-10-01 Xcinex Corporation Techniques for viewing movies
US9736502B2 (en) * 2015-09-14 2017-08-15 Alan H. Barber System, device, and method for providing audiences for live video streaming
KR20170036300A (ko) * 2015-09-24 2017-04-03 삼성전자주식회사 동영상 제공 방법 및 이를 수행하는 전자 장치
US20210082317A1 (en) * 2018-01-19 2021-03-18 University Of South Carolina Multiple Format Instructional Display Matrix Including Real Time Input

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782727B1 (en) * 2012-04-04 2014-07-15 Google Inc. Adaptive video stream testing
CN107211165A (zh) * 2015-01-09 2017-09-26 艾斯适配有限公司 用于自动延迟视频演示的装置、系统和方法
EP3243331A1 (en) * 2015-01-09 2017-11-15 Eyesmatch Ltd Devices, systems and methods for auto-delay video presentation
CN107454384A (zh) * 2017-07-27 2017-12-08 网宿科技股份有限公司 一种直播性能测试方法和装置
CN110022259A (zh) * 2018-12-19 2019-07-16 香港乐蜜有限公司 消息到达率确定方法、装置、数据统计服务器及存储介质
WO2020125074A1 (zh) * 2018-12-19 2020-06-25 香港乐蜜有限公司 消息到达率确定方法、装置、数据统计服务器及存储介质
CN110213356A (zh) * 2019-05-21 2019-09-06 深圳壹账通智能科技有限公司 一种基于数据处理的登录处理方法及相关设备
WO2020233059A1 (zh) * 2019-05-21 2020-11-26 深圳壹账通智能科技有限公司 一种基于数据处理的登录处理方法及相关设备
CN110489339A (zh) * 2019-07-26 2019-11-22 北京字节跳动网络技术有限公司 客户端压测报表生成方法、系统、介质和电子设备
US11101906B1 (en) * 2020-06-30 2021-08-24 Microsoft Technology Licensing, Llc End-to-end testing of live digital media streaming
CN112954311A (zh) * 2021-02-08 2021-06-11 福建天晴数码有限公司 一种直播流媒体的性能测试方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Nginx的实验室直播系统研究与实现;张贵湖;刘劲松;;电脑知识与技术(第23期);90-92 *

Also Published As

Publication number Publication date
CN113709514A (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
CN109670110B (zh) 一种教育资源推荐方法、装置、设备及存储介质
CN105159924A (zh) 学习资源推送方法和系统
US11226991B2 (en) Interest tag determining method, computer device, and storage medium
CN110751861B (zh) 一种基于云平台的网络远程教育系统
CN112258090A (zh) 一种基于物联网的在线教育管理系统
US20100191583A1 (en) Accreditation Tracker
CN112348725A (zh) 基于大数据的知识点难度定级方法
CN108419137A (zh) 数据处理方法和数据处理装置
CN111338865A (zh) 一种测试方法、装置、及计算机可读存储介质
JP6683906B1 (ja) 学習支援システムおよび学習支援方法
CN116403445A (zh) 一种自适应辅助教学方法、装置、电子设备及存储介质
CN113709514B (zh) 一种数据处理方法、装置和电子设备
CN112019875B (zh) 在线直播的学习行为监控方法、装置及直播平台
CN109151520A (zh) 一种生成视频的方法、装置、电子设备及介质
CN111552900B (zh) 访问控制方法、装置、可读存储介质和电子设备
CN108510237A (zh) 一种文学创作审核系统
CN112019937B (zh) 一种在线答题直播方法、装置、服务器及存储介质
JP2001194985A (ja) 教材難易度動的調節方式
CN108961120A (zh) 一种网络教育分布式管理系统
CN115601206A (zh) 一种多端共享的教学资源管理方法及系统
CN108848103A (zh) 应用程序的登录方法、电子设备、终端设备及登录系统
Bouchet et al. Do MOOC students come back for more? Recurring Students in the GdP MOOC
CN111970340B (zh) 信息传输方法、可读存储介质和电子设备
CN115034937A (zh) 一种数据处理方法、装置、电子设备和存储介质
CN113077670A (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