CN105975351A - 一种用户行为消息上报方法和装置 - Google Patents
一种用户行为消息上报方法和装置 Download PDFInfo
- Publication number
- CN105975351A CN105975351A CN201610262738.4A CN201610262738A CN105975351A CN 105975351 A CN105975351 A CN 105975351A CN 201610262738 A CN201610262738 A CN 201610262738A CN 105975351 A CN105975351 A CN 105975351A
- Authority
- CN
- China
- Prior art keywords
- user behavior
- message
- reporting
- thread
- message queue
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000007246 mechanism Effects 0.000 claims abstract description 56
- 238000012544 monitoring process Methods 0.000 claims description 12
- 238000000926 separation method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000000875 corresponding effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供了一种用户行为消息上报方法和装置,其中所述方法包括:当监测到用户行为操作时,生成用户行为消息;调用主线程将所述用户行为消息通过上报接口添加到消息队列中;调用上报线程,通过所述上报线程调用IOS操作系统内置的常规中心调度GCD机制;通过所述GCD机制从所述消息队列中获取所述用户行为消息,并依据配置信息将获取的所述用户行为消息上报至日志服务器。通过本发明提供的用户行为消息上报方法,能够避免主线程因无法即时返回而导致的频繁报错的问题。
Description
技术领域
本发明涉及用户行为分析技术领域,特别是涉及一种用户行为消息上报方法和装置。
背景技术
目前,为了提升用户的使用体验,当用户使用移动终端进行操作时,移动终端中的操作系统则需要用户的操作行为跟踪并将用户行为消息上报至日志服务器。日志服务器则可根据接收到的用户行为消息对用户行为进行分析,以便为用户进行个性化推荐,例如:依据用户的历史行为消息为用户推荐感兴趣的信息。
目前基于Android操作系统的移动终端,由于Android操作系统是开放式,故在该类操作系统上实现用户行为消息上报比较简单,现有技术中已存在多种可行性的方案。而基于IOS操作系统的移动终端,由于IOS操作系统并非开放式的,研发人员无法得到其开源代码,故在该类操作系统上实现用户行为消息上报非常有难度,现有技术中鲜有在IOS操作系统上实现用户行为消息上报的方案。其中,IOS(Internetworking Operating System-Cisco,网络互联思科操作系统)是由苹果公司开发的移动操作系统。
现有的在IOS操作系统上实现用户行为消息上报的方案,需要调用移动终端的主线程参与整个用户行为消息的上报,当用户行为消息上报成功后日志服务器返回上报成功的响应消息。IOS操作系统的主线程每处理一个消息时,仅是短时间内等待日志服务器返回响应消息,在接收到响应消息后被返回执行其他任务,若在短时间内未收到响应消息,则会进行报错。而在实际上报过程中,由于网络等因素的影响时常出现上报消息耗时较长的情况,主线程则无法在短时间内收到响应消息,因此,会频繁进行报错。而频繁进行报错,不仅增加移动终端的处理负荷、增加移动终端的耗电量,还会降低用户的使用体验。
发明内容
本发明实施例提供了一种用户行为消息上报方法和装置,以解决现有的用户行为消息上报的方案中存在的频繁报错的问题。
为了解决上述问题,本发明公开了一种用户行为消息上报方法,包括:当监测到用户行为操作时,生成用户行为消息;调用主线程将所述用户行为消息通过上报接口添加到消息队列中;调用上报线程,通过所述上报线程调用IOS操作系统内置的常规中心调度GCD机制;通过所述GCD机制从所述消息队列中获取所述用户行为消息,并依据配置信息将获取的所述用户行为消息上报至日志服务器。
为了解决上述问题,本发明还公开了一种用户行为消息上报装置,包括:生成模块,用于当监测到用户行为操作时,生成用户行为消息;第一调用模块,用于调用主线程将所述用户行为消息通过上报接口添加到消息队列中;第二调用模块,用于调用上报线程,通过所述上报线程调用IOS操作系统内置的常规中心调度GCD机制;上报模块,用于通过所述GCD机制从所述消息队列中获取所述用户行为消息,并依据配置信息将获取的所述用户行为消息上报至日志服务器。
本发明提供的用户行为消息上报方法和装置,在生成用户行为消息时,主线程仅需将用户行为消息添加到消息队列中即可被返回,用户行为消息的上报则由上报线程来执行。可见,本发明实施例提供的用户行为消息上报方案中,主线程所执行的整个处理过程耗时短,因此,能够避免主线程因无法即时返回而导致的频繁报错的问题。进一步地,由于能够避免频繁报错,故能够减轻移动终端的处理负荷,节省移动终端的耗电量,以及提升用户的使用体验。
此外,本发明实施例提供的用户行为消息上报方法和装置,在上报用户行为消息时通过IOS操作系统内置的GCD(General Central Dispatch,常规中心调度)机制实现消息上报,编程人员仅需编写一些与GCD机制进行交互的代码即可,而无需编写线程管理代码,因此,能够节省大量的人力资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一的一种用户行为消息上报方法的步骤流程图;
图2是根据本发明实施例二的一种用户行为消息上报方法的步骤流程图;
图3是用户行为消息上报时系统的交互示意图;
图4是根据本发明实施例三的一种用户行为消息上报装置的结构框图;
图5是根据本发明实施例四的一种用户行为消息上报装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参照图1,示出了本发明实施例一的一种用户行为消息上报方法的步骤流程图。
本发明实施例的用户行为消息上报方法包括以下步骤:
步骤S102:当监测到用户行为操作时,生成用户行为消息。
其中,用户行为操作可以是用户对移动终端中安装的任意应用程序的操作。例如:对应用程序的选择操作、通过应用程序观看视频的操作、通过应用程序下载数据的操作等。
依据用户行为操作生成用户行为消息的具体方式参见相关技术即可,本发明实施例中对此不作具体限制。
本发明实施例中移动终端中安装有适用于IOS操作系统的消息上报SDK(Software Development Kit,软件开发工具包),通过该SDK与IOS操作系统内置的GCD机制相结合,能够将移动终端中监测到的用户行为消息上报至日志服务器,以对用户的历史行为进行分析,为用户提供个性化服务。在移动终端启动后,安装的SDK监测用户行为操作,并生成用户行为消息。
步骤S104:调用主线程将用户行为消息通过上报接口添加到消息队列中。
在生成用户行为消息后,SDK则调用主线程由主线程调用上报接口来上报用户行为消息,本发明实施例中,由主线程、上报线程以及IOS操作系统内置的GCD机制结合完成用户行为消息的上报,主线程仅需将用户行为消息通过上报接口添加到消息队列中。当用户行为消息添加到消息队列中后,主线程即可被立即返回,对于用户层面而言,此时用户行为消息已经发送完成,而实际上用户行为消息则需要在后台通过上报线程调用GCD机制来完成。
需要说明的是,消息队列可以为一个或者多个,消息队列可以在移动终端初始化过程中建立生成。
步骤S106:调用上报线程,通过上报线程调用IOS操作系统内置的GCD机制。
IOS操作系统内置的GCD机制中同时设置有多个并行的子线程,各子线程可以并行从消息队列中获取用户行为消息,将用户行为消息上报至日志服务器。
采用IOS内置的GCD机制实现消息上报,程序员仅需编写与GCD机制交互的程序即可,例如:调动上报线程通过上报线程调用GCD的实现程序,程序员不需要编写任何线程管理代码。并且,由于GCD是纯C语言编写的,故程序员在编写GCD相关交互代码的时候仅需要编写简单函数即可,便于实现。
步骤S108:通过GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
其中,配置信息中包含上报消息的优先级、上报消息的时间间隔。
上报线程调用GCD机制后,通过GCD机制从消息队列中依次获取用户行为消息,并依据配置信息中包含的上报消息的时间间隔将消息上报至日志服务器。
本发明实施例提供的用户行为消息上报方法,在生成用户行为消息时,主线程仅需将用户行为消息添加到消息队列中即可被返回,用户行为消息的上报则由上报线程来执行。可见,本发明实施例提供的用户行为消息上报方法中,主线程所执行的整个处理过程耗时短,因此,能够避免主线程因无法即时返回而导致的频繁报错的问题。进一步地,由于能够避免频繁报错,故能够减轻移动终端的处理负荷,节省移动终端的耗电量,以及提升用户的使用体验。
此外,本发明实施例提供的用户行为消息上报方法,在上报用户行为消息时通过IOS操作系统内置的GCD机制实现消息上报,编程人员仅需编写一些与GCD机制进行交互的函数即可,而无需编写线程管理代码,因此,能够节省大量的人力资源。
实施例二
参照图2,示出了本发明实施例二的一种用户行为消息上报方法的步骤流程图。
本发明实施例的用户行为消息上报方法具体包括以下步骤:
步骤S202:在初始化过程中,消息上报SDK从主线程中分离出一个线程,并将分离出的线程设置为上报线程。
本发明实施例中,移动终端中安装有适用于IOS操作系统的消息上报SDK,通过该SDK与IOS操作系统内置的GCD机制相结合,将移动终端中监测到的用户行为消息上报至日志服务器,以对用户的历史行为进行分析,为用户提供个性化服务。其中,消息上报SDK可以以静态库的方式提供给业务方,业务方仅需将消息上报SDK集成在移动终端上即可,便于业务方操作。
本发明实施例中,将主线程与上报线程分离,目的是在用户行为消息上报过程中短时间内将主线程返回,避免移动终端报错。这是由于在用户行为消息上报过程中,主线程仅需将用户行为消息添加到消息队列中即可被返回,而对于消息队列中的用户行为消息的具体上报则由上报线程以及GCD机制结合完成,因此,主线程不会长时间被占用。
步骤S204:在初始化过程中,消息上报SDK生成第一消息队列以及第二消息队列。
在初始化时,消息上报SDK开出两个SerialDispatchQueue即串行的调度队列,开出的这两个调度队列分别为第一消息队列以及第二消息队列。其中,第一消息队列用于存储未上报过的用户行为消息;第二消息队列用于存储未上报成功的用户行为消息;
用户行为消息从第一消息队列中被获取后,在上报至日志服务器的过程中可能由于网络不通造成该消息并未成功上传至日志服务器,因此,则需将这类消息存储至第二消息队列中,等待再次进行上报。
需要说明的是,在具体实现过程中,步骤S202并不局限于在步骤S204之前执行,步骤S202还可以在步骤S204之后执行,或者与步骤S204并行执行。
步骤S206:消息上报SDK从配置服务器中获取配置信息。
其中,配置信息包括:上报消息的优先级、上报消息的时间间隔、优先级的设置选项以及时间间隔的设置选项。
上报消息的优先级可以设定高、中、低三个等级。其中,高优先级对应设置为:数据连通或者无线局域网连通时上报消息;中优先级对应设置为:只有无线局域网连通时上报消息;低优先级设置为:只有无线局域网连通、且用户体验计划打开时上报消息。上报消息的时间间隔可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。
在具体实现过程中,不仅移动终端开机后获取配置信息,在获取配置信息后、消息上报SDK还需要按照预设频率从配置服务器中获取配置信息。这是由于,配置服务器中设置的配置信息存在被更改的可能,因此,需要按照设定频率从配置服务器中获取配置信息。对于获取配置信息的具体频率也可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。
本发明实施例中从配置服务器中获取配置信息,而并非将配置信息固定写入到消息上报SDK中,当需要对配置信息进行变更时,仅需对配置服务器中的配置信息进行修改即可,而无需对消息上报SDK中的代码或函数进行更改,因此,能够减轻处理配置信息变更的技术人员的工作量,便于操作。可见,从配置服务器中按照设定频率获取配置信息的方法,无需修改代码即可达到动态修改上报配置的目的。
步骤S208:当监测到用户行为操作时,消息上报SDK生成用户行为消息。
当用户对移动终端上安装的APP进行操作时,消息上报SDK监测用户的操作,并依据该操作生成用户行为消息。
步骤S210:消息上报SDK调用主线程将用户行为消息通过上报接口添加到第一消息队列中。
用户行为消息生成后,调用主线程将用户行为消息通过上报接口添加到第一消息队列中,主线程则立即返回,从而避免主线程被上报流程阻塞,移动终端进行报错的问题。第一消息队列用于存储未上报过的用户行为消息,存储至第一消息队列中的用户行为消息,则由上报线程调用IOS操作系统内置的GCD机制进行上报。
步骤S212:消息上报SDK调用上报线程,通过上报线程调用IOS操作系统内置的GCD机制,通过GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
IOS操作系统内置的GCD机制中同时设置有多个并行的子线程,各子线程可以并行从消息队列中获取用户行为消息,将用户行为消息上报至日志服务器。
对于GCD机制的具体说明参见相关技术即可,本发明实施例中对此不再赘述。GCD机制支持多个子线程并行,并且GCD机制还可以根据系统当前负载适应性的增减并行的子线程数量。
一种优选的通过GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器的方式如下:
首先,GCD机制根据系统当前负载确定并行子线程数量;
其次,GCD机制依据并行子线程数量调整并行的子线程;
再次,GCD机制通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
由于本发明实施例中包含两个消息队列,因此,并行的子线程分别从第一消息队列、第二消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。在具体实现过程中,若第二消息队列中不存在用户行为消息,则无需调用GCD机制中的子线程从第二消息队列中获取 用户行为消息进行上传。
通过本发明实施例提供的用户行为消息上报方法,在生成用户行为消息时,主线程仅需将用户行为消息添加到消息队列中即可被返回,用户行为消息的上报则由上报线程来执行。可见,本发明实施例提供的用户行为消息上报方法中,主线程所执行的整个处理过程耗时短,因此,能够避免主线程因无法即时返回而导致的频繁报错的问题。进一步地,由于能够避免频繁报错,故能够减轻移动终端的处理负荷,节省移动终端的耗电量,以及提升用户的使用体验。
下面参照图3,从移动终端与服务器的交互角度,对本发明实施例的用户行为消息上报方法的整体流程进行说明。
如图3所示,用户行为消息上报系统包括基于IOS操作系统的移动终端、Agnes home即配置服务器以及TCP Logger Server即基于传输控制协议的日志服务器。其中,基于IOS操作系统的移动终端上安装有IOS APP(Application,应用)以及IOS tracker SDK,IOS tracker SDK可以对移动终端上安装的IOS APP上的用户行为操作进行监测。IOS tracker SDK为适配于IOS操作系统的用户行为消息上报程序的软件开发包。IOS tracker SDK在具体实现过程中,可以以静态库的形式提供给业务方,业务方仅需在移动终端上集成IOS tracker SDK即可。
用户行为消息上报系统进行用户行为消息上报时的主要流程如下:
首先,在移动终端初始化过程中,开出两个SerialDispatchQueue分别为第一消息队列、第二消息队列,并且将主线程与上报线程分离。
其次,初始化完成后IOS tracker SDK从Agnes home获取配置信息即get Config Info。
再次,IOS tracker SDK监测IOS APP上的用户行为操作,当监测到用户行为操作时,生成用户行为消息,并通过主线程调用上报接口将用户行为消息添加到第一消息队列中,当添加完成后主线程返回。上报线程则调用IOS操作系统内置的GCD机制从消息队列中获取用户行为消息。
对于报线程则调用IOS操作系统内置的GCD机制从消息队列中获取用户行为消息的具体方式参见实施例二中的相关说明即可,本具体实例中对此 不再赘述。
最后,上报线程通过调用的GCD机制将用户行为消息即图3中的message上传至TCP Logger Server。
本具体实例提供的用户行为消息上报方法,主线程仅需将用户行为消息添加到消息队列中即可被返回,因此,移动终端不会频繁报错,故能够减轻移动终端的处理负荷,降低其低功耗。此外,本具体实例提供的用户行为消息上报方法,由上报线程与GCD机制结合在移动终端后台进行上报,因此能够实现实时上报且不会占用移动终端主线程的资源。
实施例三
参照图4,示出了本发明实施例四的一种用户行为消息上报装置的结构框图。
本发明实施例的用户行为消息上报装置可以包括:生成模块402,用于当监测到用户行为操作时,生成用户行为消息;第一调用模块404,用于调用主线程将所述用户行为消息通过上报接口添加到消息队列中;第二调用模块406,用于调用上报线程,通过所述上报线程调用IOS操作系统内置的GCD机制;上报模块408,用于通过所述GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
本发明实施例提供的用户行为消息上报装置,在生成用户行为消息时,主线程仅需将用户行为消息添加到消息队列中即可被返回,用户行为消息的上报则由上报线程来执行。可见,本发明实施例提供的用户行为消息上报方案中,主线程所执行的整个处理过程耗时短,因此,能够避免主线程因无法即时返回而导致的频繁报错的问题。进一步地,由于能够避免频繁报错,故能够减轻移动终端的处理负荷,节省移动终端的耗电量,并且提升用户的使用体验。
此外,本发明实施例提供的用户行为消息上报装置,在上报用户行为消息时通过IOS操作系统内置的GCD机制实现消息上报,编程人员仅需编写一些与GCD机制进行交互的函数即可,而无需编写线程管理代码,因此,能够节省大量的人力资源。
实施例四
参照图5,示出了本发明实施例四的一种用户行为消息上报装置的结构框图。
本发明实施例的装置是对实施例四中的用户行为消息上报装置的进一步优化,优化后的用户行为消息上报装置可以包括:生成模块502,用于当监测到用户行为操作时,生成用户行为消息;第一调用模块504,用于调用主线程将所述用户行为消息通过上报接口添加到消息队列中;第二调用模块506,用于调用上报线程,通过所述上报线程调用IOS操作系统内置的GCD机制;上报模块508,用于通过所述GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
优选地,所述装置还包括:线程分离模块510,用于在所述生成模块用户行为消息之前,在初始化过程中,从主线程中分离出一个线程,并将分离出的所述线程设置为上报线程。
优选地,所述上报模块508通过所述GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器时:所述GCD机制根据系统当前负载确定并行子线程数量;并依据所述并行子线程数量调整并行的子线程;所述GCD机制通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
优选地,所述装置还包括:队列生成模块512,用于在初始化过程中,生成第一消息队列以及第二消息队列;其中,第一消息队列用于存储未上报过的用户行为消息;第二消息队列用于存储未上报成功的用户行为消息;
所述第一调用模块504调用主线程将所述用户行为消息通过上报接口添加到消息队列中时:调用主线程将所述用户行为消息通过上报接口添加到第一消息队列中;所述上报模块508通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器时:通过并行的子线程分别从第一消息队列、第二消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
优选地,所述装置还包括:获取模块514,用于按照预设频率从配置服务器中获取配置信息;其中,所述配置信息包括:上报消息的优先级、上报消息的时间间隔、优先级的设置选项以及时间间隔的设置选项。
本发明实施例的用户行为消息上报装置用于实现前述实施例一、实施例二中相应的用户行为消息上报方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本实发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种用户行为消息上报方法,其特征在于,包括:
当监测到用户行为操作时,生成用户行为消息;
调用主线程将所述用户行为消息通过上报接口添加到消息队列中;
调用上报线程,通过所述上报线程调用IOS操作系统内置的常规中心调度GCD机制;
通过所述GCD机制从所述消息队列中获取所述用户行为消息,并依据配置信息将获取的所述用户行为消息上报至日志服务器。
2.根据权利要求1所述的方法,其特征在于,在所述生成用户行为消息的步骤之前,所述方法还包括:
在初始化过程中,从主线程中分离出一个线程,并将分离出的所述线程设置为上报线程。
3.根据权利要求1所述的方法,其特征在于,所述通过所述GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器的步骤包括:
所述GCD机制根据系统当前负载确定并行子线程数量;
依据所述并行子线程数量调整并行的子线程;
所述GCD机制通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在初始化过程中,生成第一消息队列以及第二消息队列;其中,第一消息队列用于存储未上报过的用户行为消息;第二消息队列用于存储未上报成功的用户行为消息;
所述调用主线程将所述用户行为消息通过上报接口添加到消息队列中的步骤包括:
调用主线程将所述用户行为消息通过上报接口添加到第一消息队列中;
所述通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器的步骤包括:
通过并行的子线程分别从第一消息队列、第二消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
按照预设频率从配置服务器中获取配置信息;其中,所述配置信息包括:上报消息的优先级、上报消息的时间间隔、优先级的设置选项以及时间间隔的设置选项。
6.一种用户行为消息上报装置,其特征在于,包括:
生成模块,用于当监测到用户行为操作时,生成用户行为消息;
第一调用模块,用于调用主线程将所述用户行为消息通过上报接口添加到消息队列中;
第二调用模块,用于调用上报线程,通过所述上报线程调用IOS操作系统内置的常规中心调度GCD机制;
上报模块,用于通过所述GCD机制从所述消息队列中获取所述用户行为消息,并依据配置信息将获取的所述用户行为消息上报至日志服务器。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
线程分离模块,用于在所述生成模块用户行为消息之前,在初始化过程中,从主线程中分离出一个线程,并将分离出的所述线程设置为上报线程。
8.根据权利要求6所述的方法,其特征在于,所述上报模块通过所述GCD机制从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器时:
所述GCD机制根据系统当前负载确定并行子线程数量;
并依据所述并行子线程数量调整并行的子线程;
所述GCD机制通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
队列生成模块,用于在初始化过程中,生成第一消息队列以及第二消息队列;其中,第一消息队列用于存储未上报过的用户行为消息;第二消息队列用于存储未上报成功的用户行为消息;
所述第一调用模块调用主线程将所述用户行为消息通过上报接口添加到消息队列中时:调用主线程将所述用户行为消息通过上报接口添加到第一消息队列中;
所述上报模块通过并行的子线程从消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器时:通过并行的子线程分别从第一消息队列、第二消息队列中获取用户行为消息,并依据配置信息将获取的用户行为消息上报至日志服务器。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
获取模块,用于按照预设频率从配置服务器中获取配置信息;其中,所述配置信息包括:上报消息的优先级、上报消息的时间间隔、优先级的设置选项以及时间间隔的设置选项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610262738.4A CN105975351A (zh) | 2016-04-25 | 2016-04-25 | 一种用户行为消息上报方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610262738.4A CN105975351A (zh) | 2016-04-25 | 2016-04-25 | 一种用户行为消息上报方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105975351A true CN105975351A (zh) | 2016-09-28 |
Family
ID=56993100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610262738.4A Pending CN105975351A (zh) | 2016-04-25 | 2016-04-25 | 一种用户行为消息上报方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105975351A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107241278A (zh) * | 2017-05-25 | 2017-10-10 | 崔潇扬 | 一种智能设备实时数据流式处理方法及处理系统 |
CN107566480A (zh) * | 2017-08-30 | 2018-01-09 | 北京京东尚科信息技术有限公司 | 移动终端应用的用户活动信息采集方法及装置、存储介质 |
CN107609114A (zh) * | 2017-09-13 | 2018-01-19 | 广东欧珀移动通信有限公司 | 日志信息上报方法、装置及存储介质、adsp和终端 |
CN107609118A (zh) * | 2017-09-13 | 2018-01-19 | 广东欧珀移动通信有限公司 | 日志信息上报方法、装置及存储介质、adsp和终端 |
CN107704365A (zh) * | 2017-10-10 | 2018-02-16 | 武汉斗鱼网络科技有限公司 | 一种移动端混合应用的监控数据上报方法及装置 |
CN107729163A (zh) * | 2017-09-30 | 2018-02-23 | 上海高顿教育培训有限公司 | 一种基于不同后台的统一交互方法 |
CN108062313A (zh) * | 2016-11-07 | 2018-05-22 | 北京京东尚科信息技术有限公司 | 用于留存用户分析的方法、电子设备和服务器 |
CN108255688A (zh) * | 2018-01-05 | 2018-07-06 | 武汉斗鱼网络科技有限公司 | 应用程序日志的显示方法、存储介质、电子设备及系统 |
CN108668306A (zh) * | 2017-03-28 | 2018-10-16 | 江苏北弓智能科技有限公司 | 一种移动操作系统内置的数据采集系统 |
CN109213652A (zh) * | 2017-06-30 | 2019-01-15 | 北京嘀嘀无限科技发展有限公司 | 用户行为数据采集方法和装置 |
CN109815198A (zh) * | 2018-12-10 | 2019-05-28 | 北京龙拳风暴科技有限公司 | 移动游戏大数据贴源层实现方法及装置 |
CN113722037A (zh) * | 2021-09-03 | 2021-11-30 | 北京百度网讯科技有限公司 | 一种用户界面的刷新方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130041756A1 (en) * | 2007-10-23 | 2013-02-14 | Pierre Carion | Methods and systems for collection and use of wireless application activity information |
CN103593231A (zh) * | 2012-08-14 | 2014-02-19 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及移动终端 |
CN104050266A (zh) * | 2014-06-20 | 2014-09-17 | 小米科技有限责任公司 | 用户行为记录方法、装置和网页浏览器 |
CN104253835A (zh) * | 2013-06-27 | 2014-12-31 | 阿里巴巴集团控股有限公司 | 用户行为数据采集方法及其系统 |
-
2016
- 2016-04-25 CN CN201610262738.4A patent/CN105975351A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130041756A1 (en) * | 2007-10-23 | 2013-02-14 | Pierre Carion | Methods and systems for collection and use of wireless application activity information |
CN103593231A (zh) * | 2012-08-14 | 2014-02-19 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置及移动终端 |
CN104253835A (zh) * | 2013-06-27 | 2014-12-31 | 阿里巴巴集团控股有限公司 | 用户行为数据采集方法及其系统 |
CN104050266A (zh) * | 2014-06-20 | 2014-09-17 | 小米科技有限责任公司 | 用户行为记录方法、装置和网页浏览器 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108062313A (zh) * | 2016-11-07 | 2018-05-22 | 北京京东尚科信息技术有限公司 | 用于留存用户分析的方法、电子设备和服务器 |
CN108668306B (zh) * | 2017-03-28 | 2021-10-22 | 江苏北弓智能科技有限公司 | 一种移动操作系统内置的数据采集系统 |
CN108668306A (zh) * | 2017-03-28 | 2018-10-16 | 江苏北弓智能科技有限公司 | 一种移动操作系统内置的数据采集系统 |
CN107241278B (zh) * | 2017-05-25 | 2021-08-27 | 北京君泊网络科技有限责任公司 | 一种智能设备实时数据流式处理方法及处理系统 |
CN107241278A (zh) * | 2017-05-25 | 2017-10-10 | 崔潇扬 | 一种智能设备实时数据流式处理方法及处理系统 |
CN109213652A (zh) * | 2017-06-30 | 2019-01-15 | 北京嘀嘀无限科技发展有限公司 | 用户行为数据采集方法和装置 |
CN107566480B (zh) * | 2017-08-30 | 2021-04-30 | 北京京东尚科信息技术有限公司 | 移动终端应用的用户活动信息采集方法及装置、存储介质 |
CN107566480A (zh) * | 2017-08-30 | 2018-01-09 | 北京京东尚科信息技术有限公司 | 移动终端应用的用户活动信息采集方法及装置、存储介质 |
CN107609118A (zh) * | 2017-09-13 | 2018-01-19 | 广东欧珀移动通信有限公司 | 日志信息上报方法、装置及存储介质、adsp和终端 |
CN107609114B (zh) * | 2017-09-13 | 2021-05-28 | Oppo广东移动通信有限公司 | 日志信息上报方法、装置及存储介质、adsp和终端 |
CN107609114A (zh) * | 2017-09-13 | 2018-01-19 | 广东欧珀移动通信有限公司 | 日志信息上报方法、装置及存储介质、adsp和终端 |
CN107729163A (zh) * | 2017-09-30 | 2018-02-23 | 上海高顿教育培训有限公司 | 一种基于不同后台的统一交互方法 |
CN107704365A (zh) * | 2017-10-10 | 2018-02-16 | 武汉斗鱼网络科技有限公司 | 一种移动端混合应用的监控数据上报方法及装置 |
CN108255688A (zh) * | 2018-01-05 | 2018-07-06 | 武汉斗鱼网络科技有限公司 | 应用程序日志的显示方法、存储介质、电子设备及系统 |
CN108255688B (zh) * | 2018-01-05 | 2021-05-28 | 武汉斗鱼网络科技有限公司 | 应用程序日志的显示方法、存储介质、电子设备及系统 |
CN109815198A (zh) * | 2018-12-10 | 2019-05-28 | 北京龙拳风暴科技有限公司 | 移动游戏大数据贴源层实现方法及装置 |
CN109815198B (zh) * | 2018-12-10 | 2021-03-05 | 北京龙拳风暴科技有限公司 | 移动游戏大数据贴源层实现方法及装置 |
CN113722037A (zh) * | 2021-09-03 | 2021-11-30 | 北京百度网讯科技有限公司 | 一种用户界面的刷新方法、装置、电子设备及存储介质 |
CN113722037B (zh) * | 2021-09-03 | 2023-08-11 | 北京百度网讯科技有限公司 | 一种用户界面的刷新方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105975351A (zh) | 一种用户行为消息上报方法和装置 | |
CN111506412B (zh) | 基于Airflow的分布式异步任务构建、调度系统及方法 | |
US20200137151A1 (en) | Load balancing engine, client, distributed computing system, and load balancing method | |
CN110769278A (zh) | 一种分布式视频转码方法及系统 | |
CN111212388B (zh) | 一种批量短信发送管理方法、系统和电子设备 | |
CN107122232B (zh) | 一种多媒体任务处理装置及方法 | |
CN112445575A (zh) | 多集群资源调度方法、装置及系统 | |
CN112463535A (zh) | 多集群异常处理方法及装置 | |
CN104063279A (zh) | 任务调度方法、装置和终端 | |
CN109445323B (zh) | 一种基于web的分布式智能测控软件平台设计方法 | |
CN111510480B (zh) | 一种请求发送方法、装置以及第一服务器 | |
CN113138812B (zh) | 航天器任务调度方法及装置 | |
CN113033814A (zh) | 训练机器学习模型的方法、装置以及存储介质 | |
CN114924851A (zh) | 训练任务的调度方法、装置、电子设备和存储介质 | |
CN109716735A (zh) | 用于在于一个或多个应用平台上执行的隔离的应用之间共享应用数据的系统和方法 | |
CN105827671A (zh) | 分布式使用、集中管理的系统平台以及门户服务器 | |
CN111078348A (zh) | 一种界面管理方法、装置、设备和存储介质 | |
CN114489989A (zh) | 一种基于代理客户端并行调度的方法及系统 | |
CN113556387A (zh) | 边缘网关控制方法及系统、装置、电子设备、存储介质 | |
CN110022323A (zh) | 一种基于WebSocket与Redux的跨终端实时交互的方法和系统 | |
CN113946389A (zh) | 联邦学习流程执行优化方法、设备、存储介质及程序产品 | |
CN110012003B (zh) | 一种云应用抓屏方法和装置 | |
CN102387137B (zh) | 多个网络设备智能操作逻辑的实现方法和系统 | |
CN111274018A (zh) | 一种基于dl框架下的分布式训练方法 | |
CN115543574A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160928 |
|
WD01 | Invention patent application deemed withdrawn after publication |