[发明专利]一种单线程日志发送管理的方法在审
申请号: | 201810336345.2 | 申请日: | 2018-04-16 |
公开(公告)号: | CN108647100A | 公开(公告)日: | 2018-10-12 |
发明(设计)人: | 郭艳杰 | 申请(专利权)人: | 北京酷我科技有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F9/54;G06F11/34 |
代理公司: | 北京德和衡律师事务所 11405 | 代理人: | 陈浩 |
地址: | 100080 北京市海淀区农大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志发送 竞争关系 日志 任务队列 管理模块 单线程 数据缓存队列 发送网络 日志管理 同步标志 网络请求 持久化 算法 判定 调度 管理 清晰 维护 | ||
1.一种单线程日志发送管理的方法,其特征在于,包括如下步骤:
触发日志发送事件sendLog,产生日志派发请求,
日志派发管理模块接收日志派发请求,
日志派发管理模块生成日志发送sendDataTask任务,并派发到同步任务队列,
日志发送sendDataTask任务在执行过程中,判定当前是否存在竞争关系,
如果存在竞争关系,则将任务持久化后得到日志持久化数据data n,n=1,2,3……,将日志持久化数据data n添加到数据缓存队列,
如果没有竞争关系,则执行以下步骤:
首先设置同步标志isActive为真,
然后执行日志发送网络请求asycSend,
在日志发送网络请求结束后,生成继续日志发送sendNextTask任务,并派发到同步任务队列。
2.如权利要求1所述的单线程日志发送管理的方法,其特征在于:所述继续日志发送sendNextTask任务,从数据缓存队列中获取待发送的日志持久化数据data n,
如果数据缓存队列存在缓存数据,
则从队列头获取一条日志持久化数据data n,
然后执行日志发送网络请求asycSend,
在日志发送网络请求结束后,
生成继续日志发送sendNextTask任务,并派发到同步任务队列。
3.如权利要求1所述的单线程日志发送管理的方法,其特征在于:所述继续日志发送sendNextTask任务,从数据缓存队列中获取待发送的日志持久化数据data n,
如果数据缓存队列没有缓存数据,
则表明不存在需要发送的任务,
设置同步标志isActive为假,
结束发送任务。
4.如权利要求1所述的单线程日志发送管理的方法,其特征在于:竞争关系的判定原则为:
当同步标志isActive为真,此时产生日志派发请求,则认为遇到竞争关系出现。
5.如权利要求1所述的单线程日志发送管理的方法,其特征在于:当收到远端回调信息newwork callback,则判定当前日志发送网络请求结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京酷我科技有限公司,未经北京酷我科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810336345.2/1.html,转载请声明来源钻瓜专利网。