JP2011170571A - Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device - Google Patents
Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device Download PDFInfo
- Publication number
- JP2011170571A JP2011170571A JP2010033039A JP2010033039A JP2011170571A JP 2011170571 A JP2011170571 A JP 2011170571A JP 2010033039 A JP2010033039 A JP 2010033039A JP 2010033039 A JP2010033039 A JP 2010033039A JP 2011170571 A JP2011170571 A JP 2011170571A
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- terminal
- request
- unit
- calculation request
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
【課題】ユーザの端末の計算リソースを、ユーザの処理に支障が生じない程度に利用して、分散計算を行う。
【解決手段】複数の端末装置(計算端末3−1〜3−3)と、計算依頼を分割して計算端末3−1〜3−3に分配し、計算端末3−1〜3−3の計算結果を受け取って結合する分配結合装置2とが、ネットワークを介して接続され、計算端末3−1〜3−3はそれぞれ、分配結合装置2からの計算依頼を自端末の負荷状態に応じて処理し、その処理により得られた計算結果を自端末の負荷状態を示す端末状態情報と共に分配結合装置2に送信し、分配結合装置2は、計算端末3−1〜3−3からそれぞれ受信した端末状態情報を保持し、保持された端末状態情報に応じて、計算依頼の分割および計算端末3−1〜3−3への分配を行う。
【選択図】図1
Distributed calculation is performed by using calculation resources of a user's terminal to such an extent that the user's processing is not hindered.
A plurality of terminal devices (calculation terminals 3-1 to 3-3) and a calculation request are divided and distributed to the calculation terminals 3-1 to 3-3. The distribution coupling device 2 that receives and combines the calculation results is connected via a network, and each of the calculation terminals 3-1 to 3-3 sends a calculation request from the distribution coupling device 2 according to the load state of the own terminal. Processing, and the calculation result obtained by the processing is transmitted to the distribution / combining device 2 together with the terminal state information indicating the load state of the own terminal, and the distribution / combining device 2 receives from the calculation terminals 3-1 to 3-3 Terminal state information is held, and calculation requests are divided and distributed to the calculation terminals 3-1 to 3-3 according to the held terminal state information.
[Selection] Figure 1
Description
本発明は、複数の計算端末により分散して計算を行う分散計算システム、分散計算の分配結合装置および端末装置に関する。 The present invention relates to a distributed computing system that performs computation in a distributed manner by a plurality of computing terminals, a distributed computing distribution and coupling device, and a terminal device.
近年、動画投稿サイトへの動画の投稿が盛んになってきている。動画投稿サイトとは、ユーザからの動画のアップロードを受け付け、アップロードされた動画をWeb上で公開できる形に変換し、変換後の動画をユーザが閲覧できるように公開しているWeb上のサイトである。動画投稿サイトを利用すれば、多くのユーザによって創作された多様な動画を閲覧することが可能である。これにより、ユーザの創作活動を活発にし、動画を用いた新たなビジネスの創出や新たな文化の醸成が期待される。 In recent years, posting of moving images to moving image posting sites has become popular. A video posting site is a site on the web that accepts uploads of videos from users, converts the uploaded videos into a form that can be published on the web, and publishes the converted videos so that the user can view them is there. If a video posting site is used, it is possible to browse various videos created by many users. As a result, it is expected that the user's creative activities will be activated, creating new business using videos and fostering a new culture.
しかし、動画投稿サイト側でアップロードされた動画の変換を行うため、動画投稿サイトのサーバの負荷が大きくなる。これにより、動画投稿サイトの運用コストの増大、動画投稿から公開までの待ち時間の増大が問題となる。 However, since the moving image uploaded on the moving image posting site side is converted, the load on the moving image posting site server increases. As a result, an increase in the operating cost of the video posting site and an increase in waiting time from the video posting to the release become problems.
一方、負荷の大きな計算を行う技術として、複数の計算機を用いる分散コンピューティング技術が知られている。複数の計算機で同時並行的に計算を行うことで、1つの計算機で計算を行うよりも早く、計算を完了することができる。このような技術を動画投稿サイトの動画の変換に用いることで、サーバの負荷を抑えることが可能になると考えられる。分散コンピューティング技術については、たとえば、特許文献1、2に開示されている。 On the other hand, a distributed computing technique using a plurality of computers is known as a technique for performing a calculation with a large load. By calculating in parallel with a plurality of computers, the calculation can be completed faster than when calculating with a single computer. It is considered that the load on the server can be suppressed by using such a technique for converting the moving image on the moving image posting site. The distributed computing technology is disclosed in Patent Documents 1 and 2, for example.
動画投稿サイトの運営者が複数の計算機を用意し、分散コンピューティング技術を利用することで、動画投稿から公開までの待ち時間の増大を抑えることができる。しかし、それでは、運用コストの増大を抑えることはできない。 An operator of a video posting site prepares a plurality of computers and uses distributed computing technology, thereby suppressing an increase in waiting time from video posting to publication. However, the increase in operation cost cannot be suppressed.
ユーザの端末も計算機であることから、ユーザの端末を用いて同時並行的に計算を行うアイデアもある。しかし、Web閲覧中のユーザの端末の負荷を、Web閲覧に支障が出るほど上げることはできない。 Since the user's terminal is also a computer, there is an idea of performing calculations in parallel using the user's terminal. However, the load on the terminal of the user who is browsing the Web cannot be increased so as to hinder the Web browsing.
本発明は、このような課題を解決し、ユーザの端末の計算リソースを、ユーザの処理に支障が生じない程度に利用することのできる分散計算システム、分散計算の分配結合装置および端末装置を提供することを目的とする。 The present invention solves such problems and provides a distributed computing system, a distributed computing distribution combination device, and a terminal device that can use computing resources of a user's terminal to such an extent that the user's processing is not hindered. The purpose is to do.
本発明の第1の観点によると、複数の端末装置と、計算依頼を分割して複数の端末装置に分配し、複数の端末装置の計算結果を受け取って結合する分配結合装置とが、ネットワークを介して接続され、複数の端末装置はそれぞれ、分配結合装置からの計算依頼を自端末の負荷状態に応じて処理し、その処理により得られた計算結果を自端末の負荷状態を示す端末状態情報と共に分配結合装置に送信し、分配結合装置は、複数の端末装置からそれぞれ受信した端末状態情報を保持し、保持された端末状態情報に応じて、計算依頼の分割および複数の端末装置への分配を行うことを特徴とする分散計算システムが提供される。 According to a first aspect of the present invention, a plurality of terminal devices and a distribution / combining device that divides a calculation request and distributes the calculation requests to the plurality of terminal devices, and receives and combines the calculation results of the plurality of terminal devices, A plurality of terminal devices each processing a calculation request from the distribution and coupling device according to the load state of the own terminal, and the calculation result obtained by the processing indicates terminal state information indicating the load state of the own terminal The distribution and combination device holds the terminal state information received from each of the plurality of terminal devices, and divides the calculation request and distributes the calculation requests to the plurality of terminal devices according to the held terminal state information. There is provided a distributed computing system characterized by
分配結合装置は、複数の端末装置のそれぞれに対して、分割した計算依頼と共に、以前の計算依頼に対して当該端末装置から受信して保持している当該端末装置の端末状態情報または当該端末装置の端末状態情報が保持されていない場合には初期値の端末状態情報を通知し、複数の端末装置はそれぞれ、分配結合装置から受信した端末状態情報と現在の自端末の負荷状態に応じて、分配結合装置からの計算依頼を処理することができる。 The distribution / combining apparatus receives, with respect to each of a plurality of terminal apparatuses, terminal status information of the terminal apparatus or the terminal apparatus received and held from the terminal apparatus with respect to the previous calculation request If the terminal status information is not held, the terminal status information of the initial value is notified, and each of the plurality of terminal devices is in accordance with the terminal status information received from the distribution and coupling device and the current load status of the own terminal, It is possible to process a calculation request from the distribution and coupling device.
分配結合装置は、複数の端末装置のいずれか1以上からの計算結果が得られない場合には、その計算結果が得られていない計算依頼について、再度分割して、計算結果が得られていない端末装置以外の1以上の端末装置に送信することが望ましい。 When the calculation result from any one or more of a plurality of terminal devices cannot be obtained, the distribution / combining device does not obtain the calculation result by dividing again the calculation request for which the calculation result is not obtained. It is desirable to transmit to one or more terminal devices other than the terminal device.
端末装置として、ウェブ上の特定のサイトにアクセスしている端末を利用することができる。この場合、分配結合装置から複数の端末装置に分配される計算依頼には、複数の端末装置のそれぞれで動作しているウェブ・ブラウザ上で計算を行うためのデータおよび計算手順が含まれることがよい。さらに、特定のサイトとしては、動画投稿サイトであり、依頼端末からの計算依頼は、動画投稿サイトに動画を登録するために必要な計算の依頼とすることができる。 As the terminal device, a terminal accessing a specific site on the web can be used. In this case, the calculation request distributed to the plurality of terminal devices from the distribution / combining device may include data and calculation procedures for performing calculation on the web browser operating on each of the plurality of terminal devices. Good. Further, the specific site is a video posting site, and the calculation request from the requesting terminal can be a calculation request necessary for registering the video on the video posting site.
本発明の第2の観点によると、依頼端末からの計算依頼を受信する計算依頼受信部と、受信した計算依頼を分割する計算依頼分割部と、分割された計算依頼を複数の端末装置に送信する計算依頼送信部と、計算依頼送信部から送信された計算依頼に対する複数の端末装置からの計算結果と当該端末装置の負荷状態を示す端末状態情報とを受信する計算結果受信部と、受信した計算結果を結合する計算結果結合部と、結合された計算結果を最終的な計算結果として依頼端末に送信する計算結果送信部と、計算結果受信部が受信した端末状態情報を保持する端末状態保持部とを有し、計算依頼分割部および計算依頼送信部は、端末状態保持部に保持された個々の端末装置の端末状態情報に応じて、受信した計算依頼の分割および複数の端末装置への送信を行うことを特徴とする分散計算の分配結合装置が提供される。 According to the second aspect of the present invention, a calculation request receiving unit that receives a calculation request from a requesting terminal, a calculation request dividing unit that divides the received calculation request, and the divided calculation requests are transmitted to a plurality of terminal devices. A calculation request transmission unit, a calculation result reception unit for receiving calculation results from a plurality of terminal devices for the calculation request transmitted from the calculation request transmission unit, and terminal state information indicating a load state of the terminal device, and A calculation result combining unit that combines calculation results, a calculation result transmitting unit that transmits the combined calculation result to the requesting terminal as a final calculation result, and a terminal state holding that stores terminal state information received by the calculation result receiving unit The calculation request dividing unit and the calculation request transmitting unit divide the received calculation request and send it to a plurality of terminal devices according to the terminal state information of each terminal device held in the terminal state holding unit. Dispensing coupling apparatus of the distributed computation and performing a transmission is provided.
本発明の第3の観点によると、ネットワーク上の分配結合装置から計算依頼を受信して処理する分散計算の端末装置において、分配結合装置から計算依頼を受信する計算依頼受信部と、自端末の負荷状態を示す端末状態情報を保持する端末状態保持部と、計算依頼受信部で受信した計算依頼を端末状態保持部に保持された端末状態情報に応じて分割する計算依頼分割部と、計算依頼分割部で分割された計算依頼に従って計算を実行する計算部と、計算部による計算結果を結合する計算結果結合部と、計算結果結合部により結合された計算結果を分配結合装置に送信する計算結果送信部とを有し、計算依頼分割部は、計算部への計算依頼の時刻と、その計算依頼に対する計算部の計算終了の時刻とから、自端末の負荷状態を推定して、端末状態保持部に保持された端末状態情報を更新し、計算結果送信部は、結合された計算結果と共に、現在の端末状態情報を分配結合装置に送信することを特徴とする端末装置が提供される。 According to a third aspect of the present invention, in a distributed calculation terminal device that receives and processes a calculation request from a distribution / coupling device on a network, a calculation request receiving unit that receives the calculation request from the distribution / coupling device; A terminal state holding unit for holding terminal state information indicating a load state, a calculation request dividing unit for dividing the calculation request received by the calculation request receiving unit according to the terminal state information held in the terminal state holding unit, and a calculation request A calculation unit that executes a calculation according to a calculation request divided by the division unit, a calculation result combining unit that combines calculation results by the calculation unit, and a calculation result that transmits the calculation result combined by the calculation result combining unit to the distribution combination device The calculation request dividing unit estimates the load state of the own terminal from the time of the calculation request to the calculation unit and the calculation end time of the calculation unit for the calculation request, and the terminal state It updates the terminal state information held in the lifting unit, the calculation result transmitting unit, together with the combined calculation result, the terminal apparatus and transmits the current terminal status information to the distribution coupling device is provided.
計算依頼分割部は、計算部に依頼した計算依頼のすべてが計算されていない場合は、計算が終了した計算依頼から推定される自端末の負荷状態に応じて、計算されていない計算依頼をさらに分割することができる。 If all of the calculation requests requested to the calculation unit have not been calculated, the calculation request splitting unit further calculates a calculation request that has not been calculated according to the load status of the terminal estimated from the calculation request that has been calculated. Can be divided.
計算依頼受信部、端末状態保持部、計算依頼分割部、計算部、計算結果結合部および計算結果送信部は、当該端末装置上で動作するウェブ・ブラウザの機能により実現され、計算依頼受信部は、分配結合装置から、計算依頼と共に、自端末の以前の端末状態情報または以前の端末状態情報がない場合には初期値の端末状態情報を受信し、その端末状態情報で端末状態保持部の内容を更新することができる。 The calculation request receiving unit, the terminal state holding unit, the calculation request dividing unit, the calculating unit, the calculation result combining unit, and the calculation result transmitting unit are realized by the function of the web browser operating on the terminal device, and the calculation request receiving unit is In the case where there is no previous terminal state information of the own terminal or previous terminal state information together with the calculation request from the distribution / combining device, the terminal state information of the initial value is received, and the contents of the terminal state holding unit are received by the terminal state information. Can be updated.
本発明によると、ユーザの端末の計算リソースを、ユーザの処理に支障が出ない程度に利用することが可能となる効果がある。 According to the present invention, there is an effect that it is possible to use the calculation resources of the user's terminal to such an extent that the user's processing is not hindered.
以下、本発明の実施の形態について、図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
[構成例]
図1は、本発明の実施の形態に係る分散計算システムの構成を示すブロック図である。この分散計算システムは、依頼端末1と、分配結合装置2と、計算端末3−1〜3−3とを備える。これらは、ネットワークを介して接続される。ここでは依頼端末1および分配結合装置2をそれぞれ1台だけ示しているが、これらはそれぞれ1台に限定されるものではなく、複数台備えることもできる。計算端末3−1〜3−3も、3台に限定されるものではない。
[Configuration example]
FIG. 1 is a block diagram showing a configuration of a distributed computing system according to an embodiment of the present invention. This distributed calculation system includes a request terminal 1, a distribution / combining device 2, and calculation terminals 3-1 to 3-3. These are connected via a network. Here, only one request terminal 1 and one distribution / coupling device 2 are shown, but these are not limited to one each, and a plurality of request terminals 1 and distribution / coupling devices 2 may be provided. The calculation terminals 3-1 to 3-3 are not limited to three.
依頼端末1は、計算を依頼する専用の端末装置である。依頼端末1は、計算を行うための計算依頼を、分配結合装置2に送信する。その後、依頼端末1は、計算結果を分配結合装置2から受信する。計算依頼には、計算対象のデータと、計算の手法が書かれたスクリプト、結合の手法が書かれたスクリプト等が含まれる。 The request terminal 1 is a dedicated terminal device that requests a calculation. The request terminal 1 transmits a calculation request for performing calculation to the distribution / combining apparatus 2. Thereafter, the requesting terminal 1 receives the calculation result from the distribution / coupling device 2. The calculation request includes data to be calculated, a script in which a calculation method is written, a script in which a combination method is written, and the like.
分配結合装置2は、依頼端末1からの計算依頼を受信し、受信した計算依頼を分割して複数の端末装置、すなわち計算端末3−1〜3−3に分配する。分配結合装置2は、また、計算依頼を分配した計算端末3−1〜3−3からの計算結果を受信し、受信した計算結果を結合し、結合した計算結果を最終的な計算結果として、依頼端末1に返す。分配結合装置2から計算端末3−1〜3−3に送信する計算依頼には、分配結合装置2によって分割された計算対象のデータと計算の手法が書かれたスクリプトと、結合の手法が書かれたスクリプト等が含まれる。 The distribution / combination device 2 receives the calculation request from the request terminal 1, divides the received calculation request, and distributes it to a plurality of terminal devices, that is, the calculation terminals 3-1 to 3-3. The distribution / combination device 2 also receives calculation results from the calculation terminals 3-1 to 3-3 to which the calculation request has been distributed, combines the received calculation results, and uses the combined calculation result as a final calculation result. Return to request terminal 1. The calculation request transmitted from the distribution / combination apparatus 2 to the calculation terminals 3-1 to 3-3 includes a script in which data to be calculated divided by the distribution / combination apparatus 2 and a calculation method are written, and a combination method. Included scripts.
計算端末3−1〜3−3(以下、個々に区別する必要がない場合は、単に、計算端末3と称する)は、たとえばユーザの端末装置であり、分配結合装置2からの計算依頼を自端末の負荷状態に応じて処理する。
The calculation terminals 3-1 to 3-3 (hereinafter simply referred to as the
この構成において、計算端末3−1〜3−3はそれぞれ、分配結合装置2からの計算依頼を処理することにより得られた計算結果を、自端末の負荷状態を示す端末状態情報と共に分配結合装置2に送信する。分配結合装置2は、計算端末3−1〜3−3からそれぞれ受信した端末状態情報を保持し、保持された端末状態情報に応じて、依頼端末1から受信した計算依頼の分割および計算端末3−1〜3−3への分配を行う。
In this configuration, each of the calculation terminals 3-1 to 3-3 displays the calculation result obtained by processing the calculation request from the distribution / combining apparatus 2 together with the terminal state information indicating the load state of the own terminal. 2 to send. The distribution / combination apparatus 2 holds the terminal state information received from the calculation terminals 3-1 to 3-3, and divides the calculation request received from the request terminal 1 and the
[ウェブ・クライアントによる計算]
ここで、計算端末3−1〜3−3として、ウェブ・クライアントを利用する場合を考える。すなわち、計算端末3−1〜3−3として、ウェブ・ブラウザがインストールされたパーソナルコンピュータを利用する。計算端末3−1〜3−3は、ウェブ上の特定のサイトにアクセスし、ウェブ・サーバから、あらかじめウェブ・ページをダウンロードして表示しているものとする。また、このウェブ・ページは、計算端末3−1〜3−3が計算を行うためのFlash(登録商標)やJavaScript(登録商標)等で記述された計算プログラムを含んでいる。この計算プログラムは、ウェブ・ページが計算端末3−1〜3−3に表示されると、分配結合装置2と接続し、分配結合装置2からの計算依頼を受信可能とする。また、この計算プログラムは、計算依頼を受信すると、その端末の負荷状態に応じて、端末のユーザのウェブ閲覧に支障をきたさない程度のリソースで、分配結合装置2からの計算依頼に従って計算を行う。さらに、計算プログラムは、その時の計算時間から自端末の負荷状態を計算し、計算依頼に対する計算結果と、自端末の負荷状態を表す端末状態情報とを分配結合装置2に送信する。
[Calculation by web client]
Here, a case where a web client is used as the calculation terminals 3-1 to 3-3 is considered. That is, a personal computer installed with a web browser is used as the calculation terminals 3-1 to 3-3. It is assumed that the calculation terminals 3-1 to 3-3 access a specific site on the web and download and display a web page in advance from a web server. Further, this web page includes a calculation program written in Flash (registered trademark), JavaScript (registered trademark), or the like for the calculation terminals 3-1 to 3-3 to perform calculation. When the web page is displayed on the calculation terminals 3-1 to 3-3, this calculation program is connected to the distribution / coupling device 2 and can receive a calculation request from the distribution / coupling device 2. Further, when receiving the calculation request, the calculation program performs the calculation according to the calculation request from the distribution and coupling device 2 with a resource that does not hinder the web browsing of the terminal user according to the load state of the terminal. . Further, the calculation program calculates the load state of the own terminal from the calculation time at that time, and transmits the calculation result for the calculation request and the terminal state information indicating the load state of the own terminal to the distribution and coupling device 2.
計算依頼に従う計算を特定のサイトのウェブ・ページに含まれる計算プログラムにより処理することから、計算端末3−1〜3−3がそのウェブ・ページを一旦閉じて再度開いたときには、自端末の端末状態情報が失われている可能性がある。そこで、分配結合装置2から計算端末3−1から3−3に計算依頼を送るときに、その計算依頼と共に、以前の計算依頼に対して当該計算端末から受信して保持している当該計算端末の端末状態情報、または当該計算端末の端末状態情報が保持されていない場合には初期値の端末状態情報を通知する。この端末状態情報には、端末ユーザの閲覧に支障を出さずに処理できるデータ量の情報が含まれる。計算端末3−1から3−3はそれぞれ、分配結合装置2から受信した端末状態情報と現在の自端末の負荷状態に応じて、分配結合装置2からの計算依頼を処理する。 Since the calculation according to the calculation request is processed by a calculation program included in the web page of a specific site, when the calculation terminals 3-1 to 3-3 close and reopen the web page, the terminal of the own terminal State information may be lost. Therefore, when a calculation request is sent from the distribution / combining device 2 to the calculation terminals 3-1 to 3-3, the calculation terminal received from the calculation terminal with respect to the previous calculation request and held together with the calculation request If the terminal state information or the terminal state information of the calculation terminal is not held, the terminal state information of the initial value is notified. This terminal state information includes information on the amount of data that can be processed without hindering the browsing of the terminal user. Each of the calculation terminals 3-1 to 3-3 processes the calculation request from the distribution / combining device 2 according to the terminal state information received from the distribution / combining device 2 and the current load state of the own terminal.
[分配結合装置]
図2は、図1に示した分配結合装置2の構成例を示すブロック図である。この分配結合装置2は、計算依頼受信部21と、計算依頼分割部22と、端末状態保持部23と、計算依頼送信部24と、計算結果受信部25と、計算結果結合部26と、計算結果送信部27とを備える。
[Distributive coupling device]
FIG. 2 is a block diagram illustrating a configuration example of the distribution / coupling device 2 illustrated in FIG. 1. The distribution / combination apparatus 2 includes a calculation
計算依頼受信部21は、依頼端末1からの計算依頼を受信し、保持し、計算依頼分割部2に送信する。
The calculation
計算依頼分割部22は、計算依頼受信部21から受信した計算依頼を、計算端末3−1〜3−3のそれぞれの負荷に応じて分割し、計算依頼送信部24に送信する。このとき、計算依頼に含まれる計算対象のデータの分割は、端末状態保持部23から取得した端末状態情報に応じて、すなわち計算端末3−1〜3−3の負荷状態に応じて、行われる。計算依頼分割部22はさらに、分割後の計算依頼を、送信先の計算端末のIDとともに、計算依頼送信部24に送信する。分割後の計算依頼には、たとえば、分割後の計算対象のデータと、計算の手法が書かれたスクリプトと、結合の手法が書かれたスクリプト等が含まれる。計算依頼分割部22はまた、計算結果受信部25から再計算依頼を受信すると、それに従って、該当する計算依頼を計算端末3−1〜3−3のそれぞれの負荷に応じて分割し、計算依頼送信部24に送信する。
The calculation
端末状態保持部23は、複数の計算端末3−1〜3−3の負荷状態を示す端末状態情報を保持する。たとえば、計算端末3−1〜3−3でのユーザのウェブ閲覧に支障をきたさない程度の計算データ量の値や、単位データ量の計算にかかる時間や、現在計算端末3−1〜3−3で計算を行っているスレッドの数などが含まれる。
The terminal
計算依頼送信部24は、計算依頼分割部22から受信した分割後の計算依頼を受信し、その計算依頼の送信先の計算端末のIDに対応する端末状態情報を、端末状態保持部23から取得する。計算依頼送信部24は、さらに、取得された端末状態情報と分割後の計算依頼とを、送信先の計算端末IDに対応する計算端末に送信する。
The calculation
計算結果受信部25は、計算端末3−1〜3−3から計算結果と端末状態情報とを受信し、受信した端末状態情報で端末状態保持部23の内容を更新する。計算結果受信部25は、送信されたすべての計算依頼に対する計算結果を受信すると、それらの計算結果を計算結果結合部26に送信する。このときの端末状態情報は、当該計算端末が計算結果を算出するためにかかった時間から算出され、当該計算端末のユーザのWeb閲覧に支障をきたさない程度の計算データ量の値や、単位データ量の計算にかかる時間や、現在当該計算端末で計算を行っているスレッドの数などが含まれる。計算結果受信部25は、あらかじめ算出しておいた予想時間までにすべての計算端末3−1〜3−3から計算結果を受信できなかった場合、受信できていない計算結果に対応する計算依頼の再計算依頼を、計算依頼分割部22に送信する。
The calculation
計算結果結合部26は、計算結果受信部25から受信した計算結果を結合し、計算結果送信部27に送信する。計算結果結合部26による計算結果の結合は、計算依頼受信部21に保持されている計算依頼に含まれている結合の手法が書かれたスクリプトを用いて行われる。計算結果送信部27は、計算結果結合部26から受信した計算結果を依頼端末2に送信する。
The calculation
[端末装置]
図3は、図1に示す計算端末3−1〜3−3の詳細な構成例を示すブロック図である。ここでは、計算端末3として参照する。この計算端末3は、計算依頼受信部31と、端末状態保持部32と、計算依頼分割部33と、計算部34と、計算結果結合部35と、計算結果送信部36とを備える。これらの各部は、当該計算端末上で動作するウェブ・ブラウザの機能により実現される。すなわち、ウェブ・ブラウザが特定のサイトにアクセスしてそのウェブ・ページをダウンロードするときに、そのウェブ・ページに含まれる計算プログラムもダウンロードされ、ウェブ・ブラウザ上でその計算プログラムを実行することで、上述の各部が実現される。
[Terminal device]
FIG. 3 is a block diagram showing a detailed configuration example of the calculation terminals 3-1 to 3-3 shown in FIG. Here, it is referred to as the
計算依頼受信部31は、分配結合装置2から計算依頼と端末状態情報とを受信し、計算依頼を保持し、計算依頼と端末状態情報とを計算依頼分割部32に送信する。
The calculation
計算依頼分割部32は、計算依頼受信部31から受信した計算依頼を自端末の負荷に応じて分割し、受信した端末状態情報で端末状態保持部33の内容を更新する。このとき、計算依頼に含まれる計算対象のデータを、計算依頼受信部31から受信した端末状態情報に応じて分割する。この後、計算依頼分割部32は、分割後の計算依頼を計算部34に送信する。分割後の計算依頼には、たとえば、分割後の計算対象のデータと、計算の手法が書かれたスクリプト等が含まれる。計算依頼分割部32はまた、計算部34から計算結果を受信すると、計算にかかった時間から負荷状態を算出し、算出された負荷状態に基づいて、端末状態保持部33の端末状態情報を更新する。その後、すべての計算依頼の計算が完了していない場合は、算出された端末状態情報に応じて残っている計算依頼を分割し、計算部34に送信し、計算依頼の計算が完了するまで繰り返す。計算依頼の計算が完了すると、計算依頼分割部32は、すべての計算結果を計算結果結合部35に送信する。
The calculation
端末状態保持部33は、自端末の負荷状態を示す端末状態情報を保持する。たとえば、自端末のユーザのウェブ閲覧に支障をきたさない程度の計算データ量の値や、単位データ量の計算にかかる時間や、現在自端末で計算を行っているスレッドの数などが含まれる。
The terminal
計算部34は、計算依頼分割部32からの計算依頼を処理し、その計算結果を計算依頼分割部32に返送する。
The
計算結果結合部35は、計算依頼部分割部32から受信した計算結果を結合し、計算結果送信部36に送信する。計算結果結合部35は、計算依頼受信部31に保持されている計算依頼に含まれている結合の手法が書かれたスクリプトを用いて結合を行い、結合後の計算結果を計算結果送信部36に送信する。
The calculation
計算結果送信部36は、計算結果結合部35から計算結果を受信し、端末状態保持部33から端末状態情報を取得し、受信した計算結果と取得した端末状態情報とを分配結合装置2に送信する。
The calculation
[分配結合装置の動作]
図4は図2に示した分配結合装置2の動作を説明するシーケンス図である。なお、計算端末3−1〜3−3は、ウェブ上の特定のサイトにアクセスし、ウェブ・サーバから、あらかじめ計算プログラムを含むウェブ・ページをダウンロードして表示しているものとする。
[Operation of distribution coupling device]
FIG. 4 is a sequence diagram for explaining the operation of the distribution and coupling device 2 shown in FIG. Note that the calculation terminals 3-1 to 3-3 access a specific site on the web, and download and display a web page including a calculation program in advance from a web server.
計算依頼受信部21は、依頼端末1からの計算依頼(計算対象のデータと、計算の手法が書かれたスクリプト、結合の手法が書かれたスクリプト等)を受信し、受信した計算依頼を保持するとともに、受信した計算依頼を計算依頼分割部22に送信する。計算依頼分割部22は、計算依頼受信部21から計算依頼を受信すると、端末状態保持部23が保持している端末状態情報を参照し、参照した端末状態情報に応じて受信した計算依頼を分割し、分割後の計算依頼を計算依頼送信部24に送信する。
The calculation
なお、計算端末3−1〜3−3に、初めて計算依頼を受ける端末が含まれる場合には、端末状態保持部23にはその端末の端末状態情報が保持されていないことになる。このような場合、その端末には、計算依頼を最小に分割するか、あるいは、一般的な端末で支障をきたさない程度に分割する。
When the calculation terminals 3-1 to 3-3 include a terminal that receives a calculation request for the first time, the terminal
計算依頼送信部24は、計算依頼分割部22から分割後の計算依頼を受信すると、端末状態保持部23から端末状態情報を取得し、受信した分割後の計算依頼と、取得した端末状態情報とを、それぞれの計算端末3−1〜3−3に送信する。なお、初めて計算依頼を出す計算端末に対しては、以前の端末状態情報がないので、初期値の端末状態情報、たとえば一般的な端末装置に見られる負荷状態に相当する端末状態情報を送信する。
When the calculation
この後、計算結果受信部25は、それぞれの計算端末3−1〜3−3から、計算結果と端末状態情報とを受信する。このとき、計算結果受信部25は、受信した端末状態情報で端末状態保持部23の内容を更新する。また、計算結果受信部25は、すべての計算依頼の計算結果を受信したかを確認し、未計算の計算依頼の計算をするために、再計算依頼を計算依頼分割部22に送信する。
Thereafter, the calculation
計算依頼分割部22は、計算結果受信部25から再計算依頼を受信すると、計算依頼をすべて計算し終わっていないと判断し、再び、計算依頼の分割を行う。すなわち、計算端末3−1〜3−3のいずれか1以上からの計算結果が得られない場合には、その計算結果が得られていない計算依頼について、再度分割して、計算結果が得られていない端末以外の1以上の端末に送信する。
When the calculation
計算結果受信部25は、すべての計算依頼の計算結果を受信した場合には、受信したすべての計算結果を計算結果結合部26に送信する。計算結果結合部26は、計算結果受信部25から計算結果を受信すると、計算依頼受信部21を参照し、計算依頼受信部21が保持する計算依頼の中の「結合の手法」に従って、受信した計算結果を結合し、結合後の計算結果を計算結果送信部27に送信する。計算結果送信部27は、計算結果結合部から計算結果を受信すると、その計算結果を依頼端末1に送信する。
When receiving the calculation results of all the calculation requests, the calculation
[計算端末の動作]
図5は、図3に示した計算端末3の動作を説明するシーケンス図である。なお、計算端末3は、ウェブ上の特定のサイトにアクセスし、ウェブ・サーバから、あらかじめ分配計算プログラムPを含むウェブ・ページをダウンロードして表示しているものとする。
[Operation of computing terminal]
FIG. 5 is a sequence diagram for explaining the operation of the
計算依頼受信部31は、分配結合装置2から計算依頼と端末状態情報とを受信すると、受信した計算依頼を保持し、受信した計算依頼と端末状態情報とを計算依頼分割部32に送信する。計算依頼分割部32は、計算依頼受信部31から計算依頼と端末状態情報とを受信すると、受信した端末状態情報で端末状態保持部33の内容を更新する。計算依頼分割部32はさらに、端末状態保持部33を参照し、参照した端末状態情報に応じて、受信した計算依頼を分割する。分割後の計算依頼は、計算部34に送信される。
When the calculation
計算部34は、計算依頼分割部32から計算依頼を受信すると、その計算依頼に従って計算を行い、計算結果を計算依頼分割部32に送信する。
When receiving the calculation request from the calculation
計算依頼分割部32は、計算部34から計算結果を受信すると、計算にかかった時間に応じて、端末状態保持部33の端末状態情報を更新する。計算依頼のすべての計算が終了していない場合には、計算依頼分割部33は、再度、計算依頼の分割を行う。
When the calculation
計算依頼のすべての計算が終了している場合には、計算依頼分割部32は、計算結果すべてを計算依頼結合部35に送信する。
When all the calculations for the calculation request have been completed, the calculation
計算結果結合部36は、計算依頼分割部32から計算結果を受信し、計算依頼受信部31の計算依頼を参照して、計算結果を結合する。計算結果結合部36はさらに、結合後の計算結果を計算結果送信部36に送信する。計算結果送信部36は、計算結果結合部35から計算結果を受信すると、端末状態保持部33から端末状態情報を取得し、受信した計算結果と取得した端末状態情報とを、分配結合装置2に送信する。
The calculation
[効果の説明]
以上説明した本発明の実施の形態によれば、計算端末3が計算依頼を自端末の負荷状態に応じて処理することができ、また、計算端末3−1〜3−3に計算依頼を送信する分配結合装置2も、計算端末3−1〜3−3から受信した端末状態情報に応じて計算依頼の分割および分配を行うので、計算端末3−1〜3−3の計算リソースを、ユーザの処理に支障が出ない程度に利用することができる。
[Description of effects]
According to the embodiment of the present invention described above, the
また、計算端末3−1〜3−3としてウェブ・クライアントを利用することで、特定のサイトにアクセスしたユーザの端末装置を、ユーザの許可を得た上で、分散コンピューティングに利用することができる。このとき、ウェブ・ブラウザの機能を利用することで、計算端末3−1〜3−3の負荷状態を特別なプロトコルを用いることなく送受信することができる。ここで送受信される負荷状態の精度は、計算端末3−1〜3−3の負荷状態の変化などを考慮すると、それほど高くはないと考えられる。しかし、おおよその目安とはなるので、ユーザのウェブ閲覧に支障が出るほどの負荷は避けることができる。 Further, by using a web client as the computing terminals 3-1 to 3-3, a terminal device of a user who accesses a specific site can be used for distributed computing after obtaining the user's permission. it can. At this time, the load state of the calculation terminals 3-1 to 3-3 can be transmitted / received without using a special protocol by using the function of the web browser. The accuracy of the load state transmitted / received here is considered to be not so high considering changes in the load state of the calculation terminals 3-1 to 3-3. However, since this is an approximate guideline, it is possible to avoid a load that would hinder the user's web browsing.
本発明は特に、動画投稿サイトに必要な計算の分散計算に利用することができる。すなわち、動画投稿サイトにアクセスするユーザの端末装置を計算端末3、3−1〜3−3として利用し、その動画投稿サイトに動画を登録するために必要な計算依頼を分割して、計算端末3−1〜3−3で計算することができる。
In particular, the present invention can be used for distributed calculation of calculations necessary for a moving image posting site. That is, the terminal device of the user who accesses the video posting site is used as the
1 依頼端末
2 分配結合装置
3、3−1〜3−3 計算端末(端末装置)
21 計算依頼受信部
22 計算依頼分割部
23 端末状態保持部
24 計算依頼送信部
25 計算結果受信部
26 計算結果結合部
27 計算結果送信部
31 計算依頼受信部
32 端末状態保持部
33 計算依頼分割部
34 計算部
35 計算結果結合部
36 計算結果送信部
DESCRIPTION OF SYMBOLS 1 Request terminal 2
21 calculation
Claims (10)
上記複数の端末装置はそれぞれ、上記分配結合装置からの計算依頼を自端末の負荷状態に応じて処理し、その処理により得られた計算結果を自端末の負荷状態を示す端末状態情報と共に上記分配結合装置に送信し、
上記分配結合装置は、上記複数の端末装置からそれぞれ受信した端末状態情報を保持し、保持された端末状態情報に応じて、上記計算依頼の分割および上記複数の端末装置への分配を行う
ことを特徴とする分散計算システム。 A plurality of terminal devices and a distribution combination device that divides and distributes the calculation request to the plurality of terminal devices and receives and combines the calculation results of the plurality of terminal devices are connected via a network,
Each of the plurality of terminal devices processes a calculation request from the distribution / combining device according to the load state of the own terminal, and the calculation result obtained by the processing is distributed together with the terminal state information indicating the load state of the own terminal. Sent to the coupling device,
The distribution / combining device holds terminal state information received from each of the plurality of terminal devices, and divides the calculation request and distributes the calculation requests to the plurality of terminal devices according to the held terminal state information. A featured distributed computing system.
前記分配結合装置は、前記複数の端末装置のそれぞれに対して、分割した計算依頼と共に、以前の計算依頼に対して当該端末装置から受信して保持している当該端末装置の端末状態情報または当該端末装置の端末状態情報が保持されていない場合には初期値の端末状態情報を通知し、
前記複数の端末装置はそれぞれ、前記分配結合装置から受信した端末状態情報と現在の自端末の負荷状態に応じて、前記分配結合装置からの計算依頼を処理する
ことを特徴とする分散計算システム。 The distributed computing system according to claim 1,
For each of the plurality of terminal devices, the distribution / combining device includes the divided calculation requests and the terminal status information of the terminal device received from the terminal device and held for the previous calculation request, or the If the terminal status information of the terminal device is not retained, the initial terminal status information is notified,
Each of the plurality of terminal devices processes a calculation request from the distribution / combining device according to the terminal state information received from the distribution / combining device and the current load state of the own terminal.
受信した計算依頼を分割する計算依頼分割部と、
分割された計算依頼を複数の端末装置に送信する計算依頼送信部と、
上記計算依頼送信部から送信された計算依頼に対する上記複数の端末装置からの計算結果と当該端末装置の負荷状態を示す端末状態情報とを受信する計算結果受信部と、
受信した計算結果を結合する計算結果結合部と、
結合された計算結果を最終的な計算結果として上記依頼端末に送信する計算結果送信部と、
上記計算結果受信部が受信した上記端末状態情報を保持する端末状態保持部と
を有し、
上記計算依頼分割部および上記計算依頼送信部は、上記端末状態保持部に保持された個々の計算端末の端末状態情報に応じて、上記受信した計算依頼の分割および上記複数の端末装置への送信を行う
ことを特徴とする分散計算の分配結合装置。 A calculation request receiver for receiving a calculation request;
A calculation request dividing unit for dividing the received calculation request;
A calculation request transmission unit that transmits the divided calculation requests to a plurality of terminal devices;
A calculation result receiving unit for receiving calculation results from the plurality of terminal devices for the calculation request transmitted from the calculation request transmitting unit and terminal state information indicating a load state of the terminal device;
A calculation result combining unit for combining the received calculation results;
A calculation result transmission unit that transmits the combined calculation result to the request terminal as a final calculation result;
A terminal state holding unit for holding the terminal state information received by the calculation result receiving unit;
The calculation request dividing unit and the calculation request transmitting unit divide the received calculation request and transmit it to the plurality of terminal devices according to the terminal status information of each calculation terminal held in the terminal status holding unit. A distribution and coupling device for distributed computation.
上記分配結合装置から計算依頼を受信する計算依頼受信部と、
自端末の負荷状態を示す端末状態情報を保持する端末状態保持部と、
上記計算依頼受信部で受信した計算依頼を上記端末状態保持部に保持された端末状態情報に応じて分割する計算依頼分割部と、
上記計算依頼分割部で分割された計算依頼に従って計算を実行する計算部と、
上記計算部による計算結果を結合する計算結果結合部と、
上記計算結果結合部により結合された計算結果を上記分配結合装置に送信する計算結果送信部と
を有し、
上記計算依頼分割部は、上記計算部への計算依頼の時刻と、その計算依頼に対する上記計算部の計算終了の時刻とから、自端末の負荷状態を推定して、上記端末状態保持部に保持された端末状態情報を更新し、
上記計算結果送信部は、上記結合された計算結果と共に、現在の端末状態情報を上記分配結合装置に送信する
ことを特徴とする端末装置。 In a terminal device that processes a calculation request from a distribution and coupling device on a network,
A calculation request receiving unit for receiving a calculation request from the distribution and coupling device;
A terminal state holding unit for holding terminal state information indicating a load state of the own terminal;
A calculation request dividing unit that divides the calculation request received by the calculation request receiving unit according to the terminal state information held in the terminal state holding unit;
A calculation unit that executes calculation according to the calculation request divided by the calculation request dividing unit;
A calculation result combining unit that combines calculation results by the calculation unit;
A calculation result transmitting unit that transmits the calculation result combined by the calculation result combining unit to the distribution and coupling device;
The calculation request dividing unit estimates the load state of the terminal from the time of the calculation request to the calculation unit and the calculation end time of the calculation unit for the calculation request, and holds the load state in the terminal state holding unit Updated device status information,
The calculation result transmitting unit transmits current terminal state information to the distribution / combining device together with the combined calculation result.
前記計算依頼受信部、前記端末状態保持部、前記計算依頼分割部、前記計算部、前記計算結果結合部および前記計算結果送信部は、当該端末装置上で動作するウェブ・ブラウザの機能により実現され、
前記計算依頼受信部は、前記分配結合装置から、計算依頼と共に、自端末の以前の端末状態情報または以前の端末状態情報がない場合には初期値の端末状態情報を受信し、その端末状態情報で前記端末状態保持部の内容を更新する
ことを特徴とする端末装置。 The terminal device according to claim 8 or 9,
The calculation request receiving unit, the terminal state holding unit, the calculation request dividing unit, the calculating unit, the calculation result combining unit, and the calculation result transmitting unit are realized by the function of a web browser that operates on the terminal device. ,
The calculation request receiving unit receives the terminal state information of the initial value when there is no previous terminal state information of the own terminal or the previous terminal state information together with the calculation request from the distribution and combination device, and the terminal state information And updating the contents of the terminal state holding unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010033039A JP2011170571A (en) | 2010-02-18 | 2010-02-18 | Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010033039A JP2011170571A (en) | 2010-02-18 | 2010-02-18 | Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2011170571A true JP2011170571A (en) | 2011-09-01 |
Family
ID=44684642
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010033039A Pending JP2011170571A (en) | 2010-02-18 | 2010-02-18 | Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2011170571A (en) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014130591A (en) * | 2012-12-28 | 2014-07-10 | Hon Hai Precision Industry Co Ltd | Computing system for virtual machine and method therefor |
| JP2014191594A (en) * | 2013-03-27 | 2014-10-06 | Nec Corp | Decentralized processing system |
| CN105207201A (en) * | 2015-09-15 | 2015-12-30 | 云南电网责任有限公司大理供电局 | Power distribution network feeder circuit optimal segmentation method based on uniform load distribution and biggest power supply reliability |
| JP7603628B2 (en) | 2022-02-24 | 2024-12-20 | Kddi株式会社 | Distributed computing control system, method and program |
-
2010
- 2010-02-18 JP JP2010033039A patent/JP2011170571A/en active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014130591A (en) * | 2012-12-28 | 2014-07-10 | Hon Hai Precision Industry Co Ltd | Computing system for virtual machine and method therefor |
| JP2014191594A (en) * | 2013-03-27 | 2014-10-06 | Nec Corp | Decentralized processing system |
| CN105207201A (en) * | 2015-09-15 | 2015-12-30 | 云南电网责任有限公司大理供电局 | Power distribution network feeder circuit optimal segmentation method based on uniform load distribution and biggest power supply reliability |
| JP7603628B2 (en) | 2022-02-24 | 2024-12-20 | Kddi株式会社 | Distributed computing control system, method and program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3764220B1 (en) | Automatic application updates | |
| CN112632566B (en) | Vulnerability scanning method and device, storage medium and electronic equipment | |
| CN104350741B (en) | Method, device and medium for incremental preparation of video for delivery | |
| EP3298756B1 (en) | Interfacing with servers having different apis to obtain advertisement data | |
| WO2023000888A1 (en) | Cloud application implementing method and apparatus, electronic device, and storage medium | |
| KR20100122197A (en) | Cloud computing network system and file distrubuting method of the same | |
| JP2014021728A5 (en) | ||
| CN103826139A (en) | CDN system, watching server and streaming media data transmission method | |
| JP2011170571A (en) | Distributed computing system, distribution and combination apparatus for distributed computing, and terminal device | |
| JP6372868B2 (en) | Reward distribution method, reward distribution system and terminal | |
| KR101033813B1 (en) | Cloud computing network system and its file distribution method | |
| CN105095220A (en) | Browser implementation method, terminal and virtualized agent device | |
| US9292358B2 (en) | Remotely retrieving information from consumer devices | |
| KR101195123B1 (en) | Cloud computing network system and file distrubuting method of the same | |
| JP6261325B2 (en) | Web font distribution method and system therefor | |
| US20170019712A1 (en) | Method of providing image data based on cloud streaming, and apparatus therefor | |
| CN109981778B (en) | Method, device, equipment and storage medium for realizing service of content distribution network | |
| US9606758B1 (en) | System and method of connecting a computer to a printer | |
| JP5512606B2 (en) | Distributed computing system, distribution coupling device, and computing program | |
| JP6102725B2 (en) | Session management system, operation mode management device, and program | |
| JP2015064635A (en) | Information processing system, processing apparatus, distributed processing method, and program | |
| CN112075064A (en) | Scalable real-time duplex communication service | |
| JP5659498B2 (en) | SOA system, service bus device, transfer definition generation method, and computer program | |
| JP6156116B2 (en) | Session management system, session management device, and program | |
| US20150127719A1 (en) | Information processing system, proxy apparatus, information processing method, and computer program product |