CN109257428A - 应用包的分发方法、装置、存储介质和设备 - Google Patents

应用包的分发方法、装置、存储介质和设备 Download PDF

Info

Publication number
CN109257428A
CN109257428A CN201811131160.4A CN201811131160A CN109257428A CN 109257428 A CN109257428 A CN 109257428A CN 201811131160 A CN201811131160 A CN 201811131160A CN 109257428 A CN109257428 A CN 109257428A
Authority
CN
China
Prior art keywords
packet
downloading
application
application packet
fragment
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
Application number
CN201811131160.4A
Other languages
English (en)
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.)
Flamingo Network (guangzhou) Ltd By Share Ltd
Original Assignee
Flamingo Network (guangzhou) Ltd By Share 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 Flamingo Network (guangzhou) Ltd By Share Ltd filed Critical Flamingo Network (guangzhou) Ltd By Share Ltd
Priority to CN201811131160.4A priority Critical patent/CN109257428A/zh
Publication of CN109257428A publication Critical patent/CN109257428A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种应用包的分发方法、装置、存储介质和设备,包括:获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;从所述下载请求信息中获取应用包下载地址和标识信息;根据应用包下载地址,获取应用包;将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。将标识信息当成应用包的一部分动态传送到下载请求端,既可区分各个渠道,又节省了服务器空间,降低了维护成本,在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。

Description

应用包的分发方法、装置、存储介质和设备
技术领域
本发明涉及应用下载领域,特别是涉及一种应用包的分发方法、装置、存储介质和设备。
背景技术
随着互联网技术的发展,各式各样功能的应用的出现,大大地方便了人们的生活。而为方便应用的下载,用于下载应用的应用包被分发到多个渠道,以使用户可通过各个渠道获得应用。
为了便于统计用户在各个渠道下载应用的情况,其中一种方式是在应用包上添加不同的渠道标识,再打包成不同的渠道包,然后将带有渠道标识的渠道包对应分发到各个渠道。当需要下载应用时,用户直接下载带有渠道标识的渠道包就可以获取应用,而通过渠道标识则可统计应用在各个渠道中的下载量、激活量、活跃度等信息。
发明人在进行本发明的创造时发现:上述将同一个应用打包成多个带有不同渠道标识的渠道包的方式,占用了大量的服务器空间,降低了下载效率。
发明内容
基于此,本发明的目的在于,提供一种应用包的分发方法,其具有可区分各个渠道、节省空间、提高效率的优点。
一种应用包的分发方法,包括如下步骤:
获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;
从所述下载请求信息中获取应用包下载地址和标识信息;
根据应用包下载地址,获取应用包;
将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
进一步地,所述将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端的步骤,包括:
获取应用包;
根据应用包的大小,将所述应用包切分成预设大小的多个分片;
将所述应用包逐片传送到所述下载请求端;
判断当前传送的分片是否为应用包的最后一个分片;
若当前传送的分片不是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,继续传送下一分片;
若当前传送的分片是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,在当前传送的分片的传送结束处继续传送标识信息到下载请求端。
通过将应用包分片下载,并识别应用包的位置,实现在下载应用包的最后一个分片尾部添加标识信息,进而应用的动态下载,实现了渠道的方便快捷区分。
进一步地,所述根据应用包下载地址,获取应用包的步骤,包括:
根据应用包下载地址,判断应用包是否第一次下载;
若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储;
若所述应用包不是第一次下载,则从缓存中获取应用包。
避免了同一个应用在同一个渠道下载时,不断地从云服务器获取应用包,提高了下载效率。
进一步地,所述若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储的步骤,包括:通过Nginx服务器解析应用包下载地址;通过CDN服务器下载应用包;从CDN服务器中获取应用包并缓存存储。
进一步地,所述从CDN服务器中获取应用包并缓存存储的步骤,包括:通过REDIS快速获取应用包;通过DFS缓存存储应用包。
通过结合Nginx服务器、CDN服务器、REDIS和DFS等技术,实现对下载请求的动态响应,进而实现应用包和标识信息的快速发送到下载请求端。
进一步地,所述将所述应用包逐片传送到所述下载请求端的步骤,包括:
判断当前传送的分片是否断点续传;
若当前传送的分片为断点续传,则将从断点处继续传送分片;
若当前传送的分片为非断点续传,则将所有分片重新进行传送。
进一步地,所述标识信息包括用于区分各个渠道的信息;或者,所述标识信息包括用于区分各个渠道的信息以及对应用包进行加密的信息。
本发明还提供一种应用包的分发装置,包括服务器,所述服务器包括:
下载请求获取模块,用于获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;
信息获取模块,用于从所述下载请求信息中获取应用包下载地址和标识信息;
应用包获取模块,用于根据应用包下载地址,获取应用包;
发送模块,用于将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
进一步地,所述发送模块包括:
获取模块,用于获取应用包;
切分模块,用于根据应用包的大小,将所述应用包切分成预设大小的多个分片;
传送模块,用于将所述应用包逐片传送到所述下载请求端;
状态判断模块,用于判断当前传送的分片是否为应用包的最后一个分片;
续传模块,用于在当前传送的分片不是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,继续传送下一分片;
标识信息传送模块,用于在当前传送的分片是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,在当前传送的分片的尾部传送标识信息到下载请求端。
通过将应用包分片下载,并识别应用包的位置,实现在下载应用包的最后一个分片尾部添加标识信息,进而应用的动态下载,实现了渠道的方便快捷区分。
进一步地,所述应用包获取模块包括:
判断模块,用于根据应用包下载地址,判断应用包是否第一次下载;
下载和存储模块,用于在所述应用包为第一次下载时,下载应用包,并将应用包缓存存储;
应用包获取模块,用于在所述应用包不是第一次下载时,从缓存中获取应用包。
避免了同一个应用在同一个渠道下载时,不断地从云服务器获取应用包,提高了下载效率。
本发明还提供一种计算机可读存储介质,其上储存有计算机程序,该计算机程序被处理器执行时实现如上述任意一项所述的应用包的分发方法的步骤。
本发明还提供一种计算机设备,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任意一项应用包的分发方法的步骤。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1为本发明实施例中应用包的分发方法的流程图;
图2为本发明获取应用包的流程图;
图3为本发明发送应用包和标识信息的流程图。
具体实施方式
请参阅图1,其为本发明实施例中应用包的分发方法的流程图。所述应用包的分发方法,包括如下步骤:
步骤S1:获取通过应用下载链接发送的下载请求信息;所述下载请求信息包括应用包下载地址和标识信息。
其中,所述应用包为投放在移动应用市场的应用安装包,对于安卓系统通常表现为apk安装包;对于ios系统通常表现为ipa或deb安装包。在本实施例中,所述应用包为未添加标识信息的安装包。
在本实施例中,所述标识信息可以包括用于区分各个渠道的信息;或者,所述标识信息可以包括用于区分各个渠道的信息以及对应用包进行加密的信息。例如:为防止非法抓包篡改信息,提高安全性,可在应用包尾部添加加密信息,这种加密信息同时也可用于区分各个渠道,如,可以采取base64加xxtea技术对尾部信息进行混合加密。
在本实施例中,所述应用下载链接包括应用包下载地址和标识信息,所述下载请求信息则包括所述应用下载链接,即包括了所述应用包下载地址和标识信息。在一个实施例中,所述应用下载链接可以为应用包下载地址和标识信息拼接形成的下载链接,例如,所述标识信息拼接在应用包下载地址的尾部。
在本实施例中,所述通过应用下载链接发送的下载请求信息为通过点击应用下载连接后,发送的下载请求消息。
步骤S2:从所述下载请求信息中获取应用包下载地址和标识信息。
步骤S3:根据应用包下载地址,获取应用包。
在一个实施例中,内容开发商可以将应用包预先存储到云服务器,进而可以从云服务器获取所述应用包。
步骤S4:将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
请参阅图2,其为本发明获取应用包的流程图。
在一个实施例中,为避免同一个应用在同一个渠道下载时,不断地从云服务器获取应用包,因此,为提高下载效率,所述根据应用包下载地址,获取应用包的步骤,包括:
步骤S31:根据应用包下载地址,判断应用包是否第一次下载;
步骤S32:若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储;
步骤S33:若所述应用包不是第一次下载,则从缓存中获取应用包。
在一个实施例中,为降低本地服务器的带宽压力,实现快速下载应用包,所述若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储的步骤,包括:通过Nginx服务器解析应用包下载地址;通过CDN服务器下载应用包;从CDN服务器中获取应用包并缓存存储。其中,Nginx服务器为一个高性能的HTTP和反向代理服务器。Nginx服务器能解析访问链接,对链接进行切割、转向、重写等等操作,进而通过查找从REDIS映射获取到应用包。CDN服务器(Content Delivery Network,内容分发网络),通过在现有的互联网中增加一层新的网络架构,将网站的内容如应用包发布到最接近用户的缓存服务器,使用户可以就近取得所需的内容,解决互联网网络拥塞状况,提高用户访问网站的响应速度。
在一个实施例中,为进一步实现快速下载应用包,所述从CDN服务器中获取应用包并缓存存储的步骤,包括:通过REDIS快速获取应用包;通过DFS缓存存储应用包。REDIS(Remote Dictionary Server,远程字典服务器)是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。DFS(DistributedFile System,分布式文件系统)指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。本实施例中,通过DFS分布式文件系统技术把应用包存储在不同的本地服务器。
为进一步提高下载效率,在一个实施例中,对在下载应用包时,先将应用包从公网链接转换成局域网的下载链接,再进行下载,从而使下载速率显著提升。
请参阅图3,其为本发明发送应用包和标识信息的流程图。
在一个实施例中,所述将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端的步骤,包括:
步骤S41:获取应用包;
步骤S42:根据应用包的大小,将所述应用包切分成预设大小的多个分片;
步骤S43:将所述应用包逐片传送到所述下载请求端;
步骤S44:判断当前传送的分片是否为应用包的最后一个分片;
步骤S45:若当前传送的分片不是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,继续传送下一分片;
步骤S46:若当前传送的分片是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,在当前传送的分片的尾部传送标识信息到下载请求端。
通过将应用包分片下载,并识别应用包的位置,实现在下载应用包的最后一个分片尾部添加标识信息,进而应用的动态下载,实现了渠道的方便快捷区分。
具体的,采用php脚本语言的内置函数对应用包进行分片下载和添加标识信息,其中,涉及的内置函数包括:fopen():读写文件函数;fseek():移动读取文件的光标位置;fread():读取指定长度的文件;pack():把数据装入一个二进制字符串。使用时,通过fopen()打开应用包;设置文件分片大小,使各分片大小一致,进而可以确定应用包的分片数,从而根据fseek()可计算出最后一个分片的位置;利用fread():读取最后一个分片的内容;利用pack()把渠道信息加到最后一个分片的尾部;传送到下载请求端时,前面的分片正常以二进制流格式输出,到最后一个分片则以修改后的分片内容输出给用户。
为防止应用包发送到下载请求端的过程中,因网络不稳定等因素造成中断传送中断,进而需要重新下载的问题,在一个实施例中,所述将所述应用包逐片传送到所述下载请求端的步骤,包括:
判断当前传送的分片是否断点续传;
若当前传送的分片为断点续传,则将从断点处继续传送分片;
若当前传送的分片为非断点续传,则将所有分片重新进行传送。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
进一步地,通过结合Nginx服务器、CDN服务器、REDIS和DFS等技术,实现对下载请求的动态响应,进而实现应用包和标识信息的快速发送到下载请求端。
本发明还提供一种应用包的分发装置,包括服务器,所述服务器包括:
下载请求获取模块,用于获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;
信息获取模块,用于从所述下载请求信息中获取应用包下载地址和标识信息;
应用包获取模块,用于根据应用包下载地址,获取应用包;
发送模块,用于将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
在一个实施例中,所述应用包获取模块包括:
判断模块,用于根据应用包下载地址,判断应用包是否第一次下载;
下载和存储模块,用于在所述应用包为第一次下载时,下载应用包,并将应用包缓存存储;
应用包获取模块,用于在所述应用包不是第一次下载时,从缓存中获取应用包。
在一个实施例中,为降低本地服务器的带宽压力,实现快速下载应用包,所述下载和存储模块,用于在所述应用包为第一次下载,则下载应用包,并将应用包缓存存储时,包括:通过Nginx服务器解析应用包下载地址;通过CDN服务器下载应用包;从CDN服务器中获取应用包并缓存存储。其中,Nginx服务器为一个高性能的HTTP和反向代理服务器。Nginx服务器能解析访问链接,对链接进行切割、转向、重写等等操作,进而通过查找从REDIS映射获取到应用包。CDN服务器(Content Delivery Network,内容分发网络),通过在现有的互联网中增加一层新的网络架构,将网站的内容如应用包发布到最接近用户的缓存服务器,使用户可以就近取得所需的内容,解决互联网网络拥塞状况,提高用户访问网站的响应速度。
在一个实施例中,为进一步实现快速下载应用包,所述应用包获取模块从CDN服务器中获取应用包并缓存存储时,包括:通过REDIS快速获取应用包;通过DFS缓存存储应用包。REDIS(Remote Dictionary Server,远程字典服务器)是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。DFS(Distributed File System,分布式文件系统)指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。本实施例中,通过DFS分布式文件系统技术把应用包存储在不同的本地服务器。
为进一步提高下载效率,在一个实施例中,对在下载应用包时,先将应用包从公网链接转换成局域网的下载链接,再进行下载,从而使下载速率显著提升。
在一个实施例中,所述发送模块包括:
获取模块,用于获取应用包;
切分模块,用于根据应用包的大小,将所述应用包切分成预设大小的多个分片;
传送模块,用于将所述应用包逐片传送到所述下载请求端;
状态判断模块,用于判断当前传送的分片是否为应用包的最后一个分片;
续传模块,用于在当前传送的分片不是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,继续传送下一分片;
标识信息传送模块,用于在当前传送的分片是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,在当前传送的分片的尾部传送标识信息到下载请求端。
为防止应用包发送到下载请求端的过程中,因网络不稳定等因素造成中断传送中断,进而需要重新下载的问题,在一个实施例中,所述传送模块进一步包括:
断点续传判断模块,用于判断当前传送的分片是否断点续传;
断点续传传送模块,用于在当前传送的分片为断点续传时,从断点处继续传送分片;
重传模块,用于在当前传送的分片为非断点续传时,将所有分片重新进行传送。
本发明对于同一个应用,只需要先下载应用包,然后在将应用包传送到下载请求端时,在应用包的尾部动态添加标识信息,相当于将标识信息当成应用包的一部分动态传送到下载请求端,进而既可通过标识信息区分各个渠道,又节省了服务器空间,而且还可以降低维护成本,提高下载效率在需要获取标识信息时,只需要直接读取应用包尾部的信息即可,方便快捷。另外,本发明直接通过下载链接就可以方便地实现下载,无需下载客户端存储链接信息,可适用于各种场景的应用,大大方便了下载。
进一步地,通过结合Nginx服务器、CDN服务器、REDIS和DFS等技术,实现对下载请求的动态响应,进而实现应用包和标识信息的快速发送到下载请求端。
本发明还提供一种计算机可读存储介质,其上储存有计算机程序,该计算机程序被处理器执行时实现如上述任意一项所述的应用包的分发方法的步骤。
本发明可采用在一个或多个其中包含有程序代码的存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。计算机可读储存介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本发明还提供一种计算机设备,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如任意一项所述的应用包的分发方法的步骤。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

Claims (12)

1.一种应用包的分发方法,其特征在于,包括如下步骤:
获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;
从所述下载请求信息中获取应用包下载地址和标识信息;
根据应用包下载地址,获取应用包;
将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
2.根据权利要求1所述的应用包的分发方法,其特征在于,所述将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端的步骤,包括:
获取应用包;
根据应用包的大小,将所述应用包切分成预设大小的多个分片;
将所述应用包逐片传送到所述下载请求端;
判断当前传送的分片是否为应用包的最后一个分片;
若当前传送的分片不是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,继续传送下一分片;
若当前传送的分片是应用包的最后一个分片,则在当前传送的分片传送到下载请求端后,在当前传送的分片的传送结束处继续传送标识信息到下载请求端。
3.根据权利要求1所述的应用包的分发方法,其特征在于,所述根据应用包下载地址,获取应用包的步骤,包括:
根据应用包下载地址,判断应用包是否第一次下载;
若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储;
若所述应用包不是第一次下载,则从缓存中获取应用包。
4.根据权利要求3所述的应用包的分发方法,其特征在于,所述若所述应用包为第一次下载,则下载应用包,并将应用包缓存存储的步骤,包括:通过Nginx服务器解析应用包下载地址;通过CDN服务器下载应用包;从CDN服务器中获取应用包并缓存存储。
5.根据权利要求4所述的应用包的分发方法,其特征在于,所述从CDN服务器中获取应用包并缓存存储的步骤,包括:通过REDIS快速获取应用包;通过DFS缓存存储应用包。
6.根据权利要求1所述的应用包的分发方法,其特征在于,所述将所述应用包逐片传送到所述下载请求端的步骤,包括:
判断当前传送的分片是否断点续传;
若当前传送的分片为断点续传,则将从断点处继续传送分片;
若当前传送的分片为非断点续传,则将所有分片重新进行传送。
7.根据权利要求1所述的应用包的分发方法,其特征在于,
所述标识信息包括用于区分各个渠道的信息;或者,
所述标识信息包括用于区分各个渠道的信息以及对应用包进行加密的信息。
8.一种应用包的分发装置,包括服务器,其特征在于,所述服务器包括:
下载请求获取模块,用于获取通过应用下载链接发送的下载请求信息;所述下载请求信息中包括应用包下载地址和标识信息;
信息获取模块,用于从所述下载请求信息中获取应用包下载地址和标识信息;
应用包获取模块,用于根据应用包下载地址,获取应用包;
发送模块,用于将应用包传送给下载请求端时,在应用包的传送结束处继续传送标识信息到下载请求端。
9.根据权利要求8所述的应用包的分发装置,其特征在于,所述发送模块包括:
获取模块,用于获取应用包;
切分模块,用于根据应用包的大小,将所述应用包切分成预设大小的多个分片;
传送模块,用于将所述应用包逐片传送到所述下载请求端;
状态判断模块,用于判断当前传送的分片是否为应用包的最后一个分片;
续传模块,用于在当前传送的分片不是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,继续传送下一分片;
标识信息传送模块,用于在当前传送的分片是应用包的最后一个分片时,且在当前传送的分片传送到下载请求端后,在当前传送的分片的尾部传送标识信息到下载请求端。
10.根据权利要求8所述的应用包的分发装置,其特征在于,所述应用包获取模块包括:
判断模块,用于根据应用包下载地址,判断应用包是否第一次下载;
下载和存储模块,用于在所述应用包为第一次下载时,下载应用包,并将应用包缓存存储;
应用包获取模块,用于在所述应用包不是第一次下载时,从缓存中获取应用包。
11.一种计算机可读存储介质,其上储存有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的应用包的分发方法的步骤。
12.一种计算机设备,其特征在于,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项应用包的分发方法的步骤。
CN201811131160.4A 2018-09-27 2018-09-27 应用包的分发方法、装置、存储介质和设备 Pending CN109257428A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811131160.4A CN109257428A (zh) 2018-09-27 2018-09-27 应用包的分发方法、装置、存储介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811131160.4A CN109257428A (zh) 2018-09-27 2018-09-27 应用包的分发方法、装置、存储介质和设备

Publications (1)

Publication Number Publication Date
CN109257428A true CN109257428A (zh) 2019-01-22

Family

ID=65048423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811131160.4A Pending CN109257428A (zh) 2018-09-27 2018-09-27 应用包的分发方法、装置、存储介质和设备

Country Status (1)

Country Link
CN (1) CN109257428A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314021A (zh) * 2020-02-07 2020-06-19 北京字节跳动网络技术有限公司 数据传输方法、装置、电子设备及计算机可读存储介质
CN113179314A (zh) * 2021-04-25 2021-07-27 网易(杭州)网络有限公司 一种渠道安装包的处理方法和装置
CN113709569A (zh) * 2020-06-19 2021-11-26 天翼智慧家庭科技有限公司 用于机顶盒内多个应用客户端批量自动升级的方法和系统
CN115412589A (zh) * 2022-07-12 2022-11-29 湖南于一科技有限公司 基于约定方式实现的无服务端应用内升级的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040193702A1 (en) * 2003-03-31 2004-09-30 Microsoft Corp. System and method of network content location for roaming clients
CN101291195A (zh) * 2008-05-23 2008-10-22 中兴通讯股份有限公司 实现断点续传的文件下载的方法、系统及终端
CN103188283A (zh) * 2011-12-27 2013-07-03 腾讯科技(深圳)有限公司 文件上传下载的方法、服务器及系统
CN104168093A (zh) * 2013-05-20 2014-11-26 腾讯科技(深圳)有限公司 一种文件传输方法及装置
CN104850444A (zh) * 2015-05-29 2015-08-19 百度在线网络技术(北京)有限公司 软件安装包的分发方法及装置、软件安装方法及装置
CN107147750A (zh) * 2017-07-21 2017-09-08 广州爱九游信息技术有限公司 上传、打包装置及服务平台、下载服务器和分发方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040193702A1 (en) * 2003-03-31 2004-09-30 Microsoft Corp. System and method of network content location for roaming clients
CN101291195A (zh) * 2008-05-23 2008-10-22 中兴通讯股份有限公司 实现断点续传的文件下载的方法、系统及终端
CN103188283A (zh) * 2011-12-27 2013-07-03 腾讯科技(深圳)有限公司 文件上传下载的方法、服务器及系统
CN104168093A (zh) * 2013-05-20 2014-11-26 腾讯科技(深圳)有限公司 一种文件传输方法及装置
CN104850444A (zh) * 2015-05-29 2015-08-19 百度在线网络技术(北京)有限公司 软件安装包的分发方法及装置、软件安装方法及装置
CN107147750A (zh) * 2017-07-21 2017-09-08 广州爱九游信息技术有限公司 上传、打包装置及服务平台、下载服务器和分发方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨源鑫,侯继红,陈锦勇,刘凯强: "《嵌入式C语言技术实战开发》", 31 May 2018 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314021A (zh) * 2020-02-07 2020-06-19 北京字节跳动网络技术有限公司 数据传输方法、装置、电子设备及计算机可读存储介质
CN113709569A (zh) * 2020-06-19 2021-11-26 天翼智慧家庭科技有限公司 用于机顶盒内多个应用客户端批量自动升级的方法和系统
CN113179314A (zh) * 2021-04-25 2021-07-27 网易(杭州)网络有限公司 一种渠道安装包的处理方法和装置
CN113179314B (zh) * 2021-04-25 2022-05-13 网易(杭州)网络有限公司 一种渠道安装包的处理方法和装置
CN115412589A (zh) * 2022-07-12 2022-11-29 湖南于一科技有限公司 基于约定方式实现的无服务端应用内升级的方法
CN115412589B (zh) * 2022-07-12 2023-10-31 湖南于一科技有限公司 基于约定方式实现的无服务端应用内升级的方法

Similar Documents

Publication Publication Date Title
CN109257428A (zh) 应用包的分发方法、装置、存储介质和设备
US20180019961A1 (en) Message processing method, processing server, terminal, and storage medium
JP5426545B2 (ja) 暗号化広域ネットワークトラフィック最適化方法
WO2016101763A1 (zh) 通过cdn下载资源的实现方法和装置、服务器、客户端
CN110198334B (zh) 基于对象存储服务的访问方法、装置和存储介质
US20190199818A1 (en) Accurate caching in adaptive video streaming based on collision resistant hash applied to segment contents and ephemeral request and url data
KR20130088774A (ko) 분할 콘텐트 전달 시스템 및 방법
US9264495B2 (en) Apparatus and methods for handling network file operations over a fibre channel network
KR20170100664A (ko) 네트워크에서 콘텐츠를 전달하기 위한 엔드-투-엔드 솔루션을 위한 방법들 및 시스템들
CN103001964A (zh) 一种局域网环境下的缓存加速方法
CN113179314B (zh) 一种渠道安装包的处理方法和装置
US20160142312A1 (en) Packet Forwarding Method and Device
CN109525622B (zh) 分片资源id的生成方法、资源分享方法,装置及电子设备
US9055113B2 (en) Method and system for monitoring flows in network traffic
CN105279217B (zh) 可重构内容对象
CN110519656B (zh) 自适应流媒体的播放方法、系统以及服务器
WO2016071607A1 (fr) Délégation d'intermédiation sur un échange de données chiffrées
US9729650B2 (en) Providing data to a network terminal
CN103685367B (zh) 离线下载系统和方法
CN108063713B (zh) 一种网络请求的处理方法及装置
CN106060155A (zh) P2p资源共享的方法及装置
CN104253821A (zh) 一种spdy协议代理方法及代理系统
EP3970352A1 (fr) Procede et dispositif de traitement d'une demande d'anonymisation d'une adresse ip source, procede et dispositif de demande d'anonymisation d'une adresse ip source
CN115801769B (zh) 渠道包获取方法、电子设备及存储介质
CN112995065B (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190122

RJ01 Rejection of invention patent application after publication