一种图片加载方法、装置及系统的制作方法

文档序号:7809570阅读:119来源:国知局
一种图片加载方法、装置及系统的制作方法
【专利摘要】本发明公开了一种图片加载方法、装置及系统,用于实现图片的快速加载。所述方法包括:接收来自主设备的图片包选择指令;根据所述图片包选择指令,获取所述图片包中图片的序列号;生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述图片的序列号;根据当前网络状况,将所述缓存指令发送给预设数量的副设备。在对图片进行缓存的基础上,根据当前的网络状况缓存图片,使得网络带宽利用率高,避免了过多图片的缓存造成的网络拥堵,从而提高图片的下载速度,节省时间,提高用户的体验度。
【专利说明】一种图片加载方法、装置及系统

【技术领域】
[0001] 本发明涉及网络通信【技术领域】,尤其涉及一种图片加载方法、装置及系统。

【背景技术】
[0002] 在教学或展会等应用方面,通常需要多个设备同时从服务器下载图片进行查看。 以教学场景为例,教师打开PPT或word教案,当教师在自己的设备上浏览图片时,学生设备 也会随教师设备自动从服务器下载该图片进行浏览。这种多个设备实时下载图片的方法容 易造成网络堵塞、图片下载速度过慢。
[0003] 相关技术中,多个设备可先在后台缓存服务器中的图片。当教师端打开PPT或 word教案时,学生端的设备就会按照教案中的图片顺序依次缓存图片,即当所有的学生设 备将第一张图片缓存完成后,再缓存下一张图片,直至将所有的图片缓存完成。然而,这种 方法只能保证学生在浏览已经缓存完成的图片时效果很好,而当需要浏览未缓存的图片 时,由于所有的设备都未缓存该图片,则需要所有设备同时从服务器下载该图片,从而造成 网络瞬间拥堵,图片下载速度过慢,浪费时间,降低用户的体验度。


【发明内容】

[0004] 本发明实施例提供一种图片加载方法、装置及系统,用于实现图片的快速加载。
[0005] -种图片加载方法,包括以下步骤:
[0006] 接收来自主设备的图片包选择指令;
[0007] 根据所述图片包选择指令,获取所述图片包中图片的序列号;
[0008] 生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述图片的序列号;
[0009] 根据当前网络状况,将所述缓存指令发送给预设数量的副设备。
[0010] 本发明实施例的一些有益效果可以包括:在对图片进行缓存的基础上,根据当前 的网络状况缓存图片,使得网络带宽利用率高,避免了过多图片的缓存造成的网络拥堵,从 而提高图片的下载速度,节省时间,提高用户的体验度。
[0011] 可选的,所述图片包选择指令中包含所述图片包的名称;
[0012] 所述根据所述图片包选择指令,获取所述图片包中图片的序列号,包括:
[0013] 根据所述图片包的名称查找所述图片包;
[0014] 从所述图片包中获取所述图片的序列号。
[0015] 在可选方案中,根据图片包的名称查找所对应的图片包,从而准确地获取图片包 中图片的序列号。
[0016] 可选的,所述根据当前网络状况,将所述缓存指令发送给预设数量的副设备,包 括:
[0017] 将所述图片包中的第k张图片对应的缓存指令发送给i个副设备,其中,k、i为大 于等于1的整数,i随k的增大而减小。
[0018] 在可选方案中,副设备以阶梯状对图片进行缓存,避免了过多的副设备同时缓存 图片造成网络拥堵,从而提高图片的下载速度,节省时间,提高用户的体验度。
[0019] 可选的,所述将所述图片包中的第k张图片对应的缓存指令发送给i个副设备,其 中,k、i为大于等于1的整数,i随k的增大而减小,包括:
[0020] 当有m个副设备和η张图片时,将所述图片包中的第k张图片对应的缓存指令发 送给m-k个副设备,其中,m、n、k为大于等于1的整数,m彡k,η彡k。
[0021] 在可选方案中,当副设备的数量大于图片数量时,副设备可按照一定的斜率对图 片进行缓存,从而使得图片加载效果更好,避免网络拥堵。
[0022] 可选的,所述根据当前网络状况,将所述缓存指令发送给预设数量的副设备之后, 所述方法还包括:
[0023] 按照所述图片的序列号的顺序,将所述图片对应的缓存指令发送给未发送所述缓 存指令的副设备。
[0024] 在可选方案中,副设备以阶梯状缓存图片之后,将图片的缓存指令再依次发送给 未发送的副设备,使得更多的副设备对图片进行缓存,从而避免了网络拥堵,提高图片下载 速度,以及用户的体验度。
[0025] 可选的,所述方法还包括:
[0026] 当接收到来自主设备的图片下载指令时,将所述图片下载指令发送给副设备;或,
[0027] 在发送所述缓存指令的过程中,接收到来自主设备的图片下载指令时,暂停发送 所述缓存指令,将所述图片下载指令发送给副设备。
[0028] 在可选方案中,当需要下载图片时,可暂停图片的缓存动作,并下载所需图片,避 免了因缓存图片而造成的图片下载延迟。
[0029] 可选的,所述根据当前网络状况,将所述缓存指令发送给预设数量的副设备,包 括:
[0030] 判断当前的网络流量是否低于预设阈值;
[0031] 当当前的网络流量低于所述预设阈值时,将所述缓存指令发送给预设数量的副设 备。
[0032] 在可选方案中,当网络流量低于预设阈值时,副设备对图片进行缓存,从而避免了 需要下载图片时网络拥堵的情况。
[0033] -种图片加载装置,包括:
[0034] 接收模块,用于接收来自主设备的图片包选择指令;
[0035] 获取模块,用于根据所述图片包选择指令,获取所述图片包中图片的序列号;
[0036] 生成模块,用于生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述 图片的序列号;
[0037] 第一发送模块,用于根据当前网络状况,将所述缓存指令发送给预设数量的副设 备。
[0038] 可选的,所述获取模块包括:
[0039] 查找单元,用于根据所述图片包的名称查找所述图片包;
[0040] 获取单元,用于从所述图片包中获取所述图片的序列号。
[0041] 可选的,所述第一发送模块,还用于将所述图片包中的第k张图片对应的缓存指 令发送给i个副设备,其中,k、i为大于等于1的整数,i随k的增大而减小。
[0042] 可选的,所述第一发送模块,还用于当有m个副设备和η张图片时,将所述图片包 中的第k张图片对应的缓存指令发送给m-k个副设备,其中,m、n、k为大于等于1的整数, m > k, η > k〇
[0043] 可选的,所述第一发送模块,还用于按照所述图片的序列号的顺序,将所述图片对 应的缓存指令发送给未发送所述缓存指令的副设备。
[0044] 可选的,所述装置还包括:
[0045] 第二发送模块,用于当接收到来自主设备的图片下载指令时,将所述图片下载指 令发送给副设备;或,在发送所述缓存指令的过程中,接收到来自主设备的图片下载指令 时,暂停发送所述缓存指令,将所述图片下载指令发送给副设备。
[0046] 可选的,所述第一发送模块包括:
[0047] 判断单元,用于判断当前的网络流量是否低于预设阈值;
[0048] 发送单元,用于当当前的网络流量低于所述预设阈值时,将所述缓存指令发送给 预设数量的副设备。
[0049] 一种图片加载系统,包括主设备、服务器和副设备,其中,
[0050] 所述主设备,用于向所述服务器发送图片包选择指令;向所述服务器发送图片下 载指令;
[0051] 所述服务器,用于接收所述图片包选择指令,根据所述图片包选择指令,获取所述 图片包中图片的序列号;生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述 图片的序列号;根据当前网络状况,将所述缓存指令发送给预设数量的副设备;
[0052] 所述副设备,用于接收所述缓存指令,根据所述缓存指令加载所述图片。
[0053] 本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明 书、权利要求书、以及附图中所特别指出的结构来实现和获得。
[0054] 下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

【专利附图】

【附图说明】
[0055] 附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实 施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0056] 图1为本发明实施例中一种图片加载方法的流程图;
[0057] 图2为本发明实施例中获取图片的序列号的方法的流程图;
[0058] 图3为一实施例中现有技术的图片加载方法与本发明实施例的图片加载方法的 坐标图;
[0059] 图4为一具体实施例中图片加载方法的流程图;
[0060] 图5为另一具体实施例中图片加载方法的流程图;
[0061] 图6为本发明实施例中一种图片加载装置的框图;
[0062] 图7为本发明实施例中图片加载装置的获取模块的框图;
[0063] 图8为本发明实施例中图片加载装置的第一发送模块的框图;
[0064] 图9为本发明实施例中一种图片加载系统的框图。

【具体实施方式】
[0065] 以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实 施例仅用于说明和解释本发明,并不用于限定本发明。
[0066] 根据本发明的一个方面,提供了一种图片加载的方法,如图1所示,包括以下几个 步骤:
[0067] 步骤S101,接收来自主设备的图片包选择指令;
[0068] 步骤S102,根据图片包选择指令,获取图片包中图片的序列号;
[0069] 步骤S103,生成图片包中图片对应的缓存指令,缓存指令包含图片的序列号;
[0070] 步骤S104,根据当前网络状况,将缓存指令发送给预设数量的副设备。
[0071] 采用本发明的技术方案,在对图片进行缓存的基础上,根据当前的网络状况缓存 图片,使得网络带宽利用率高,避免了过多图片的缓存造成的网络拥堵,从而提高图片的下 载速度,节省时间,提高用户的体验度。本发明提供的方案主要针对副设备数量过多的情 况。当副设备数量过多时,同时加载图片会使得加载速度非常缓慢,采用本发明的方案可在 很大程度上缓解网络拥堵的情况。此外,当副设备数量少于图片数量时,也可采用本发明提 出的方案来加载图片。
[0072] 当主设备选择一个图片包时,将图片包选择指令传发至服务器,服务器接收该图 片包选择指令,根据该图片包选择指令获取图片包中图片的序列号,并生成图片包中图片 对应的缓存指令,其中,与图片对应的缓存指令中包含该图片的序列号。同时,服务器获取 副设备列表,根据当前网络状况,将包含图片序列号的缓存指令发送给预设数量的副设备, 预设数量的副设备接收缓存指令,并根据缓存指令中的图片序列号缓存所对应的图片。
[0073] 在步骤S102中,主设备发送给服务器的图片包选择指令中包含该图片包的名称, 服务器根据图片包的名称来查找图片包,并通过查找到的图片包获取图片的序列号,如图2 所示,包括以下步骤:
[0074] 步骤S1021,根据图片包的名称查找图片包;
[0075] 步骤S1022,从图片包中获取图片的序列号。
[0076] 在步骤S103中,可以每张图片对应各自的缓存指令,缓存指令中包含对应图片的 序列号;也可以通过对图片进行分组,每组图片对应一个缓存指令,此时,缓存指令中包含 对应的图片组中图片的序列号。
[0077] 在步骤S104中,服务器根据当前的网络状况,将缓存指令发送给预设数量的副设 备。其中,预设数量可根据网络状况由用户预先设定。例如,当有50个副设备时,在网络状 况良好的情况下,可设定将第一张图片的缓存指令发送给50个副设备,将第二张图片的缓 存指令发送给47个副设备;在网络状况不好的情况下,可设定将其中一张图片的缓存指令 发送给少数副设备,而除预设数量的副设备之外的副设备,服务器暂时不对其发送缓存指 令。
[0078] 可选的,将图片包中的第k张图片对应的缓存指令发送给i个副设备,其中,k、i 为大于等于1的整数,i随k的增大而减小。即:将缓存指令按照阶梯状的形式发送给预设 数量的副设备,随着副设备对图片包中图片的加载,网络带宽使用率逐渐增大,而预设的缓 存图片数量也相应减少,因此避免了过多的副设备同时缓存图片造成网络拥堵,进而提高 图片的下载速度,节省时间,提高用户的体验度。
[0079] 可选的,预设的副设备的数量可按照一定的斜率进行设定,S卩:当有m个副设备和 η张图片时,将图片包中的第k张图片对应的缓存指令发送给m-k个副设备,其中,m、n、k 为大于等于1的整数,m彡k,η彡k。即:将第一张图片对应的缓存指令发送给m-1个副设 备,然后将第二张图片对应的缓存指令发送给m-2个副设备,等等。依次将第k张图片对应 的缓存指令发送给第m-k个副设备,直到m-k = 0或k = η时,完成这一轮的图片缓存。
[0080] 图3为现有技术与本发明的技术方案中加载图片的方法的区别示意图。如图3所 示,横轴表示图片包中图片的数量,纵轴表示已缓存相应图片的副设备的数量。在坐标图 中,实线代表现有技术中加载图片的方法,虚线代表本发明的技术方案中加载图片的方法。 在该实施例中,假设图片包中共有20张图片,副设备数量为30。
[0081] 在实线所代表的方案中,副设备按照图片包中的图片的顺序对图片进行缓存,并 且当所有的副设备都缓存完当前图片后,再去缓存下一张图片,这样,在刚开始缓存图片 时,由于网络状况良好,30个副设备可同时较快地缓存图片,不会产生网络拥堵的情况,而 当缓存到第10张图片时,由于大量副设备同时缓存图片造成网络带宽使用率过高,此时的 网络带宽不足以使30个副设备同时缓存图片,因此,缓存图片的速度会突然减小,出现网 络拥堵的情况。同时,当主设备端打开图片包中的一张图片时,服务器接收主设备的图片下 载指令,并将图片下载指令发送给副设备,副设备根据图片下载指令下载相应的图片。如果 主设备打开的是副设备已经加载过的图片,则副设备端会快速显示该图片,而如果主设备 打开的是副设备未加载的图片,由于此时网络带宽使用率过高,因此会造成副设备下载图 片的速度过慢,使得副设备无法及时下载图片并显示,从而影响主设备与副设备之间的同 步,浪费用户时间,降低用户的体验度。
[0082] 而在虚线所代表的方案中,服务器根据当前的网络状况,将缓存指令发送给预设 数量的副设备,副设备的预设数量随着缓存图片的增加而减小。当服务器将第10张图片的 缓存指令发送给预设数量的副设备(例如发送给15个副设备)时,主设备端打开图片包中 一张图片,如果主设备打开的图片为前10张图片中的一张,由于一部分副设备已经加载该 图片,且网络状态良好,因此未缓存该图片的副设备可以迅速地下载该图片进行显示;如果 主设备打开的图片为第10张图片之后的图片,虽然所有的副设备都未加载该图片,但由于 网络带宽使用率不高,副设备仍然可以快速地下载该图片,从而避免了网络拥堵的情况,能 够及时为用户显示所需图片。
[0083] 可选的,服务器根据当前的网络状况,将缓存指令发送给预设数量的副设备之后, 按照图片包中图片的序列号的顺序,将图片对应的缓存指令发送给未发送该缓存指令的副 设备,缓存指令中包含对应图片的序列号。即:在第一轮图片缓存完成之后,从图片包中的 第一张图片开始,对未缓存第一张图片的副设备,依次发送第一张图片对应的缓存指令,发 送完成之后,再将第二张图片对应的缓存指令发送给未缓存第二张图片的副设备,直至将 所有图片的缓存指令发送给所有的副设备,第二轮图片缓存结束。
[0084] 可选的,当主设备打开图片包中的图片时,将图片下载指令发送给服务器,服务器 将接收到的图片下载指令发送给副设备,副设备接收图片下载指令并下载该图片;或者,在 服务器向副设备发送缓存指令的过程中,当主设备打开图片包中的图片时,将图片下载指 令发送给服务器,服务器则停止当前的缓存指令的发送,并接收图片下载指令,将接收到的 图片下载指令发送给副设备,副设备接收图片下载指令并下载该图片。在服务器发送完图 片下载指令之后,继续进行之前中断的缓存指令的发送。
[0085] 可选的,服务器判断当前的网络流量是否低于预设阈值,当当前的网络流量低于 预设阈值时,将缓存指令发送给预设数量的副设备。其中,网络流量的预设阈值可根据实际 情况进行设定,是不影响服务器进行指令传输等其他正常工作的一个合理的流量值。例如, 预设阈值可设定为l〇〇kb。服务器获取当前网络流量的值,并将当前网络流量的值与预设阈 值100kb进行比较,当判断当前网络流量值低于100kb时,将图片包中图片对应的缓存指令 发送给预设数量的副设备。
[0086] 此外,服务器可周期性地对网络流量进行监控,例如,可设定时间间隔为3秒钟, 即服务器每3秒对网络流量进行一次监控,当监控到当前的网络流量低于预设阈值时,将 图片包中图片对应的缓存指令发送给预设数量的副设备。
[0087] 这样,当主设备打开图片包中的图片时,副设备由于预先缓存了部分图片,因此可 避免网络流量较低时多个副设备同时下载图片造成的网络拥堵。当本发明的图片加载方 法应用于教学中时,根据教师讲课的特点,教师对PPT或者word教案中的某张图片的讲解 需要一段时间,因此在该时间段内,学生设备可以预先缓存其他图片,使得教师在讲课过程 中,学生设备能够更快速地打开相应的图片,提高用户的体验度。
[0088] 下面通过两个具体实施例来说明本发明的图片加载的方法。
[0089] 在一具体实施例中,以教师讲课为例,教师的PPT教案共有8张图片,且共有10个 学生设备。如图4所示,具体包括以下步骤:
[0090] 步骤S401,教师设备打开PPT,并将图片包选择指令发送给服务器;
[0091] 步骤S402,服务器接收图片包选择指令,获取PPT中的8张图片各自的序列号;
[0092] 步骤S403,服务器生成PPT中每张图片各自对应的缓存指令;缓存指令中包含对 应图片的序列号;
[0093] 步骤S404,从第一张图片开始,服务器将缓存指令依次发送给预设数量的学生设 备;在该实施例中,将PPT中的第k张图片对应的缓存指令发送给?ο-k个学生设备,如表1 所示,将第1张图片对应的缓存指令发送给9个学生设备,将第2张图片对应的缓存指令发 送给8个学生设备,以此类推;
[0094] 步骤S405,当服务器将第5张图片对应的缓存指令发送给预设的5个学生设备时, 教师设备打开第7张图片,并将第7张图片对应的图片下载指令发送给服务器;
[0095] 步骤S406,服务器停止发送第5张图片对应的缓存指令,接收来自教师设备的第7 张图片的图片下载指令;
[0096] 步骤S407,服务器将接收到的第7张图片的图片下载指令发送给所有学生设备;
[0097] 步骤S408,学生设备接收第7张图片的图片下载指令,并下载第7张图片;
[0098] 步骤S409,服务器继续将第5张图片对应的缓存指令发送给预设的5个学生设备。
[0099] 表 1
[0100]

【权利要求】
1. 一种图片加载方法,其特征在于,包括: 接收来自主设备的图片包选择指令; 根据所述图片包选择指令,获取所述图片包中图片的序列号; 生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述图片的序列号; 根据当前网络状况,将所述缓存指令发送给预设数量的副设备。
2. 根据权利要求1所述的方法,其特征在于,所述图片包选择指令中包含所述图片包 的名称; 所述根据所述图片包选择指令,获取所述图片包中图片的序列号,包括: 根据所述图片包的名称查找所述图片包; 从所述图片包中获取所述图片的序列号。
3. 根据权利要求1所述的方法,其特征在于,所述根据当前网络状况,将所述缓存指令 发送给预设数量的副设备,包括: 将所述图片包中的第k张图片对应的缓存指令发送给i个副设备,其中,k、i为大于等 于1的整数,i随k的增大而减小。
4. 根据权利要求3所述的方法,其特征在于,所述将所述图片包中的第k张图片对应的 缓存指令发送给i个副设备,其中,k、i为大于等于1的整数,i随k的增大而减小,包括: 当有m个副设备和η张图片时,将所述图片包中的第k张图片对应的缓存指令发送给 m-k个副设备,其中,m、n、k为大于等于1的整数,m > k,η彡k。
5. 根据权利要求3所述的方法,其特征在于,所述根据当前网络状况,将所述缓存指令 发送给预设数量的副设备之后,所述方法还包括: 按照所述图片的序列号的顺序,将所述图片对应的缓存指令发送给未发送所述缓存指 令的副设备。
6. 根据权利要求1所述的方法,其特征在于,所述方法还包括: 当接收到来自主设备的图片下载指令时,将所述图片下载指令发送给副设备;或, 在发送所述缓存指令的过程中,接收到来自主设备的图片下载指令时,暂停发送所述 缓存指令,将所述图片下载指令发送给副设备。
7. 根据权利要求1所述的方法,其特征在于,所述根据当前网络状况,将所述缓存指令 发送给预设数量的副设备,包括: 判断当前的网络流量是否低于预设阈值; 当当前的网络流量低于所述预设阈值时,将所述缓存指令发送给预设数量的副设备。
8. -种图片加载装置,其特征在于,包括: 接收模块,用于接收来自主设备的图片包选择指令; 获取模块,用于根据所述图片包选择指令,获取所述图片包中图片的序列号; 生成模块,用于生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述图片 的序列号; 第一发送模块,用于根据当前网络状况,将所述缓存指令发送给预设数量的副设备。
9. 根据权利要求8所述的装置,其特征在于,所述获取模块包括: 查找单元,用于根据所述图片包的名称查找所述图片包; 获取单元,用于从所述图片包中获取所述图片的序列号。
10. 根据权利要求8所述的装置,其特征在于, 所述第一发送模块,还用于将所述图片包中的第k张图片对应的缓存指令发送给i个 副设备,其中,k、i为大于等于1的整数,i随k的增大而减小。
11. 根据权利要求10所述的装置,其特征在于, 所述第一发送模块,还用于当有m个副设备和η张图片时,将所述图片包中的第k张图 片对应的缓存指令发送给m-k个副设备,其中,m、n、k为大于等于1的整数,m彡k,η彡k。
12. 根据权利要求10所述的装置,其特征在于, 所述第一发送模块,还用于按照所述图片的序列号的顺序,将所述图片对应的缓存指 令发送给未发送所述缓存指令的副设备。
13. 根据权利要求8所述的装置,其特征在于,所述装置还包括: 第二发送模块,用于当接收到来自主设备的图片下载指令时,将所述图片下载指令发 送给副设备;或,在发送所述缓存指令的过程中,接收到来自主设备的图片下载指令时,暂 停发送所述缓存指令,将所述图片下载指令发送给副设备。
14. 根据权利要求8所述的装置,其特征在于,所述第一发送模块包括: 判断单元,用于判断当前的网络流量是否低于预设阈值; 发送单元,用于当当前的网络流量低于所述预设阈值时,将所述缓存指令发送给预设 数量的副设备。
15. -种图片加载系统,其特征在于,包括主设备、服务器和副设备,其中: 所述主设备,用于向所述服务器发送图片包选择指令;向所述服务器发送图片加载指 令; 所述服务器,用于接收所述图片包选择指令,根据所述图片包选择指令,获取所述图片 包中图片的序列号;生成所述图片包中图片对应的缓存指令,所述缓存指令包含所述图片 的序列号;根据当前网络状况,将所述缓存指令发送给预设数量的副设备; 所述副设备,用于接收所述缓存指令,根据所述缓存指令加载所述图片。
【文档编号】H04L29/08GK104104726SQ201410353116
【公开日】2014年10月15日 申请日期:2014年7月23日 优先权日:2014年7月23日
【发明者】张俊丰 申请人:天脉聚源(北京)教育科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1