CN104915227B - A kind of method for upgrading software and system of multi-source multithreading - Google Patents
A kind of method for upgrading software and system of multi-source multithreading Download PDFInfo
- Publication number
- CN104915227B CN104915227B CN201510269890.0A CN201510269890A CN104915227B CN 104915227 B CN104915227 B CN 104915227B CN 201510269890 A CN201510269890 A CN 201510269890A CN 104915227 B CN104915227 B CN 104915227B
- Authority
- CN
- China
- Prior art keywords
- resource server
- download
- server
- resource
- software
- 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.)
- Active
Links
Abstract
The invention discloses the method for upgrading software and system of a kind of multi-source multithreading, method therein includes: to collect the current version information of software to be upgraded;High-quality resource server ranking list is calculated;Calculated version difference lists differential file inventory, notifies that top n Resource Server prepares different differential files in ranking list;Download thread is distributed respectively for N number of Resource Server, downloads corresponding differential file respectively from this to client;After the completion of downloading, merges current version file and differential file, carry out locally applied upgrading.In the present invention, client multithreading starting, server end calculates best resource server seniority among brothers and sisters, and supply client multithreading downloading reduces downloading duration;It realizes and combats a natural disaster performance, once listening to downloading exception, thread is transferred to other Resource Servers immediately and continues to download, ensure that downloading success rate;Dynamic version difference calculates, asynchronous generation, reduces redundant file downloading, further improves speed of download.
Description
Technical field
The present invention relates to field of communication technology more particularly to a kind of method for upgrading software and system of multi-source multithreading.
Background technique
As what Software Industry and Internet network developed makes rapid progress, the life cycle of software product is also constantly contracting
Short, the online upgrading function of software is come into being.Currently, more and more software support online upgrading functions, this function increase
The scalability and flexibility for having added software, improve the life cycle of software, and the application market of mobile terminal has also been enlarged.It is aobvious
So, the time in the epoch constantly accelerated in this rhythm of life, application software response is faster, and can more promote user uses body
It tests.On application this software of store, embody especially pronounced;The speed wherein APP downloading or updated tends to determine to use
The use at family selects, to influence the survival prospects using store.
Currently, method for upgrading software mainly comprises the processes of in the case where networking, the upgrading engine inspection in client software
It surveys and whether there is corresponding software upgrade package in remote server, if it is present software upgrade package is locally downloading, then
The installation engine in client software is called, by the content update in software upgrade package to locally.
Method for upgrading software in the prior art is primarily present following problems: each client only chooses at random a service
Device carries out upgrade package downloading, and to the loading condition and current network connection for not considering this server, speed of download is slow,
The redundant file of generation is more, and nothing combats a natural disaster scheme.
Summary of the invention
It is a primary object of the present invention to propose the method for upgrading software and system of a kind of multi-source multithreading, existing skill is overcome
Speed of download existing for art is slow, poor reliability defect.
To achieve the above object, the present invention provides a kind of method for upgrading software of multi-source multithreading, comprising steps of
Collect the current version information of software to be upgraded;
High-quality resource server ranking list is calculated;
The current version of software to be upgraded and the difference in version of latest edition are calculated, differential file inventory is listed, is notified excellent
Top n Resource Server prepares different differential files, N >=1 respectively in matter Resource Server ranking list;
Download thread is distributed respectively for N number of Resource Server, is downloaded respectively accordingly from N number of Resource Server
Differential file is to client;
After the completion of differential file downloading, merge the current version file and differential file of software to be upgraded, carries out
Locally applied upgrading.
Preferably, in the method further include:
In the downloading process of each download thread, the progress of each download thread is monitored in real time;
When there is download thread to occur abnormal, request other Resource Servers in high-quality resource server ranking list quasi-
Standby corresponding differential file, abnormal download thread transfer occur, so far Resource Server continues to download.
Preferably, the method for calculating high-quality resource server ranking list are as follows: according to the load of each Resource Server
The network connection situation of situation and each Resource Server and client.
Preferably, described the step of distributing download thread respectively for N number of Resource Server, further comprises:
It is that each Resource Server calculates corresponding weight according to its high-quality ranking, is each resource service according still further to weight
The download thread of device distribution different number.
Preferably, in the method, notify that ranking is leaned in high-quality resource server ranking list using asynchronous notifications mode
Preceding N number of Resource Server prepares different differential files respectively.
Correspondingly, the present invention also provides a kind of software update systems, comprising: client monitors server and multiple moneys
Source server;
The client further comprises:
Information collection unit, for collecting the current version information of software to be upgraded and notifying to monitor server;
Differential file download unit, for dividing respectively for top n Resource Server in high-quality resource server ranking list
With download thread, corresponding differential file is downloaded respectively from N number of Resource Server;
Local upgrade unit, for merging the existing version file and difference of software to be upgraded after differential file is downloaded
Single cent part carries out locally applied upgrading;
The monitoring server further comprises:
Good service device ranks unit, for high-quality resource server ranking list to be calculated;
Difference calculation units are listed for calculating the current version of software to be upgraded and the difference in version of latest edition
Differential file inventory;
File prepares notification unit, for notifying high-quality resource service according to differential file inventory in upgrading initial time
Top n Resource Server prepares differential file respectively in device ranking list;
Server info return unit is used for M Resource Server information preceding in high-quality resource server ranking list
It is back to client, and client is notified to start to download, the M >=N;
The Resource Server, for preparing corresponding differential file when receiving the notice for monitoring server, for visitor
The downloading of family end.
Preferably, the client further include: thread monitoring unit;
The thread monitoring unit, for monitoring the progress of each download thread in real time, when discovery has download thread appearance different
Notice monitors server when often, to request ranking to be located at N+1 to the new corresponding difference of Resource Server preparation between M
File;
The differential file download unit is also used to be transferred to the download thread when there is download thread to occur abnormal
New Resource Server continues to download corresponding differential file;
The file prepares notification unit, is also used to notify corresponding resource when receiving the request of thread monitoring unit
Server prepares corresponding differential file.
Preferably, the good service device seniority among brothers and sisters unit further comprises:
Resource Server information acquisition module, for obtaining the loading condition and each Resource Server of each Resource Server
With the network connection situation of client;
Ranking computing module, for according to the loading condition of each Resource Server and each Resource Server and client
It is connected to the network situation, calculates high-quality resource server ranking list.
Preferably, the differential file download unit further comprises:
Weight calculation module, for being that each Resource Server calculates corresponding weight according to its high-quality ranking;
Thread distribution module, for being the download thread of each Resource Server distribution different number according to weight size.
Preferably, the file prepares notification unit, for notifying top n Resource Server point using asynchronous notifications mode
It Zhun Bei not differential file.
Scheme proposed by the present invention, has the advantages that
1) client multithreading starts, and server end calculates best resource server seniority among brothers and sisters, supplies under client multithreading
It carries, reduces downloading duration;
2) it realizes and combats a natural disaster performance, client has once listened to downloading exception, and thread is transferred to other resources immediately
Server continues to download, and ensure that downloading success rate, greatly improves user experience;
3) dynamic version difference calculates, asynchronous generation, reduces redundant file downloading, further improves speed of download.
Detailed description of the invention
The hardware structural diagram of Fig. 1 mobile terminal of each embodiment to realize the present invention;
Fig. 2 is the wireless communication system schematic diagram of mobile terminal as shown in Figure 1;
Fig. 3 is method for upgrading software flow chart in first embodiment of the invention;
Fig. 4 is method for upgrading software flow chart in second embodiment of the invention;
Fig. 5 is software update system structure chart in third embodiment of the invention.
The embodiments will be further described with reference to the accompanying drawings for the realization, the function and the advantages of the object of the present invention.
Specific embodiment
It should be appreciated that the specific embodiments described herein are merely illustrative of the present invention, it is not intended to limit the present invention.
The mobile terminal of each embodiment of the present invention is realized in description with reference to the drawings.In subsequent description, use
For indicate component such as " module ", " component " or " unit " suffix only for being conducive to explanation of the invention, itself
There is no specific meanings.Therefore, " module " can be used mixedly with " component ".
Mobile terminal can be implemented in a variety of manners.For example, terminal described in the present invention may include such as moving
Phone, smart phone, laptop, digit broadcasting receiver, PDA (personal digital assistant), PAD (tablet computer), PMP
The mobile terminal of (portable media player), navigation device etc. and such as number TV, desktop computer etc. are consolidated
Determine terminal.Hereinafter it is assumed that terminal is mobile terminal.However, it will be understood by those skilled in the art that in addition to being used in particular for moving
Except the component of purpose, the construction of embodiment according to the present invention can also apply to the terminal of fixed type.
The hardware structural diagram of Fig. 1 mobile terminal of each embodiment to realize the present invention.
Mobile terminal 100 may include wireless communication unit 110, A/V (audio/video) input unit 120, user's input
Unit 130, sensing unit 140, output unit 150, memory 160, interface unit 170, controller 180 and power supply unit 190
Etc..Fig. 1 shows the mobile terminal with various assemblies, it should be understood that being not required for implementing all groups shown
Part.More or fewer components can alternatively be implemented.The component of mobile terminal will be discussed in more detail below.
Wireless communication unit 110 generally includes one or more components, allows mobile terminal 100 and wireless communication system
Or the radio communication between network.For example, wireless communication unit may include broadcasting reception module 111, mobile communication module
112, at least one of wireless Internet module 113, short range communication module 114 and location information module 115.
Broadcasting reception module 111 receives broadcast singal and/or broadcast from external broadcast management server via broadcast channel
Relevant information.Broadcast channel may include satellite channel and/or terrestrial channel.Broadcast management server, which can be, to be generated and sent
The broadcast singal and/or broadcast related information generated before the server or reception of broadcast singal and/or broadcast related information
And send it to the server of terminal.Broadcast singal may include TV broadcast singal, radio signals, data broadcasting
Signal etc..Moreover, broadcast singal may further include the broadcast singal combined with TV or radio signals.Broadcast phase
Closing information can also provide via mobile communications network, and in this case, broadcast related information can be by mobile communication mould
Block 112 receives.Broadcast singal can exist in a variety of manners, for example, it can be with the electronics of digital multimedia broadcasting (DMB)
Program guide (EPG), digital video broadcast-handheld (DVB-H) electronic service guidebooks (ESG) etc. form and exist.Broadcast
Receiving module 111 can receive signal broadcast by using various types of broadcast systems.Particularly, broadcasting reception module 111
It can be wide by using such as multimedia broadcasting-ground (DMB-T), digital multimedia broadcasting-satellite (DMB-S), digital video
It broadcasts-holds (DVB-H), forward link media (MediaFLO@) Radio Data System, received terrestrial digital broadcasting integrated service
(ISDB-T) etc. digit broadcasting system receives digital broadcasting.Broadcasting reception module 111, which may be constructed such that, to be adapted to provide for extensively
Broadcast the various broadcast systems and above-mentioned digit broadcasting system of signal.Via the received broadcast singal of broadcasting reception module 111 and/
Or broadcast related information can store in memory 160 (or other types of storage medium).
Mobile communication module 112 sends radio signals to base station (for example, access point, node B etc.), exterior terminal
And at least one of server and/or receive from it radio signal.Such radio signal may include that voice is logical
Talk about signal, video calling signal or according to text and/or Multimedia Message transmission and/or received various types of data.
The Wi-Fi (Wireless Internet Access) of the support mobile terminal of wireless Internet module 113.The module can be internally or externally
It is couple to terminal.Wi-Fi (Wireless Internet Access) technology involved in the module may include WLAN (Wireless LAN) (Wi-Fi), Wibro
(WiMAX), Wimax (worldwide interoperability for microwave accesses), HSDPA (high-speed downlink packet access) etc..
Short range communication module 114 is the module for supporting short range communication.Some examples of short-range communication technology include indigo plant
ToothTM, radio frequency identification (RFID), Infrared Data Association (IrDA), ultra wide band (UWB), purple honeybeeTMEtc..
Location information module 115 is the module for checking or obtaining the location information of mobile terminal.Location information module
Typical case be GPS (global positioning system).According to current technology, GPS module 115, which calculates, comes from three or more satellites
Range information and correct time information and the Information application triangulation for calculating, thus according to longitude, latitude
Highly accurately calculate three-dimensional current location information.Currently, it is defended for the method for calculating position and temporal information using three
Star and the error that calculated position and temporal information are corrected by using an other satellite.In addition, GPS module 115
It can be by Continuous plus current location information in real time come calculating speed information.
A/V input unit 120 is for receiving audio or video signal.A/V input unit 120 may include 121 He of camera
Microphone 1220, camera 121 is to the static map obtained in video acquisition mode or image capture mode by image capture apparatus
The image data of piece or video is handled.Treated, and picture frame may be displayed on display unit 151.At camera 121
Picture frame after reason can store in memory 160 (or other storage mediums) or carry out via wireless communication unit 110
It sends, two or more cameras 1210 can be provided according to the construction of mobile terminal.Microphone 122 can be in telephone relation mould
Sound (audio data) is received via microphone in formula, logging mode, speech recognition mode etc. operational mode, and can be incited somebody to action
Such acoustic processing is audio data.Audio that treated (voice) data can be converted in the case where telephone calling model
For the format output that can be sent to mobile communication base station via mobile communication module 112.Various types can be implemented in microphone 122
Noise eliminate (or inhibit) algorithm with eliminate noise that (or inhibition) generates during sending and receiving audio signal or
Person's interference.
The order that user input unit 130 can be inputted according to user generates key input data to control each of mobile terminal
Kind operation.User input unit 130 allows user to input various types of information, and may include keyboard, metal dome, touch
Plate (for example, the sensitive component of detection due to the variation of resistance, pressure, capacitor etc. caused by being contacted), idler wheel, rocking bar etc.
Deng.Particularly, when touch tablet is superimposed upon in the form of layer on display unit 151, touch screen can be formed.
Sensing unit 140 detects the current state of mobile terminal 100, (for example, mobile terminal 100 opens or closes shape
State), the position of mobile terminal 100, user is for the presence or absence of contact (that is, touch input) of mobile terminal 100, mobile terminal
100 orientation, the acceleration or deceleration movement of mobile terminal 100 and direction etc., and generate for controlling mobile terminal 100
The order of operation or signal.For example, sensing unit 140 can sense when mobile terminal 100 is embodied as sliding-type mobile phone
The sliding-type phone is to open or close.In addition, sensing unit 140 be able to detect power supply unit 190 whether provide electric power or
Whether person's interface unit 170 couples with external device (ED).Sensing unit 140 may include that proximity sensor 1410 will combine below
Touch screen is described this.
Interface unit 170 be used as at least one external device (ED) connect with mobile terminal 100 can by interface.For example,
External device (ED) may include wired or wireless headphone port, external power supply (or battery charger) port, wired or nothing
Line data port, memory card port, the port for connecting the device with identification module, audio input/output (I/O) end
Mouth, video i/o port, ear port etc..Identification module can be storage and use each of mobile terminal 100 for verifying user
It plants information and may include subscriber identification module (UIM), client identification module (SIM), Universal Subscriber identification module (USIM)
Etc..In addition, the device (hereinafter referred to as " identification device ") with identification module can take the form of smart card, therefore, know
Other device can be connect via port or other attachment devices with mobile terminal 100.Interface unit 170, which can be used for receiving, to be come from
The input (for example, data information, electric power etc.) of external device (ED) and the input received is transferred in mobile terminal 100
One or more components can be used for transmitting data between mobile terminal and external device (ED).
In addition, when mobile terminal 100 is connect with external base, interface unit 170 may be used as allowing will be electric by it
Power, which is provided from pedestal to the path or may be used as of mobile terminal 100, allows the various command signals inputted from pedestal to pass through it
It is transferred to the path of mobile terminal.The various command signals or electric power inputted from pedestal, which may be used as mobile terminal for identification, is
The no signal being accurately fitted on pedestal.Output unit 150 is configured to provide with vision, audio and/or tactile manner defeated
Signal (for example, audio signal, vision signal, alarm signal, vibration signal etc.) out.Output unit 150 may include display
Unit 151, audio output module 152, alarm unit 153 etc..
Display unit 151 may be displayed on the information handled in mobile terminal 100.For example, when mobile terminal 100 is in electricity
When talking about call mode, display unit 151 can show and converse or other communicate (for example, text messaging, multimedia file
Downloading etc.) relevant user interface (UI) or graphic user interface (GUI).When mobile terminal 100 is in video calling mode
Or when image capture mode, display unit 151 can show captured image and/or received image, show video or figure
Picture and the UI or GUI of correlation function etc..
Meanwhile when display unit 151 and touch tablet in the form of layer it is superposed on one another to form touch screen when, display unit
151 may be used as input unit and output device.Display unit 151 may include liquid crystal display (LCD), thin film transistor (TFT)
In LCD (TFT-LCD), Organic Light Emitting Diode (OLED) display, flexible display, three-dimensional (3D) display etc. at least
It is a kind of.Some in these displays may be constructed such that transparence to allow user to watch from outside, this is properly termed as transparent
Display, typical transparent display can be, for example, TOLED (transparent organic light emitting diode) display etc..According to specific
Desired embodiment, mobile terminal 100 may include two or more display units (or other display devices), for example, moving
Dynamic terminal may include outernal display unit (not shown) and inner display unit (not shown).Touch screen can be used for detecting touch
Input pressure and touch input position and touch input area.
Audio output module 152 can mobile terminal be in call signal reception pattern, call mode, logging mode,
It is when under the isotypes such as speech recognition mode, broadcast reception mode, wireless communication unit 110 is received or in memory 160
The audio data transducing audio signal of middle storage and to export be sound.Moreover, audio output module 152 can provide and movement
The relevant audio output of specific function (for example, call signal receives sound, message sink sound etc.) that terminal 100 executes.
Audio output module 152 may include loudspeaker, buzzer etc..
Alarm unit 153 can provide output notifying event to mobile terminal 100.Typical event can be with
Including calling reception, message sink, key signals input, touch input etc..Other than audio or video output, alarm unit
153 can provide output in different ways with the generation of notification event.For example, alarm unit 153 can be in the form of vibration
Output is provided, when receiving calling, message or some other entrance communications (incoming communication), alarm list
Member 153 can provide tactile output (that is, vibration) to notify to user.By providing such tactile output, even if
When the mobile phone of user is in the pocket of user, user also can recognize that the generation of various events.Alarm unit 153
The output of the generation of notification event can be provided via display unit 151 or audio output module 152.
Memory 160 can store the software program etc. of the processing and control operation that are executed by controller 180, Huo Zheke
Temporarily to store oneself data (for example, telephone directory, message, still image, video etc.) through exporting or will export.And
And memory 160 can store about the vibrations of various modes and audio signal exported when touching and being applied to touch screen
Data.
Memory 160 may include the storage medium of at least one type, and the storage medium includes flash memory, hard disk, more
Media card, card-type memory (for example, SD or DX memory etc.), random access storage device (RAM), static random-access storage
Device (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read only memory
(PROM), magnetic storage, disk, CD etc..Moreover, mobile terminal 100 can execute memory with by network connection
The network storage device of 160 store function cooperates.
The overall operation of the usually control mobile terminal of controller 180.For example, controller 180 executes and voice communication, data
Communication, video calling etc. relevant control and processing.In addition, controller 180 may include for reproducing (or playback) more matchmakers
The multi-media module 1810 of volume data, multi-media module 1810 can construct in controller 180, or can be structured as and control
Device 180 processed separates.Controller 180 can be with execution pattern identifying processing, by the handwriting input executed on the touchscreen or figure
Piece draws input and is identified as character or image.
Power supply unit 190 receives external power or internal power under the control of controller 180 and provides operation each group
Electric power appropriate needed for part and component.
Various embodiments described herein can be to use the calculating of such as computer software, hardware or any combination thereof
Machine readable medium is implemented.Hardware is implemented, embodiment described herein can be by using application-specific IC
(ASIC), digital signal processor (DSP), digital signal processing device (DSPD), programmable logic device (PLD), scene can
Programming gate array (FPGA), controller, microcontroller, microprocessor, is designed to execute function described herein processor
At least one of electronic unit is implemented, and in some cases, such embodiment can be implemented in controller 180.
For software implementation, the embodiment of such as process or function can with allow to execute the individual of at least one functions or operations
Software module is implemented.Software code can by the software application (or program) write with any programming language appropriate Lai
Implement, software code can store in memory 160 and be executed by controller 180.
So far, oneself is through describing mobile terminal according to its function.In the following, for the sake of brevity, will description such as folded form,
Slide type mobile terminal in various types of mobile terminals of board-type, oscillating-type, slide type mobile terminal etc., which is used as, to be shown
Example.Therefore, the present invention can be applied to any kind of mobile terminal, and be not limited to slide type mobile terminal.
Mobile terminal 100 as shown in Figure 1 may be constructed such that using via frame or grouping send data it is all if any
Line and wireless communication system and satellite-based communication system operate.
Referring now to Fig. 2 description communication system that wherein mobile terminal according to the present invention can operate.
Different air interface and/or physical layer can be used in such communication system.For example, used by communication system
Air interface includes such as frequency division multiple access (FDMA), time division multiple acess (TDMA), CDMA (CDMA) and universal mobile communications system
System (UMTS) (particularly, long term evolution (LTE)), global system for mobile communications (GSM) etc..As non-limiting example, under
The description in face is related to cdma communication system, but such introduction is equally applicable to other types of system.
With reference to Fig. 2, cdma wireless communication system may include multiple mobile terminals 100, multiple base stations (BS) 270, base station
Controller (BSC) 275 and mobile switching centre (MSC) 280.MSC280 is configured to and Public Switched Telephony Network (PSTN)
290 form interface.MSC280 is also structured to form interface with the BSC275 that can be couple to base station 270 via back haul link.
Back haul link can be constructed according to any in several known interfaces, and the interface includes such as E1/T1, ATM, IP,
PPP, frame relay, HDSL, ADSL or xDSL.It will be appreciated that system may include multiple BSC2750 as shown in Figure 2.
Each BS270 can service one or more subregions (or region), by multidirectional antenna or the day of direction specific direction
Each subregion of line covering is radially far from BS270.Alternatively, each subregion can be by two or more for diversity reception
Antenna covering.Each BS270, which may be constructed such that, supports multiple frequency distribution, and the distribution of each frequency has specific frequency spectrum
(for example, 1.25MHz, 5MHz etc.).
What subregion and frequency were distributed, which intersects, can be referred to as CDMA Channel.BS270 can also be referred to as base station transceiver
System (BTS) or other equivalent terms.In this case, term " base station " can be used for broadly indicating single
BSC275 and at least one BS270.Base station can also be referred to as " cellular station ".Alternatively, each subregion of specific BS270 can be claimed
For multiple cellular stations.
As shown in Figure 2, broadcast singal is sent to the mobile terminal operated in system by broadcsting transmitter (BT) 295
100.Broadcasting reception module 111 as shown in Figure 1 is arranged at mobile terminal 100 to receive the broadcast sent by BT295
Signal.In fig. 2 it is shown that several global positioning system (GPS) satellites 300.The help of satellite 300 positions multiple mobile terminals
At least one of 100.
In Fig. 2, multiple satellites 300 are depicted, it is understood that, it is useful to can use any number of satellite acquisition
Location information.GPS module 115 as shown in Figure 1 is generally configured to cooperate with satellite 300 to obtain desired positioning and believe
Breath.It substitutes GPS tracking technique or except GPS tracking technique, the other of the position that can track mobile terminal can be used
Technology.In addition, at least one 300 property of can choose of GPS satellite or extraly processing satellite dmb transmission.
As a typical operation of wireless communication system, BS270 receives the reverse link from various mobile terminals 100
Signal.Mobile terminal 100 usually participates in call, information receiving and transmitting and other types of communication.Certain base station 270 is received each anti-
It is handled in specific BS270 to link signal.The data of acquisition are forwarded to relevant BSC275.BSC provides call
The mobile management function of resource allocation and the coordination including the soft switching process between BS270.The number that BSC275 will also be received
According to MSC280 is routed to, the additional route service for forming interface with PSTN290 is provided.Similarly, PSTN290 with
MSC280 forms interface, and MSC and BSC275 form interface, and BSC275 controls BS270 correspondingly with by forward link signals
It is sent to mobile terminal 100.
Based on above-mentioned mobile terminal hardware configuration and communication system, each embodiment of the method for the present invention is proposed.
Embodiment one
As shown in figure 3, in the present embodiment, method for upgrading software the following steps are included:
Step 301, client collect the current version information of software to be upgraded and the network information of this client, and will
It collects information notice and monitors server.
Step 302 after monitoring the notification message that server parsing receives, proceeds as follows:
1. calculating high-quality resource according to the loading condition of client network information and the numerous Resource Servers listened to
Server ranking list;The calculation basis of high-quality seniority among brothers and sisters is the integrated load situation and network connection situation of Resource Server;
2. calculating the current version of software to be upgraded and the difference in version of latest edition, differential file inventory is listed, it is asynchronous
Notify that (in the present embodiment, 3) N takes to be prepared N number of Resource Server in the top in high-quality resource server ranking list respectively
Different differential files;
3. above-mentioned N number of Resource Server information is returned to client, and client is notified to start to download.
Step 303, client take out above-mentioned N number of Resource Server information, and calculate corresponding weight, according to weight distribution
Thread reads differential file segment from Resource Server.
Citing: the Resource Server of weight first distributes five threads, and the Resource Server of weight second distributes three lines
The Resource Server of journey, weight third distributes a thread.
After step 304, differential file downloading, client merges current version file and the downloading of software to be upgraded
Differential file carries out locally applied upgrading, ends here using more new technological process.
In the present embodiment, good resource service can be calculated according to loading condition and network condition by monitoring server
Device, client download differential file from multiple high-quality resource servers by multithreading, can not only reduce the downloading of redundant file,
And downloading duration is greatly reduced, improve the success rate of upgrading.
Embodiment two
In example 1, the technical side of the calculating of dynamic version difference, asynchronous generation and multithreading downloading is used
Case, accelerates the downloading or renewal speed of application, but has no and combat a natural disaster performance, once some resource of differential file is provided
Server breaks down, and will lead to download or update failure.Thus the present embodiment two proposes solution to this.
As shown in figure 4, in the present embodiment, method for upgrading software the following steps are included:
Step 401, client collect the current version information of software to be upgraded and the network information of this client, and will
It collects information notice and monitors server.
Step 402 after monitoring the notification message that server parsing receives, proceeds as follows:
1. calculating high-quality resource according to the loading condition of client network information and the numerous Resource Servers listened to
Server ranking list;The calculation basis of high-quality seniority among brothers and sisters is the integrated load situation and network connection situation of Resource Server;
2. calculating the current version of software to be upgraded and the difference in version of latest edition, differential file inventory is listed, it is asynchronous
Notify that (in the present embodiment, 3) N takes to be prepared N number of Resource Server in the top in high-quality resource server ranking list respectively
Different differential files;
3. M Resource Server information in the top in high-quality resource server ranking list is returned to client (M
> N, 6) M takes in the present embodiment, and client is notified to start to download.
Step 403, client take out above-mentioned N number of Resource Server information, and calculate corresponding weight, according to weight distribution
Thread reads differential file segment from Resource Server.
Citing: the Resource Server of weight first distributes five threads, and the Resource Server of weight second distributes three lines
The Resource Server of journey, weight third distributes a thread.
Step 404, client monitor the progress of each download thread in real time, once it is different to find that network occurs in download thread
Often, notice monitors server immediately, and the N+1 Resource Server is requested to prepare differential file, and client will carry out failure thread
The N+1 Resource Server is transferred to continue to download.
After step 405, differential file downloading, client merges current version file and the downloading of software to be upgraded
Differential file carries out locally applied upgrading, ends here using more new technological process.
To sum up, it is realized in the present embodiment and combats a natural disaster to download, client is once break down having listened to Resource Server
When be immediately transferred into another Resource Server downloading differential file segment, guarantee that downloading/update is gone on smoothly.
Embodiment three
Referring to Fig. 5, present embodiments providing a kind of software update system, comprising: client 510 monitors server
520, multiple Resource Servers 530.
Wherein, server 520 is monitored for calculating best resource server seniority among brothers and sisters, and the multiple Resource Servers of asynchronous notifications are raw
At differential file;Client 510 downloads corresponding differential file from multiple Resource Servers for starting multithreading;Resource clothes
Business device 530, for providing differential file downloading for client 510.It will be described in detail respectively below.In the present embodiment, client
510 can be various mobile terminals.
(1) client 510 further comprises:
Information collection unit 511, for collecting the current version information of software to be upgraded and notifying to monitor server 520.
Differential file download unit 512, for being preceding N in high-quality resource server ranking list in upgrading initial time
A Resource Server 530 distributes download thread respectively, downloads corresponding differential file respectively from N number of Resource Server 530;
It is also used to when there is download thread to occur abnormal, which is transferred to new Resource Server 530 and continues downloading correspondence
Differential file.The unit further comprises: weight calculation module 5121, for being each resource service according to its high-quality ranking
Device 530 calculates corresponding weight;Thread distribution module 5122, for being the distribution of each Resource Server 530 according to weight size
The download thread of different number.
Thread monitoring unit 513, for monitoring the progress of each download thread in real time, when discovery has download thread exception occur
Shi Tongzhi monitors server, to request ranking to be located at N+1 to the corresponding difference text of new Resource Server preparation between M
Part.
Local upgrade unit 514, for merging the existing version file of software to be upgraded after differential file is downloaded
And differential file, carry out locally applied upgrading.
(2) monitoring server 520 further comprises:
Good service device ranks unit 521, for high-quality resource server ranking list to be calculated;The unit is further
It include: Resource Server information acquisition module 5211, for obtaining the loading condition and each resource clothes of each Resource Server 530
The network connection situation of business device 530 and client 510;Ranking computing module 5212, for according to the negative of each Resource Server 530
The network connection situation for carrying situation and each Resource Server 530 and client 510 calculates high-quality resource server seniority among brothers and sisters column
Table.
Difference calculation units 522 are arranged for calculating the current version of software to be upgraded and the difference in version of latest edition
Differential file inventory out.
File prepares notification unit 523, for being taken according to differential file inventory notice high-quality resource in upgrading initial time
Top n Resource Server prepares differential file respectively in business device ranking list.
Server info return unit 524, for believing M Resource Server preceding in high-quality resource server ranking list
Breath is back to client, and client is notified to start to download, M >=N.
Back and forth it should be noted that, in this document, the terms "include", "comprise" or its any other variant are intended to
Non-exclusive inclusion, so that process, method, article or device including a series of elements are not only wanted including those
Element, but also including other elements that are not explicitly listed, or further include for this process, method, article or device
Intrinsic element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that
There is also other identical elements in process, method, article or device including the element.
The serial number of the above embodiments of the invention is only for description, does not represent the advantages or disadvantages of the embodiments.
Through the above description of the embodiments, those skilled in the art can be understood that above-described embodiment side
Method can be realized by means of software and necessary general hardware platform, naturally it is also possible to by hardware, but in many cases
The former is more preferably embodiment.Based on this understanding, technical solution of the present invention substantially in other words does the prior art
The part contributed out can be embodied in the form of software products, which is stored in a storage medium
In (such as ROM/RAM, disk, CD), including some instructions are used so that a terminal device (can be mobile phone, computer, clothes
Business device, air conditioner or the network equipment etc.) execute method described in each embodiment of the present invention.
The above is only a preferred embodiment of the present invention, is not intended to limit the scope of the invention, all to utilize this hair
Equivalent structure or equivalent flow shift made by bright specification and accompanying drawing content is applied directly or indirectly in other relevant skills
Art field, is included within the scope of the present invention.
Claims (9)
1. a kind of method for upgrading software of multi-source multithreading, which is characterized in that the method comprising the steps of:
Collect the current version information of software to be upgraded;
According to the loading condition of client network information and the numerous Resource Servers listened to, high-quality resource service is calculated
Device ranking list;
The current version of software to be upgraded and the difference in version of latest edition are calculated, differential file inventory is listed, notifies high-quality money
Top n Resource Server prepares different differential files, N >=1 respectively in source server ranking list;
Corresponding weight is calculated according to above-mentioned N number of Resource Server information, is that N number of Resource Server divides respectively according to weight
With download thread, corresponding differential file is downloaded respectively to client from N number of Resource Server;
After the completion of differential file downloading, merge the current version file and differential file of software to be upgraded, carries out local
Application upgrade;Wherein, in the downloading process of each download thread, the progress of each download thread is monitored in real time;When there is downloading wire
When journey occurs abnormal, other Resource Servers in high-quality resource server ranking list is requested to prepare corresponding differential file,
Abnormal download thread transfer to occur, so far Resource Server continues to download.
2. method for upgrading software as described in claim 1, which is characterized in that the calculating high-quality resource server ranking list
Method are as follows: according to the network connection situation of the loading condition of each Resource Server and each Resource Server and client.
3. method for upgrading software as described in claim 1, which is characterized in that described to distribute downloading respectively for N number of Resource Server
The step of thread, further comprises:
It is that each Resource Server calculates corresponding weight according to its high-quality ranking, is each Resource Server point according still further to weight
Download thread with different number.
4. method for upgrading software as described in claim 1, which is characterized in that in the method, notified using asynchronous notifications mode
N number of Resource Server in the top prepares different differential files respectively in high-quality resource server ranking list.
5. a kind of software update system of multi-source multithreading, which is characterized in that the system include: client, monitor server and
Multiple Resource Servers;
The client further comprises:
Information collection unit, for collecting the current version information of software to be upgraded and notifying to monitor server;
Differential file download unit is the N according to weight for calculating corresponding weight according to N number of Resource Server information
A Resource Server distributes download thread respectively, downloads corresponding differential file respectively from N number of Resource Server;
Local upgrade unit, for merging the existing version file and difference text of software to be upgraded after differential file is downloaded
Part carries out locally applied upgrading;
The monitoring server further comprises:
Good service device ranks unit, for the load feelings according to client network information and the numerous Resource Servers listened to
High-quality resource server ranking list is calculated in condition;
Difference calculation units list difference text for calculating the current version of software to be upgraded and the difference in version of latest edition
Part inventory;
File prepares notification unit, for notifying that top n Resource Server prepares respectively in high-quality resource server ranking list
Different differential files, N >=1;
Server info return unit, for returning to M Resource Server information preceding in high-quality resource server ranking list
To client, and client is notified to start to download, the M >=N;
The Resource Server, for preparing corresponding differential file when receiving the notice for monitoring server, for client
Downloading;
Wherein, in the downloading process of each download thread, the progress of each download thread is monitored in real time;When there is download thread appearance
When abnormal, request other Resource Servers in high-quality resource server ranking list to prepare corresponding differential file, will occur
So far Resource Server continues to download for abnormal download thread transfer.
6. software update system as claimed in claim 5, which is characterized in that the client further include: thread monitoring unit;
The thread monitoring unit, for monitoring the progress of each download thread in real time, when discovery has download thread to occur abnormal
Notice monitors server, to request ranking to be located at N+1 to the corresponding difference text of new Resource Server preparation between M
Part;
The differential file download unit is also used to be transferred to the download thread new when there is download thread to occur abnormal
Resource Server continues to download corresponding differential file;
The file prepares notification unit, is also used to notify corresponding resource service when receiving the request of thread monitoring unit
Device prepares corresponding differential file.
7. the software update system as described in claim 5 or 6, which is characterized in that
The good service device seniority among brothers and sisters unit further comprises:
Resource Server information acquisition module, for obtain each Resource Server loading condition and each Resource Server and visitor
The network connection situation at family end;
Ranking computing module, for according to the loading condition of each Resource Server and the network of each Resource Server and client
Connection calculates high-quality resource server ranking list.
8. the software update system as described in claim 5 or 6, which is characterized in that the differential file download unit further wraps
It includes:
Weight calculation module, for being that each Resource Server calculates corresponding weight according to its high-quality ranking;
Thread distribution module, for being the download thread of each Resource Server distribution different number according to weight size.
9. the software update system as described in claim 5 or 6, which is characterized in that the file prepares notification unit, for using
Asynchronous notifications mode notifies top n Resource Server to prepare differential file respectively.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510269890.0A CN104915227B (en) | 2015-05-25 | 2015-05-25 | A kind of method for upgrading software and system of multi-source multithreading |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510269890.0A CN104915227B (en) | 2015-05-25 | 2015-05-25 | A kind of method for upgrading software and system of multi-source multithreading |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104915227A CN104915227A (en) | 2015-09-16 |
CN104915227B true CN104915227B (en) | 2019-07-30 |
Family
ID=54084309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510269890.0A Active CN104915227B (en) | 2015-05-25 | 2015-05-25 | A kind of method for upgrading software and system of multi-source multithreading |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104915227B (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162885B (en) * | 2015-09-25 | 2019-04-12 | 宇龙计算机通信科技(深圳)有限公司 | Resource downloading method, resource downloading system and terminal |
CN106776947A (en) * | 2016-12-02 | 2017-05-31 | 乐视控股(北京)有限公司 | Resource acquiring method, device and terminal |
CN106933625A (en) * | 2017-02-23 | 2017-07-07 | 湖北光谷天下传媒股份有限公司 | A kind of method and system of multi-source software upgrading |
CN109766131B (en) * | 2017-11-06 | 2022-04-01 | 上海宝信软件股份有限公司 | System and method for realizing intelligent automatic software upgrading based on multithreading technology |
JP6943799B2 (en) * | 2018-03-27 | 2021-10-06 | アズビル株式会社 | Data collection system |
CN110389771B (en) * | 2018-04-18 | 2024-03-01 | 视联动力信息技术股份有限公司 | Upgrading method and system of video networking client |
CN110012086B (en) * | 2019-03-27 | 2023-10-20 | 努比亚技术有限公司 | Method, terminal and storage medium for improving application downloading and installation speed |
CN112671816B (en) * | 2019-10-16 | 2022-07-22 | 腾讯科技(深圳)有限公司 | File downloading method, device, equipment and medium |
CN112866046A (en) * | 2019-11-27 | 2021-05-28 | 宇龙计算机通信科技(深圳)有限公司 | Software upgrading method and device for intelligent rod, storage medium and intelligent rod |
CN112383638B (en) * | 2020-11-27 | 2023-12-05 | 北京小米移动软件有限公司 | Fragment downloading method, device and medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771931A (en) * | 2008-12-26 | 2010-07-07 | 中国移动通信集团公司 | P2P (peer 2 peer) resource downloading method and identification device |
CN102123063A (en) * | 2011-04-26 | 2011-07-13 | 杭州华三通信技术有限公司 | Method and device for detecting link bandwidth |
CN102223411A (en) * | 2011-06-15 | 2011-10-19 | 奇智软件(北京)有限公司 | Method and system for downloading file by adopting P2P (Peer-to-Peer) technology and client side |
CN103701930A (en) * | 2014-01-07 | 2014-04-02 | 浙江大学 | Mobile application program real-time updating method and system |
-
2015
- 2015-05-25 CN CN201510269890.0A patent/CN104915227B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771931A (en) * | 2008-12-26 | 2010-07-07 | 中国移动通信集团公司 | P2P (peer 2 peer) resource downloading method and identification device |
CN102123063A (en) * | 2011-04-26 | 2011-07-13 | 杭州华三通信技术有限公司 | Method and device for detecting link bandwidth |
CN102223411A (en) * | 2011-06-15 | 2011-10-19 | 奇智软件(北京)有限公司 | Method and system for downloading file by adopting P2P (Peer-to-Peer) technology and client side |
CN103701930A (en) * | 2014-01-07 | 2014-04-02 | 浙江大学 | Mobile application program real-time updating method and system |
Also Published As
Publication number | Publication date |
---|---|
CN104915227A (en) | 2015-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104915227B (en) | A kind of method for upgrading software and system of multi-source multithreading | |
CN105101366B (en) | Method for controlling mobile terminal and mobile terminal | |
CN106155741B (en) | It is a kind of to avoid processing unit and method of the application program without response | |
CN105827775B (en) | A kind of test method and system reducing MIPI interference | |
CN105282245B (en) | Cross-server message push system and method | |
CN105682057B (en) | A kind of message notifying device and message prompt method | |
CN104955023B (en) | A kind of mobile terminal and the method for updating network parameter | |
CN105357593B (en) | A kind of methods, devices and systems of uploaded videos | |
CN105099870B (en) | A kind of information push method and device | |
CN105306457B (en) | Data buffer storage device and method | |
CN104899090B (en) | The method, device and mobile terminal of fast dispatch application process | |
CN104967802B (en) | The method for recording and device of mobile terminal and its plurality of regions on screen | |
CN104850443B (en) | A kind of method and mobile terminal for closing error starting application program | |
CN104967573B (en) | A kind of monitoring method and terminal of data traffic | |
CN104850343B (en) | Start the method and apparatus of one-hand operating format | |
CN106844032A (en) | The storage processing method and device of a kind of terminal applies | |
CN105138400B (en) | Application program self-starting management method and device | |
CN106506858B (en) | Star orbital prediction technique and device | |
CN105278995B (en) | Management method, system, server and the mobile terminal of application program | |
CN105897995B (en) | A kind of method and apparatus for adding contact information | |
CN106095464B (en) | A kind of method and device of the seamless operation of application program | |
CN105867749B (en) | A kind of menu interface display methods and terminal | |
CN106803860A (en) | The storage processing method and device of a kind of terminal applies | |
CN104735254B (en) | terminal screen locking method and system | |
CN105827531B (en) | A kind of routing access method and terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |