一种移动端本地数据自动上传服务器的方法与流程
未命名
09-08
阅读:121
评论:0

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.通过业务方预设的上传颗粒度对所述待处理数据进行分块。
27.优选地,根据预设的上传配置将所述待上传数据进行上传,包括:
28.根据业务方设置的开始时间节点及自定义的时间步长创建定时上传任务;
29.在达到开始时间节点时,开辟子线程执行所述定时上传任务;
30.对子线程的开辟数量进行监控,对其中空闲状态的子线程进行清理。
31.优选地,所述方法还包括:
32.在业务方的移动端进行应用注册及绑定,初始化应用配置项并注入接口。
33.优选地,所述方法还包括:
34.接收业务方录入的上传配置信息;
35.根据所述上传配置信息进行上传配置;所述上传配置至少包括:业务方版本号、自动上传开关、上传时间步长、分批上传限制、过期数据的清理时间间隔和本地数据限制大小。
36.优选地,所述方法还包括:
37.在进行冷启动时,检索本地数据中的无效数据并进行清理;
38.所述检索无效数据,包括:
39.根据预先配置的数据有效期检索本地数据中的过期数据作为无效数据;
40.检索本地数据中小于预先配置的版本号的数据作为无效数据;
41.在本地数据的大小超出预先配置的本地数据限制大小时,按照本地数据的存储时间顺序将超出部分作为无效数据。
42.本技术提供的技术方案可以包括以下有益效果:本技术中的移动端本地数据自动上传服务器的方法,包括:获取待处理数据;对待处理数据进行效验;在效验成功时,对待处理数据进行分块得到待上传数据;根据预设的上传配置将待上传数据进行上传;在上传成功时,将已上传数据对应的本地数据进行清除。本技术中采取自动化上传流程,移动端存在待上传至服务器的数据时,代替业务方主动上传,业务方无须在上传页面停留,大大提升业务方的使用体验。且本技术中对待处理数据进行效验,在效验成功时才允许进行上传,可以解决数据安全隐患。本技术中还根据预设的上传配置将待上传数据进行上传,通过提高上传配置的灵活度,方便业务方根据自身需求进行上传配置。
43.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
45.图1是本技术一个实施例提供的一种移动端本地数据自动上传服务器的方法的流程示意图;
46.图2是本技术另一个实施例提供的一种移动端本地数据自动上传服务器的方法的流程示意图;
47.图3是本技术又一个实施例提供的一种移动端本地数据自动上传服务器的方法的流程示意图。
具体实施方式
48.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
49.图1是本技术一个实施例提供的一种移动端本地数据自动上传服务器的方法的流程示意图,参照图1,一种移动端本地数据自动上传服务器的方法,包括:
50.s11:获取待处理数据;
51.s12:对待处理数据进行效验;
52.s13:在效验成功时,对待处理数据进行分块得到待上传数据;
53.s14:根据预设的上传配置将待上传数据进行上传;
54.s15:在上传成功时,将已上传数据对应的本地数据进行清除。
55.需要说明的是,本实施例中的技术方案涉及移动端数据自动上传的技术领域,具体实施在业务方的移动端中。
56.需要说明的是,获取待处理数据,包括:
57.检索本地数据的状态确认上传数据范围;
58.若本地数据中包含上传失败数据集,则优先从上传失败数据集中获取待处理数据,再从业务方上传数据集中获取待处理数据;
59.按照待处理数据的获取顺序生成待处理列表。
60.本实施例中,在上传数据前,通过检索本地数据的状态以确认上传数据范围,如是否存在上传失败数据集等。
61.需要说明的是,数据检索将会按照上传失败数据集、业务方上传数据集的顺序依次进行,然后按照待处理数据的获取顺序生成待处理列表,进而从待处理列表中将符合预期的数据进行分层,以备s12进行效验。
62.需要说明的是,对待处理数据进行效验,包括:
63.获取业务方进行注册时生成的唯一码;
64.根据唯一码和待处理数据中包含的验证令牌对待处理数据进行验证;其中,验证令牌是业务方在上传数据集时根据预设的加密方式生成的。
65.在具体实践中,开启自动上传任务前通过数据加密等手段异步的对s11分层后的
数据有效性进行校验。主要包括:
66.在业务方接入本方法搭载的模块之前,将通过本模块的注册服务进行注册以获取唯一码(包括appid及appsecret),在配置本模块服务时,业务方需要将唯一码传入至本模块中,在每次上传前,本模块将会与服务器进行唯一码校验以确认业务方的身份。
67.本模块还会与业务方提前约定好选用的加密方式,比如md5、rsa等,业务方在传入目标数据时将会以该方式进行加密得到本次上传的验证令牌。本模块在收到上传请求后将会验证验证令牌的有效性。若验证令牌一致,则视为效验通过,将本次任务添加到待上传列表中;若验证令牌不一致,则视为效验未通过,将认为数据已被第三方篡改,将忽略本次上传请求。
68.需要说明的是,本实施例中,对待处理数据进行分块,包括:
69.通过业务方预设的上传颗粒度对待处理数据进行分块。
70.需要说明的是,当上传任务执行前,需要通过业务方预设的上传颗粒度对待处理数据进行分块。
71.需要说明的是,根据预设的上传配置将待上传数据进行上传,包括:
72.根据业务方设置的开始时间节点及自定义的时间步长创建定时上传任务;
73.在达到开始时间节点时,开辟子线程执行定时上传任务;
74.对子线程的开辟数量进行监控,对其中空闲状态的子线程进行清理。
75.需要说明的是,本实施例中,将通过业务方设置的开始时间节点及自定义的时间步长创建定时任务,为提高资源利用率和程序执行效率,本实施例中将开辟子线程执行上传任务。由于线程的开辟会有一定的空间占用,且线程间的调度也会有一定的时间损耗,本实施例中将会对线程的开辟数量进行监控,并在合适的时机对多余线程进行清理以降低处理器在调度线程上的开销。
76.需要特别说明的是,本实施例中可以通过使用线程锁等方式解决多线程中数据传递及同步控制等常见问题。
77.需要说明的是,参照图2,方法还包括:
78.s16:在上传失败时,记录上传失败次数,判断当前上传失败次数是否大于预设阈值;
79.若大于预设阈值,将待上传数据对应的本地数据进行清除,并回调错误信息给业务方;
80.若不大于预设阈值,将待上传数据以本地数据的形式生成上传失败数据集。
81.需要说明的是,参照图2,方法还包括:
82.在效验失败时,将待上传数据对应的本地数据进行清除,并回调错误信息给业务方。
83.需要说明的是,在待上传的数据上传失败时,且当前上传失败次数不大于预设阈值时,表示该待上传的数据还有几率可以上传成功,需要继续尝试是否能上传成功。而在待上传的数据的当前上传失败次数大于预设阈值时,表示该待上传的数据已经多次上传失败,几乎不可能上传成功了,所以此时将待上传数据对应的本地数据进行清除,并回调错误信息给业务方。
84.需要说明的是,未通过效验的待上传数据可能已被第三方篡改,需要直接进行清
除,并回调错误信息给业务方。
85.在具体实践中,需要根据待上传数据类型的不同回调相应的错误信息,并根据用户的配置可选性的展示错误提示。
86.需要说明的是,本实施例中,在数据上传成功时,则将已上传数据对应的本地数据进行清除,以防止二次上传造成服务器压力或污染服务器数据。
87.需要说明的是,本实施例中的移动端本地数据自动上传服务器的方法在实施前,还需要进行预先配置,具体的:
88.参照图3,方法还包括:
89.s21:在业务方的移动端进行应用注册及绑定,初始化应用配置项并注入接口。
90.在具体实践中,本实施例中的移动端本地数据自动上传服务器的方法以自动上传模块为载体,通过在开发过程中植入本实施例所封装的自动上传模块进行应用的注册及绑定,初始化配置项、注入api等。
91.需要说明的是,本实施例中所封装的自动上传模块包括但不限于初始化组件、加载组件、持久化组件等。
92.参照图3,方法还包括:
93.s22:接收业务方录入的上传配置信息;
94.s23:根据上传配置信息进行上传配置;上传配置至少包括:业务方版本号、自动上传开关、上传时间步长、分批上传限制、过期数据的清理时间间隔和本地数据限制大小。
95.需要说明的是,在应用植入自动上传模块后,需在应用内进行自动上传模块的上传配置。
96.在具体实践中,可根据业务方版本号和服务器配合确定解析的数据结构与字段名称等属性;当业务方在升级数据结构后,本模块无需进行额外配置,服务器可自行通过业务方版本号进行相应的兼容处理,防止业务方私自修改数据结构后服务器无法解析或引起崩溃等问题。
97.开放自动上传开关的接口目的是让业务方可根据自身需求灵活选择配置。
98.业务方可通过传入自定义的时间步长来控制上传频率,将业务方首次启动本模块的时间节点持久化至本地,默认其为初始时间,当时间节点为初始时间与步长倍数时,自动触发上传任务。
99.受移动端性能、网络情况等影响,本模块将会对每次上传的数据包大小进行相应的限制,同时考虑到应用的活跃与否由业务方使用习惯决定,本模块对过期数据也会进行相应的处理。当数据过期或超出最大限制后,本模块将自动触发清理程序。
100.参照图3,方法还包括:
101.s24:在进行冷启动时,检索本地数据中的无效数据并进行清理;
102.检索无效数据,包括:
103.根据预先配置的数据有效期检索本地数据中的过期数据作为无效数据;
104.检索本地数据中小于预先配置的版本号的数据作为无效数据;
105.在本地数据的大小超出预先配置的本地数据限制大小时,按照本地数据的存储时间顺序将超出部分作为无效数据。
106.需要说明的是,本实施例中,考虑到移动端的性能及数据有效期,在冷启动时检索
本地数据中的无效数据并进行清理,无效数据的判断有以下三种:
107.一是相对时间,业务方可选性的传入上传数据的有效期,本模块将对本地数据逐条判断,并将过期数据进行清理;二是版本号,业务方可选择配置某个版本号,小于该版本号的数据将统一被清理;三是数据限制大小,为降低磁盘的占用空间,当数据超过指定阈值后将会按照时间的先后顺序对数据进行清理,减少冗余数据的占用,在具体实践中,默认数据限制大小为可用空间的10%。
108.可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
109.需要说明的是,在本技术的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本技术的描述中,除非另有说明,“多个”的含义是指至少两个。
110.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
111.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
112.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
113.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
114.上述提到的存储介质可以是只读存储器,磁盘或光盘等。
115.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
116.尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
技术特征:
1.一种移动端本地数据自动上传服务器的方法,其特征在于,包括:获取待处理数据;对所述待处理数据进行效验;在效验成功时,对所述待处理数据进行分块得到待上传数据;根据预设的上传配置将所述待上传数据进行上传;在上传成功时,将已上传数据对应的本地数据进行清除。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在上传失败时,记录上传失败次数,判断当前上传失败次数是否大于预设阈值;若大于预设阈值,将所述待上传数据对应的本地数据进行清除,并回调错误信息给业务方;若不大于预设阈值,将所述待上传数据以本地数据的形式生成上传失败数据集。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:在效验失败时,将所述待上传数据对应的本地数据进行清除,并回调错误信息给业务方。4.根据权利要求2所述的方法,其特征在于,获取待处理数据,包括:检索本地数据的状态确认上传数据范围;若本地数据中包含上传失败数据集,则优先从上传失败数据集中获取待处理数据,再从业务方上传数据集中获取待处理数据;按照待处理数据的获取顺序生成待处理列表。5.根据权利要求4所述的方法,其特征在于,对所述待处理数据进行效验,包括:获取业务方进行注册时生成的唯一码;根据所述唯一码和待处理数据中包含的验证令牌对所述待处理数据进行验证;其中,所述验证令牌是业务方在上传数据集时根据预设的加密方式生成的。6.根据权利要求1所述的方法,其特征在于,对所述待处理数据进行分块,包括:通过业务方预设的上传颗粒度对所述待处理数据进行分块。7.根据权利要求1所述的方法,其特征在于,根据预设的上传配置将所述待上传数据进行上传,包括:根据业务方设置的开始时间节点及自定义的时间步长创建定时上传任务;在达到开始时间节点时,开辟子线程执行所述定时上传任务;对子线程的开辟数量进行监控,对其中空闲状态的子线程进行清理。8.根据权利要求1所述的方法,其特征在于,所述方法还包括:在业务方的移动端进行应用注册及绑定,初始化应用配置项并注入接口。9.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收业务方录入的上传配置信息;根据所述上传配置信息进行上传配置;所述上传配置至少包括:业务方版本号、自动上传开关、上传时间步长、分批上传限制、过期数据的清理时间间隔和本地数据限制大小。10.根据权利要求9所述的方法,其特征在于,所述方法还包括:在进行冷启动时,检索本地数据中的无效数据并进行清理;所述检索无效数据,包括:
根据预先配置的数据有效期检索本地数据中的过期数据作为无效数据;检索本地数据中小于预先配置的版本号的数据作为无效数据;在本地数据的大小超出预先配置的本地数据限制大小时,按照本地数据的存储时间顺序将超出部分作为无效数据。
技术总结
本申请涉及一种移动端本地数据自动上传服务器的方法,包括:获取待处理数据;对待处理数据进行效验;在效验成功时,对待处理数据进行分块得到待上传数据;根据预设的上传配置将待上传数据进行上传;在上传成功时,将已上传数据对应的本地数据进行清除。本申请中采取自动化上传流程,移动端存在待上传至服务器的数据时,代替业务方主动上传,业务方无须在上传页面停留,大大提升业务方的使用体验。且本申请中对待处理数据进行效验,在效验成功时才允许进行上传,可以解决数据安全隐患。本申请中还根据预设的上传配置将待上传数据进行上传,通过提高上传配置的灵活度,方便业务方根据自身需求进行上传配置。身需求进行上传配置。身需求进行上传配置。
技术研发人员:王佳滨
受保护的技术使用者:上海中通吉网络技术有限公司
技术研发日:2023.05.18
技术公布日:2023/9/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/