JP5787688B2 - サーバ装置、クライアント装置、情報処理方法及びプログラム - Google Patents
サーバ装置、クライアント装置、情報処理方法及びプログラム Download PDFInfo
- Publication number
- JP5787688B2 JP5787688B2 JP2011203589A JP2011203589A JP5787688B2 JP 5787688 B2 JP5787688 B2 JP 5787688B2 JP 2011203589 A JP2011203589 A JP 2011203589A JP 2011203589 A JP2011203589 A JP 2011203589A JP 5787688 B2 JP5787688 B2 JP 5787688B2
- Authority
- JP
- Japan
- Prior art keywords
- update data
- size
- updater
- differential
- full
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Description
以下、図面を参照して、本発明の実施形態を詳細に説明する。
本実施形態のサーバ装置とクライアント装置とのハードウェア構成の一例を図1の図を参照して説明する。図1は、サーバ装置とクライアント装置とのハードウェア構成の一例を示す図である。サーバ装置やクライアント装置はそれぞれ単一のコンピュータ装置で実現してもよいし、必要に応じた複数のコンピュータ装置に各機能を分散して実現するようにしてもよい。複数のコンピュータ装置で構成される場合は、互いに通信可能なようにLocal Area Network(LAN)等で接続されている。
図1において、サーバ装置100とクライアント装置120とはネットワーク111を介して通信可能である。サーバ装置100の全体は制御部101、クライアント装置120の全体は制御部121で制御され、制御部101及び120は例えばCentral Processing Unit(CPU)である。変更を必要としないプログラムやパラメータはRead Only Memory(ROM)102及び122にそれぞれ格納される。外部装置等から供給されるプログラムやデータはRandom Access Memory(RAM)103及び123にそれぞれ一時記憶される。オペレーティングシステムやWebブラウザプログラム、本実施形態のアップデート対象のアプリケーションソフトウェアプログラム等が、クライアント装置120の外部記憶装置124に記憶される。また、オペレーティングシステムやアップデート対象のアプリケーションソフトウェアプログラムの更新処理に必要なデータ等がサーバ装置100の外部記憶装置104に記憶される。操作入力IF125は、ユーザの操作を受け、データを入力するポインティングデバイスやキーボード113等の入力デバイスとのインターフェイスである。表示IF126は、クライアント装置120の保持するデータや供給されたデータを表示するための表示器110とのインターフェイスである。ネットワークIF107及び127は、インターネット等のネットワーク回線に接続するためのインターフェイスである。システムバス109及び129は、各ユニットを通信可能に接続する。
差分アップデータのファイルサイズは、フルアップデータのファイルサイズに比べて小さい。しかし、クライアント装置120にインストール済みのアプリのバージョンからサーバ装置100に存在する最新のアプリのバージョンとの差が大きい場合には差分アップデータの数が多くなる。差分アップデータには共通のファイルもあることから、多数の差分アップデータが必要な場合、差分アップデータの合計のファイルサイズがフルアップデータのファイルサイズに比べて大きくなることもある。ファイルサイズが大きくなると、通信負荷がかかり、ダウンロードの時間も長くなってしまう。
S401において、制御部121は、サーバ装置100に対してアプリの種別及びバージョンを送信し、アップデータを要求する。S402において、制御部121は、サーバ装置100からアップデータを受信したか判断する。S403において、制御部121は、サーバ装置100から受信したアップデータを用いてアプリのアップデート処理を実行する。
S601において、制御部101は、クライアント装置120からアップデータのダウンロードを要求されたか判断する。
ダウンロードが要求された場合、S602において、制御部101は、対応する差分アップデータが存在するか否かを、クライアント装置120から通知されたアプリの種別及びバージョンを参照して判断する。差分アップデータに対応していない場合、S607において、制御部101は、フルアップデータを選択する。差分アップデータに対応している場合、S603において、制御部101はフルアップデータのサイズ(Size_Full)を取得する。
S604において、制御部101は、差分アップデータの合計サイズ(Size_Diff)を取得する。制御部101は、差分アップデータの合計サイズを、クライアント装置120から通知されたアプリのバージョンから、最新のバージョンまでに含まれる差分アップデータのファイルサイズを加算することにより取得する。
S608において、制御部101は、選択したフルアップデータ又は差分アップデータをクライアント装置120へ送信する。
本実施形態では、クライアント装置120がフルアップデータ又は差分アップデータの何れかを選択してサーバ装置100から取得し、アップデートする。
図7は、クライアント装置120の手順を示すフローチャートである。
S701において、制御部121は、サーバ装置100から管理ファイル300を取得する。
S702において、制御部121は、既にインストールされて外部記憶装置124に記憶されているアプリのバージョンを取得する。
S703において、制御部121は、管理ファイルからフルアップデータのサイズ(Size_Full)を取得する。
S704において、制御部121は、管理ファイルから差分アップデータのサイズ(Size_Diff)を取得する。差分アップデータのサイズを取得するために、制御部121は、各々の差分ファイルに付随された管理ファイルから、差分ファイルのサイズを取得する。そして、制御部121は、S702で取得した既存のアプリのバージョンからアプリの最新のバージョンまでの差分アップデータのファイルサイズの合計を算出する。
S708において、制御部121は、S706で取得した差分アップデータ又はS707で取得したフルアップデータを利用してアプリのアップデート処理を実行する。
図8は、クライアント装置120がアップデータをダウンロードできず、アップデートに失敗した場合に、別のアップデータでリトライする処理の一例を示すフローチャートである。
制御部121は、アップデータに基づいてアプリのアップデート処理を実行し(S403又はS708)、その後、S801において、アプリのアップデートが成功したかを判別する。
失敗した場合、S802において、制御部121は、異なるアップデータをサーバ装置100へ要求する。例えば、差分アップデータを用いたアップデートに失敗した場合は、サーバ装置100へフルアップデータを要求する。
S803において、制御部121は、サーバ装置100から、要求したアップデータを取得したか否かを判定する。サーバ装置からアップデータを取得すると、S403又はS708において、制御部121は、再度、アプリのアップデート処理を新たに取得されたアップデータを用いて実行する。
図9は、制御部101がサーバ装置100の古い差分アップデータを削除する手順を示すフローチャートである。
S901において、制御部101は、アップデータが公開されたかを判断する。ここで述べるアップデータは、差分アップデータ、フルアップデータを指す。
アップデータが公開された場合、S902において、制御部101は、フルアップデータサイズ(Size_Full)を取得する。
S903において、制御部101は、差分アップデータのサイズ(Size_Diff)を取得する。ここで述べる差分アップデータのサイズとは、サーバ装置100に置かれている全ての差分アップデータの合計サイズを指す。
S904において、制御部101は、Size_Full ≦ Size_Diff であるか否か、つまり、フルアップデータのサイズが、差分アップデータの合計サイズ以下であるか否か、を判断する。Size_Full ≦ Size_Diffである場合、古い差分アップデータをサーバ装置100に置いていたとしても、制御部101は、フルアップデータをアップデート手段として制御部121に通知する。そのため、古い差分アップデータをサーバ装置に置いておく必要が無い。
したがって、S905において、制御部101は、古い差分アップデータをサーバ装置100から削除する。
Size_Full ≦ Size_Diffではない場合、古い差分アップデータを削除する必要が無いため、制御部101は、何も処理を行わない。
これによって、過去の不要な差分アップデータを削除できるため、サーバ装置100の負荷を下げることができる。
公開中のサーバ装置1001には、ふたつのアップデータが公開されている。ひとつはバージョン6.9のフルアップデータである。もうひとつは、バージョン6.9までの差分アップデータである。差分アップデータは、バージョン6.6から6.7、6.7から6.8、6.8から6.9の3つから構成された例である。
準備中のサーバ装置1002には、バージョン7.0のフルアップデータ及びバージョン6.9から7.0までの差分アップデータが置かれている。これらのアップデータを準備中から公開中にステータスを変更する。
公開中のサーバ装置1003は、準備中のサーバ装置1002からバージョン6.9から7.0の差分アップデータが移動された構成図である。
例えば、クライアント装置のアプリバージョンが6.6の場合、バージョン7.0のフルアップデータのサイズのほうが差分アップデータのサイズよりも小さいので、フルアップデータを使用してアップデートすることを意味する。つまり、バージョン6.6から6.7の差分アップデータは、サーバ装置に公開されていたとしても、クライアントアプリからダウンロードされることは無くなってしまう。このようなファイルをサーバ装置に置いておくことは、サーバ装置に負荷が掛かる要因になる。そこで、公開中のサーバ装置1007は、差分アップデータのサイズがフルアップデータのサイズを下回るまで、最も古い差分アップデータから順番に差分アップデータを削除する。本実施形態では、バージョン6.6から6.7の差分アップデータが公開中のサーバ装置1007から削除されたことを示している。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (9)
- サーバ装置であって、
クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得手段と、
前記取得手段で取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較手段と、
前記比較手段での比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータを選択し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータを選択し、選択したデータをアップデータとしてクライアント装置に送信する送信手段と、
前記フルアップデータ、及び前記差分アップデータが公開された際に、前記比較手段での比較の結果、フルアップデータのサイズが、差分アップデータの合計サイズ以下である場合、差分アップデータの合計サイズがフルアップデータのサイズを下回るまで古い差分アップデータを前記サーバ装置から削除する削除手段と、
を有することを特徴とするサーバ装置。 - 前記取得手段は、前記クライアント装置から通知された前記クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータのファイルサイズを加算することにより前記差分アップデータの合計サイズを取得することを特徴とする請求項1記載のサーバ装置。
- 前記送信手段は、前記クライアント装置が差分アップデータに対応していない場合、前記比較手段での比較の結果によらず、前記フルアップデータを選択し、選択したフルアップデータをアップデータとしてクライアント装置に送信することを特徴とする請求項1又は2記載のサーバ装置。
- クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得手段と、
前記取得手段で取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較手段と、
前記比較手段での比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータをサーバ装置から取得し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータをサーバ装置から取得し、取得したデータをアップデータとしてインストールし、取得したデータをアップデータとしてインストールした際にアップデートに失敗した場合、取得したデータとは別のデータをサーバ装置に要求し、取得した前記別のデータをアップデータとしてインストールするインストール手段と、
を有することを特徴とするクライアント装置。 - 前記取得手段は、クライアント装置にインストールされているソフトウェアのバージョンからサーバ装置に置かれているアップデート対象のソフトウェアのバージョンまでの差分アップデータのファイルサイズを加算することにより前記差分アップデータの合計サイズを取得することを特徴とする請求項4記載のクライアント装置。
- サーバ装置が実行する情報処理方法であって、
クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得ステップと、
前記取得ステップで取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較ステップと、
前記比較ステップでの比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータを選択し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータを選択し、選択したデータをアップデータとしてクライアント装置に送信する送信ステップと、
前記フルアップデータ、及び前記差分アップデータが公開された際に、前記比較ステップでの比較の結果、フルアップデータのサイズが、差分アップデータの合計サイズ以下である場合、差分アップデータの合計サイズがフルアップデータのサイズを下回るまで古い差分アップデータを前記サーバ装置から削除する削除ステップと、
を含むことを特徴とする情報処理方法。 - クライアント装置が実行する情報処理方法であって、
クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得ステップと、
前記取得ステップで取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較ステップと、
前記比較ステップでの比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータをサーバ装置から取得し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータをサーバ装置から取得し、取得したデータをアップデータとしてインストールし、取得したデータをアップデータとしてインストールした際にアップデートに失敗した場合、取得したデータとは別のデータをサーバ装置に要求し、取得した前記別のデータをアップデータとしてインストールするインストールステップと、
を含むことを特徴とする情報処理方法。 - コンピュータに、
クライアント装置にインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得ステップと、
前記取得ステップで取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較ステップと、
前記比較ステップでの比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータを選択し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータを選択し、選択したデータをアップデータとしてクライアント装置に送信する送信ステップと、
前記フルアップデータ、及び前記差分アップデータが公開された際に、前記比較ステップでの比較の結果、フルアップデータのサイズが、差分アップデータの合計サイズ以下である場合、差分アップデータの合計サイズがフルアップデータのサイズを下回るまで古い差分アップデータを前記コンピュータから削除する削除ステップと、
を実行させるためのプログラム。 - コンピュータに、
コンピュータにインストールされているソフトウェアのバージョンからアップデート対象のソフトウェアのバージョンまでの差分アップデータの合計サイズを取得する取得ステップと、
前記取得ステップで取得された差分アップデータの合計サイズとフルアップデータのサイズとを比較する比較ステップと、
前記比較ステップでの比較の結果、差分アップデータの合計サイズが、フルアップデータのサイズ以下の場合、前記差分アップデータをサーバ装置から取得し、差分アップデータの合計サイズが、フルアップデータのサイズより大きい場合、前記フルアップデータをサーバ装置から取得し、取得したデータをアップデータとしてインストールし、取得したデータをアップデータとしてインストールした際にアップデートに失敗した場合、取得したデータとは別のデータをサーバ装置に要求し、取得した前記別のデータをアップデータとしてインストールするインストールステップと、
を実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011203589A JP5787688B2 (ja) | 2011-09-16 | 2011-09-16 | サーバ装置、クライアント装置、情報処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011203589A JP5787688B2 (ja) | 2011-09-16 | 2011-09-16 | サーバ装置、クライアント装置、情報処理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013065206A JP2013065206A (ja) | 2013-04-11 |
JP5787688B2 true JP5787688B2 (ja) | 2015-09-30 |
Family
ID=48188641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011203589A Expired - Fee Related JP5787688B2 (ja) | 2011-09-16 | 2011-09-16 | サーバ装置、クライアント装置、情報処理方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5787688B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6728744B2 (ja) * | 2016-02-19 | 2020-07-22 | 日本電気株式会社 | データ提供システム、データ提供方法、データ提供装置、更新対象装置及びコンピュータ・プログラム |
JPWO2018055737A1 (ja) | 2016-09-23 | 2019-01-10 | ヤマハ株式会社 | 制御装置、制御対象機器、表示用データの処理方法及びプログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4864557B2 (ja) * | 2006-06-15 | 2012-02-01 | 富士通株式会社 | ソフトウェアの更新処理プログラム及び更新処理装置 |
JP5500999B2 (ja) * | 2010-01-13 | 2014-05-21 | キヤノン株式会社 | 情報処理装置およびその制御方法およびプログラム |
-
2011
- 2011-09-16 JP JP2011203589A patent/JP5787688B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013065206A (ja) | 2013-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101098745B1 (ko) | 소프트웨어 업데이트를 관리하고 통신하기 위한 시스템 및방법 | |
KR101098621B1 (ko) | 네트워킹된 환경에서 설치 컴포넌트들을 업데이트하는시스템 및 방법 | |
AU2004279173B2 (en) | System and method for updating files utilizing delta compression patching | |
CN107104814B (zh) | 软件升级方法和系统 | |
EP1579301B1 (en) | Method, system and computer-readable medium for a software distribution service | |
KR101992680B1 (ko) | 화상형성장치, 추적장치, 관리장치 및 화상형성장치의 펌웨어 업데이트 방법 | |
CN110235118B (zh) | 通过存根化优化内容存储 | |
CN104919423A (zh) | 对等软件更新 | |
CN102833350A (zh) | WebApp更新的处理方法和处理装置 | |
JP5787688B2 (ja) | サーバ装置、クライアント装置、情報処理方法及びプログラム | |
JP5800685B2 (ja) | 情報処理装置及びサーバ、制御方法、プログラム及び記録媒体 | |
US20020029244A1 (en) | Client-server system, computer readable medium and computer-executable program product for updating software | |
JP7255105B2 (ja) | アプリケーションプログラムおよびデータ転送システム | |
JP7532325B2 (ja) | 情報処理システム、情報処理装置、情報処理方法及びプログラム | |
JP6320073B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP6568232B2 (ja) | 計算機システム、及び、装置の管理方法 | |
CN113076118B (zh) | 应用程序更新方法和装置以及数据发送方法和装置 | |
KR20170123165A (ko) | 시스템 버전 관리 및 장비 자동 업데이트장치 및 그 방법 | |
JP6021609B2 (ja) | 情報処理装置、その方法及びプログラム | |
JP2015153155A (ja) | 情報管理システム、情報管理方法及びプログラム | |
JP2012088825A (ja) | 更新システム | |
JP2012252533A (ja) | ソフトウェア配信装置およびソフトウェア配信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140912 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150414 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150612 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150630 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150728 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5787688 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |