Load distributing system and method
Claim Score by NHIP
Abstract
Based on the load of all load distribution target computers including Web server computers (11-1 to 11-6), a server configuration management unit (151) determines the number of provisioning node (PN) computers, use of which as load distribution target computers is to be started, or use of which as load distribution target computers is to be ended. A PN management unit (152) determines computers, the use of which is to be started or ended. The determined computers are included in PN computers (15-1 to 15-4). A PN start/stop unit (153) starts or stops the determined computers. A setting change unit (154) controls a load distributing device (12) so that the determined computers are included in or excluded from target computers of load distribution by the load distributing device (12).

Term
Term ended
Projected expiry passed 26 May 2024, 2.3 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
19 claims: 6 independent, 13 dependent
- 1A load distributing system comprising:a plurality of server computers which process requests from a plurality of client computers, the server computers being managed, classified into a plurality of server computer groups corresponding to different types of boot images, the different types of boot images including operating systems executed by the server computers;a load distributing device configured to distribute the requests from the client computers between a plurality of load distribution target computers including the server computers;a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers;a server configuration management unit configured to determine, for each server computer group, number of provisioning computers, use of which as new load distribution target computers is to be started, or use of which as load distribution target computers is to be ended, based on a load of all load distribution target computers including the server computers of said each server computer group;a provisioning-computer management unit configured to manage states of use of the provisioning computers, the provisioning computer management unit determining provisioning computers corresponding to the number of provisioning computers determined by the server configuration management unit for said each server computer group, use of the corresponding provisioning computers as the new load distribution target computers being to be started, or use of the corresponding provisioning computers as the load distribution target computers being to be ended;a provisioning-computer start/stop unit configured to start or stop the provisioning computers determined by the provisioning-computer management unit;a setting change unit configured to add, as load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit, or configured to exclude, from load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit;and a boot-image selection unit configured to select, from the different types of boot images, a boot image corresponding to said each server computer group which includes the provisioning computers determined by the provisioning-computer management unit and started to be used as the load distribution target computers, the boot image being used to boot the provisioning computers determined by the provisioning-computer management unit, wherein when the provisioning computers determined by the provisioning-computer management unit are started by the provisioning-computer start/stop unit, the provisioning computers are booted by the boot image selected by the boot-image selection unit.
- 6A load distributing system comprising:a plurality of server computers which process requests from a plurality of client computers;a load distributing device configured to distribute the requests from the client computers between a plurality of load distribution target computers including the server computers;a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers;a server configuration management unit configured to determine, based on a load of all load distribution target computers including the server computers, number of provisioning computers, use of which as new load distribution target computers is to be started, or use of which as load distribution target computers is to be ended;a provisioning-computer management unit configured to manage states of use of the provisioning computers, the provisioning computer management unit determining provisioning computers corresponding to the number of provisioning computers determined by the server configuration management unit, use of the corresponding provisioning computers as the new load distribution target computers being to be started, or use of the corresponding provisioning computers as the load distribution target computers being to be ended;a provisioning-computer start/stop unit configured to start or stop the provisioning computers determined by the provisioning-computer management unit;and a setting change unit configured to add, as load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit, or configured to exclude, from load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit.
- 14Broadest claimClaim Score 27, narrow(NHIP)A load distributing method for use in a load distributing system, the load distributing system including a plurality of server computers which process requests from a plurality of client computers, a load distributing device which distributes the requests from the client computers between a plurality of load distribution target computers including the server computers, and a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers, the method comprising:determining number of provisioning computers, use of which as new load distribution target computers is to be started, or use of which as load distribution target computers is to be ended, based on a load of all load distribution target computers including the server computers;determining provisioning computers corresponding to the determined number, when the number of provisioning computers, the use of which is to be started, is determined, the use of the corresponding provisioning computers as the new load distribution target computers being to be started;starting the corresponding provisioning computers when the corresponding provisioning computers, the use of which is to be started, are determined;adding the corresponding provisioning computers as load distribution target computers that are targets of load distribution by the load distributing device, when the corresponding provisioning computers, the use of which is to be started, are determined;determining provisioning computers corresponding to the determined number, when the number of provisioning computers, the use of which is to be ended, is determined, the use of the corresponding provisioning computers as the load distribution target computers being to be ended;stopping the corresponding provisioning computers when the corresponding provisioning computers, the use of which is to be ended, are determined;and excluding the corresponding provisioning computers from load distribution target computers that are targets of load distribution by the load distributing device, when the corresponding provisioning computers, the use of which is to be ended, are determined.
- 16A load distributing method for use in a load distributing system, the load distributing system including a plurality of server computers which process requests from a plurality of client computers, a load distributing device which distributes the requests from the client computers between a plurality of load distribution target computers including the server computers, and a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers, the server computers being managed, classified into a plurality of server computer groups corresponding to different types of boot images, the different types of boot images including operating systems executed by the server computers, the method comprising:determining an entire load of each of the server computer groups based on a load of all load distribution target computers including the server computers of said each server computer group;determining, for said each server computer group, number of provisioning computers, use of which as new load distribution target computers is to be started in said each server computer group, or use of which as load distribution target computers is to be ended in said each server computer group, based on the entire load of said each server computer group, when the entire load of said each server computer group is determined;determining provisioning computers corresponding to the determined number, when the number of provisioning computers is determined for one of the server computer groups, use of the corresponding provisioning computers as new load distribution target computers being to be started in the one server computer group;selecting, from the different types of boot images, a boot image corresponding to the one server computer group which includes the corresponding provisioning computers, when the corresponding provisioning computers, use of which is to be started in the one server computer group, are determined, the boot image being used to boot the determined provisioning computers;starting the corresponding provisioning computers to boot the corresponding provisioning computers using the selected boot image, when the corresponding provisioning computers, the use of which is be started in the one server computer group, are determined, and when the boot image corresponding to the one server computer group is selected;adding the corresponding provisioning computers as load distribution target computers that are targets of load distribution by the load distributing device, when the corresponding provisioning computers, the use of which is to be started in the one server computer group, are determined;determining provisioning computers corresponding to the determined number, when the number of provisioning computers, use of which is to be ended in the one server computer group, is determined, the use of the corresponding provisioning computers as the load distribution target computers being to be ended in the one server computer group;stopping the corresponding provisioning computers when the corresponding provisioning computers, the use of which is to be ended in the one server computer group, are determined;and excluding the corresponding provisioning computers from load distribution target computers that are targets of load distribution by the load distributing device in the one server computer group, when the corresponding provisioning computers, the use of which is to be ended in the one server computer group, are determined.
- 18A load distributing method for use in a load distributing system, the load distributing system including a plurality of server sites, a provisioning site and a network, each of the server sites including a plurality of server computers which process requests from a plurality of client computers, and a load distributing device which distributes the requests from the client computers between a plurality of load distribution target computers including the server computers, the server computers being managed, classified into a plurality of server computer groups corresponding to different types of boot images, the different types of boot images including operating systems executed by the server computers, the provisioning site including a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers, the network connecting the server sites to the provisioning site, the method comprising:determining an entire load of each of the server computer groups in each of the server sites, based on a load of all load distribution target computers including the server computers of said each server computer group;determining, for said each server computer group in said each server site based on the entire load, number of provisioning computers, use of which as new load distribution target computers is to be started in said each server computer group in said each server site, or use of which as load distribution target computers is to be ended in said each server computer group in said each server site;requesting, by said each server site via the network, the provisioning site to start, in one of the server computer groups in said each server site, use of provisioning computers corresponding to the determined number, when the number of provisioning computers is determined, the use of which is to be started in the one server computer group in said each server site;adding provisioning computers, indicated by information, as load distribution target computers serving as targets of load distribution by the load distributing device, when the information is supplied from the provisioning site to said each server site, the information indicating that the provisioning computers, the use of which as the new load distribution target computers is to be started in the one server computer group in said each server site, are determined in accordance with a request to start the use issued from said each server site to the provisioning site, and then booted by one of the boot images corresponding to server computers belonging to the one server computer group;and excluding provisioning computers, indicated by information, from the load distribution target computers as targets of load distribution by the load distributing device, when the information is supplied from the provisioning site to said each server site, the information indicating that the provisioning computers, the use of which as the load distribution target computers is to be ended in the one server computer group in said each server site, are determined in accordance with a request to end the use issued from said each server site to the provisioning site.
- 19A load distributing method for use in a load distributing system, the load distributing system including a plurality of server sites, a provisioning site and a network, each of the server sites including a plurality of server computers which process requests from a plurality of client computers, and a load distributing device which distributes the requests from the client computers between a plurality of load distribution target computers including the server computers, the server computers being managed, classified into a plurality of server computer groups corresponding to different types of boot images, the different types of boot images including operating systems executed by the server computers, the provisioning site including a plurality of provisioning computers usable as load distribution target computers, the provisioning computers being started when the provisioning computers are used as the load distribution target computers, the network connecting the server sites to the provisioning site, the method comprising:determining whether start of use or end of use is requested, when number of provisioning computers is determined for each of the server computer groups in said each server site, based on an entire load of said each server computer group in said each server site, based on a load of all load distribution target computers including the server computers of said each server computer group, and when a request to start to use provisioning computers corresponding to the determined number is issued from said each server site to the provisioning site via the network, use of the corresponding provisioning computers as new load distribution target computers being to be started in said each server computer group in said each server site, or use of the corresponding provisioning computers as load distribution target computers being to be ended in said each server computer group in said each server site;determining the provisioning computers corresponding to the determined number, the use of which as load distribution target computers is to be started in said each server computer group in said each server site, when the start of use is requested;selecting, from the boot images, a boot image corresponding to said each server computer group of said each server site, which includes the corresponding provisioning computers, when the corresponding provisioning computers, use of which is to be started as the load distribution target computers in said each server computer group of said each server site, are determined, the boot image being used to boot the corresponding provisioning computers;starting the corresponding provisioning computers to boot the corresponding provisioning computers using the selected boot image, when the corresponding provisioning computers, the use of which is be started as the load distribution target computers in said each server computer group in said each server site, are determined, and when the boot image corresponding to said each server computer group is selected;determining the provisioning computers corresponding to the determined number, the use of which as the load distribution target computers is to be ended in said each server computer group in said each server site, when the end of use is requested;stopping the corresponding provisioning computers when the corresponding provisioning computers, the use of which is to be ended in said each server computer group in said each server site, are determined;and supplying, from the provisioning site to said each server site, information indicating a result of processing performed in reply to the request to start the use or to end the use.
Independent claims6
120 paragraphs in 12 sections, as filed
TECHNICAL FIELD
0001The present invention relates to a load distributing system for distributing the load of requests, received from a plurality of client computers, by distributing them between a plurality of computers. More particularly, it relates to a load distributing system and method suitable for dealing with a sudden spike state.
BACKGROUND ART
0002A load distributing system is known which distributes execution requests, issued from a large number of client computers, between a plurality of computers, to efficiently process them. This type of load distributing system is described in, for example, R. Buyya, “High Performance Cluster Computing: Architecture and Systems (Volume 1 & 2)”, 1999, Prentice Hall, or Tony Bourke, “Server Load distributing Technique”, O'Reilly Japan Co., Ltd., Dec. 13, 2001. A load distributing system, for example, a Web server load distributing system comprises a plurality of Web server computers and a load distributing device.
0003In the Web server load distributing system, a request (execution request) from a client computer is sent to the load distributing device via an external network. This request is issued by, for example, a Web browser running on the client computer. Upon receiving the request from the client computer, the load distributing device selects, from the Web server computers, one server computer that should process the request. The server selection is performed so that excessive load will be prevented from being applied to only a particular server computer. Accordingly, server selection is performed using, for example, (1) a round robin method, (2) a weighted round robin method, or (3) a method for selecting a server computer that has a minimum number of sessions at present. The round robin method is a method for equally selecting all server computers one by one in order. The weighted round method is a method based on the round robin method, but in this method, the frequency of selection of each server computer is changed in accordance with the capacity of each computer.
0004The load distributing device sends the received request to the selected server computer via an internal network. On the selected server computer, a Web server is running. Based on the received request, the server computer performs processing using the Web server. After that, the server computer supplies the load distributing device with a reply to the request via the internal network. The load distributing device, in turn, sends the reply to the client computer as the request sender via the external network.
0005Further, Tetsuo Kaneko and Yoshiya Mori, “Cluster Software”, Toshiba Review, vol. 54, No. 12 (1999), pp. 18-21 (hereinafter referred to as “the prior art document”) describe a computer system called a cluster system. In the cluster system, when a failure has occurred in a certain computer in operation, the service (business operation) executed immediately before the occurrence of the failure is taken over to another computer included in the system (fail-over is executed). For example, a computer in a standby state (hot standby state) is used as the fail-over computer.
0006In the above-described Web server load distributing system including Web servers, the number of Web servers used to process requests from client servers is generally determined based on, for example, the number of requests. Recently, however, the number of users of the Internet has becomes enormous. Accordingly, a much greater number of requests than that the Web-site managing operators expect are liable to concentrate on the-load distributing system. In this case, the following troubles due to a so-called “spike phenomenon” will often occur:
0007(A) An extremely long response time may be required for each request;
0008(B) Access to the Web servers may become impossible; and
0009(C) The Web servers may be down.
0010When the Web-site operators can estimate an increase in the number of requests (the number of hits) to a certain degree, they can deal with the spike phenomenon, for example, using additional Web servers. However, in most cases, it is impossible to estimate an increase in the number of hits, which makes it difficult to deal with the phenomenon.
DISCLOSURE OF INVENTION
0011It is an object of the invention to provide a load distributing system capable of easily dealing with a sudden spike phenomenon, and a load distributing method employed therein.
0012In accordance with an aspect of the invention, there is provided a load distributing system comprising a plurality of server computers, a load distributing device, a plurality of provisioning computers, a provisioning-computer management unit, a provisioning-computer start/stop unit and a boot-image selection unit. The server computers processes requests from a plurality of client computers. The server computers are managed, classified into a plurality of server computer groups corresponding to different types of boot images, the different types of boot images including operating systems executed by the server computers. The load distributing device is configured to distribute the requests from the client computers between a plurality of load distribution target computers including the server computers. The provisioning computers is usable as load distribution target computers. The provisioning computers is started when the provisioning computers are used as the load distribution target computers. The server configuration management unit is configured to determine, for each server computer group, the number of provisioning computers, the use of which as new load distribution target computers is to be started, or the use of which as load distribution target computers is to be ended, based on a load of all load distribution target computers including the server computers of said each server computer group. The provisioning-computer management unit is configured to manage states of use of the provisioning computers. The provisioning computer management unit determines provisioning computers corresponding to the number of provisioning computers determined by the server configuration management unit for said each server computer group, the use of the corresponding provisioning computers as the new load distribution target computers being to be started, or the use of the corresponding provisioning computers as the load distribution target computers being to be ended. The provisioning-computer start/stop unit is configured to start or stop the provisioning computers determined by the provisioning-computer management unit. The setting change unit is configured to add, as load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit, or to exclude, from load distribution target computers that are targets of load distribution by the load distributing device, the provisioning computers determined by the provisioning-computer management unit. The boot-image selection unit is configured to select, from the different types of boot images, a boot image corresponding to said each server computer group which includes the provisioning computers determined by the provisioning-computer management unit and started to be used as the load distribution target computers. The boot image is used to boot the provisioning computers determined by the provisioning-computer management unit.
BRIEF DESCRIPTION OF DRAWINGS
0013<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram illustrating the configuration of a load distributing system according to a first embodiment of the invention;
0014<figref idref="DRAWINGS">FIG. 2</figref> is a flowchart illustrating the operation procedure of the first embodiment;
0015<figref idref="DRAWINGS">FIG. 3</figref> is a block diagram illustrating the configuration of a load distributing system according to a second embodiment of the invention;
0016<figref idref="DRAWINGS">FIG. 4</figref> is a flowchart illustrating the operation procedure of the second embodiment;
0017<figref idref="DRAWINGS">FIG. 5</figref> is a view illustrating a data structure example of the table <b>151</b><i>a </i>appearing in <figref idref="DRAWINGS">FIG. 1</figref>;
0018<figref idref="DRAWINGS">FIG. 6</figref> is a view illustrating a data structure example of the table <b>251</b><i>a </i>appearing in <figref idref="DRAWINGS">FIG. 3</figref>;
0019<figref idref="DRAWINGS">FIG. 7</figref> is a block diagram illustrating the configuration of a load distributing system according to a third embodiment of the invention;
0020<figref idref="DRAWINGS">FIG. 8</figref> is a flowchart illustrating the operation procedure of the third embodiment;
0021<figref idref="DRAWINGS">FIG. 9</figref> is a block diagram illustrating the configuration of a load distributing system according to a fourth embodiment of the invention;
0022<figref idref="DRAWINGS">FIG. 10</figref> is a flowchart illustrating the operation procedure of the fourth embodiment;
0023<figref idref="DRAWINGS">FIG. 11</figref> is a view illustrating a data structure example of the table <b>351</b><i>a </i>appearing in <figref idref="DRAWINGS">FIG. 7</figref>;
0024<figref idref="DRAWINGS">FIG. 12</figref> is a view illustrating a data structure example of the table <b>451</b><i>a </i>appearing in <figref idref="DRAWINGS">FIG. 9</figref>;
0025<figref idref="DRAWINGS">FIG. 13</figref> is a view illustrating a data structure example of the table <b>470</b> appearing in <figref idref="DRAWINGS">FIG. 9</figref>;
0026<figref idref="DRAWINGS">FIG. 14</figref> is a view illustrating a state in which identifiers (P<b>1</b> and P<b>2</b>) for provisioning node computers <b>15</b>-<b>1</b> and <b>15</b>-<b>2</b> are additionally stored in the table <b>470</b> in the state of <figref idref="DRAWINGS">FIG. 13</figref> in relation to an identifier (D<b>1</b>) for a disk D<b>1</b>;
0027<figref idref="DRAWINGS">FIG. 15</figref> is a block diagram illustrating a modification of the fourth embodiment of the invention;
0028<figref idref="DRAWINGS">FIG. 16</figref> is a block diagram illustrating the configuration of a load distributing system according to a fifth embodiment of the invention;
0029<figref idref="DRAWINGS">FIG. 17</figref> is a flowchart illustrating the operation procedure of a Web server site in the fifth embodiment;
0030<figref idref="DRAWINGS">FIG. 18</figref> is a flowchart illustrating the operation procedure of a common provisioning node computer site in the fifth embodiment; and
0031<figref idref="DRAWINGS">FIG. 19</figref> is a view a data structure example of the record file <b>652</b><i>a </i>appearing in <figref idref="DRAWINGS">FIG. 16</figref>.
BEST MODE FOR CARRYING OUT THE INVENTION
0032Embodiments of the invention will be described with reference to the drawings.
FIRST EMBODIMENT
0033<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram illustrating the configuration of a load distributing system according to a first embodiment of the invention. The system of <figref idref="DRAWINGS">FIG. 1</figref> comprises a plurality (e.g., six) of Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> and a load distributing device <b>12</b>. The Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> and load distributing device <b>12</b> are connected to each other via a network (internal network) <b>13</b> incorporated in the system. Further, the load distributing device <b>12</b> is connected to a plurality of client computers (not shown) via a network (external network) <b>14</b> that is not incorporated in the system.
0034The Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> process requests from client computers. When a request is received from a client computer via the external network <b>14</b>, the load distributing device <b>12</b> selects one server computer from the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> to cause it to process the request. For selection, any one of the selection methods (1) to (3) described in the background art can be utilized. Further, the load distributing device <b>12</b> transmits the request from the client computer to the selected server computer. Namely, the load distributing device <b>12</b> distributes, to the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b>, requests supplied from a large number of client computers, to distribute the load therebetween.
0035The load distributing device <b>12</b> includes a load information acquisition unit <b>120</b>. The load information acquisition unit <b>120</b> acquires information (computer load information) indicating the loaded state of each computer as a target of load distributing by the load distributing device <b>12</b>. The number of sessions set by the load distributing device <b>12</b> between the device <b>12</b> and the load distribution target computer is used as the load information concerning a computer as a load distribution target, acquired by the device <b>12</b>. The load distribution target computer is any one of the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> and provisioning node computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> described below, which is booted as a load distribution target.
0036The provisioning node computers (hereinafter referred to as “the PN computers”) <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are auxiliary computers that are usually in the OFF state and not booted. The PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are placed as load distribution target candidates for eliminating a sudden “spike state”. However, any PN computer that is already used as a load distribution target is removed from the candidates. In this embodiment, the “spike state” is regarded as a state in which the load of all computers as load distribution targets exceeds a preset threshold value. The PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are connected to the internal network <b>13</b>.
0037The internal network <b>13</b> is also connected to a management server computer <b>15</b>. A management server <b>150</b> is running on the management server computer <b>15</b>. The management server <b>150</b> is realized when a CPU (not shown) in the management server computer <b>15</b> reads and executes a preset computer management program. The computer management program is provided by a recording medium, such as a CD-ROM, flexible disk or memory card. The computer management program provided by the recording medium is stored and used in, for example, a disk drive in the management server computer <b>15</b>. The computer management program may be sent to the management server computer <b>15</b> via the external network <b>14</b> and stored in the disk drive thereof.
0038The management server <b>150</b> includes various functional elements, such as a server configuration management unit <b>151</b>, provisioning node management unit (hereinafter referred to as “the PN management unit”) <b>152</b>, provisioning node start/stop unit (hereinafter referred to as “the PN start/stop unit”) <b>153</b>, and setting change unit <b>154</b>.
0039The server configuration management unit <b>151</b> has a function for managing a computer (server computer) serving as a Web server. The server configuration management unit <b>151</b> also has a function for determining the number of PN computers, the use of which should be started (i.e., which should be newly used as load distribution targets), or the use of which should be ended (i.e., which should be excluded from the load distribution targets). This determination is performed based on the load states of the computers set as load distribution targets by the load distributing device <b>12</b>. To realize this, the server configuration management unit <b>151</b> holds a table <b>151</b><i>a. </i>The table <b>151</b><i>a </i>stores threshold values (load threshold values), each of which is set for the load of all load distribution target computers employed, in relation to the numbers of PN computers (the numbers of to-be-used PN computers) to be used as load distribution targets and corresponding to the respective threshold values.
0040<figref idref="DRAWINGS">FIG. 5</figref> shows an example of the table <b>151</b><i>a. </i>In the example of <figref idref="DRAWINGS">FIG. 5</figref>, the table <b>151</b><i>a </i>stores three load threshold values N<sub>S1</sub>, N<sub>S2 </sub>and N<sub>S3 </sub>in relation to the respective numbers of to-be-used PN computers. The three load threshold values N<sub>S1</sub>, N<sub>S2 </sub>and N<sub>S3 </sub>correspond to first, second and third spike states, respectively. The table <b>151</b><i>a </i>is preset in the computer management program, and is loaded to the main memory (not shown) of the management server computer <b>15</b> when the computer <b>15</b> is booted.
0041The PN management unit <b>152</b> has a function for managing the states of use of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b>. Further, when the server configuration management unit <b>151</b> determines the number of PN computers, the use of which should be started or ended, the PN management unit <b>152</b> determines (selects) PN computers, the use of which should be started or ended, from the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b>.
0042The PN start/stop unit <b>153</b> has a function for starting or stopping the PN computers determined by the PN management unit <b>152</b>. The PN start/stop unit <b>153</b> performs the start/stop of a PN computer in the following manners. The PN start/stop unit <b>153</b> utilizes the “Wake On LAN” (trademark) technique to start a PN computer. To start a PN computer, the PN start/stop unit <b>153</b> sends, to the internal network <b>13</b>, a particular packet that designates the PN computer to start. To designate the PN computer, the particular packet includes a MAC address assigned to a LAN card (network card) mounted in the PN computer. LAN cards mounted in the respective PN computers operate as control circuits for connecting the computers to a network (in this case, the internal network <b>13</b>). Each LAN card is kept in a standby state to survey particular packets transmitted through the internal network <b>13</b>. To this end, a standby current is always supplied to each LAN card when the PN computers are in the OFF state. Each LAN card has a function for booting the corresponding PN computer when it receives a particular packet that designates the corresponding MAC address, namely, a particular packet addressed to it. Further, the PN start/stop unit <b>153</b> stops each PN computer in the following manner. The PN start/stop unit <b>153</b> supplies, to a PN computer to stop via the internal network <b>13</b>, a shutdown command that designates interruption of power as an option. As a result of the supply of the command, the PN start/stop unit <b>153</b> stops the PN computer. More specifically, in the case of, for example, the operating system UNIX (trademark), command “init” can be used as a shutdown command. The command “init” includes an option that designates power interruption. When the shutdown command that designates power interruption is executed, a power supply driver is called to interrupt the supply of power to the computer. To execute a shutdown command from a remote computer, it is sufficient if a remote shell (rss) command is used.
0043The setting change unit <b>154</b> has a function for controlling the load distributing device <b>12</b> so that the device <b>12</b> makes a PN computer, started or stopped by the PN start/stop unit <b>153</b>, be a load distribution target of the device <b>12</b>, or excludes the PN computer from the load distribution targets. In other words, the setting change unit <b>154</b> has a function for permitting the load distributing device <b>12</b> to supply a request to a PN computer, started or stopped by the PN start/stop unit <b>153</b>, or inhibiting the device <b>12</b> from supplying the request to the PN computer.
0044Referring then to the flowchart of <figref idref="DRAWINGS">FIG. 2</figref>, a description will be given of the operation of the load distributing system of <figref idref="DRAWINGS">FIG. 1</figref>. Firstly, the server configuration management unit <b>151</b> in the management server computer <b>15</b> acquires, from a load information acquisition unit <b>120</b> incorporated in the load distributing device <b>12</b>, load information indicating the load of each of the computers (load distribution target computers) that include Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>5</b> and serve as load distribution targets of the load distributing device <b>12</b> (step S<b>1</b>). Accordingly, if one or more of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are used as load distribution target computers, load information concerning the one or more PN computers is also acquired. In this embodiment, the number of sessions set by the load distributing device <b>12</b> between each client computer and each load distribution target computer is acquired as computer load information corresponding to each load distribution target computer. At step S<b>1</b>, the server configuration management unit <b>151</b> computes the load N<sub>S </sub>of all load distribution target computers from the computer load information of each load distribution target computer. In this embodiment, the entire load N<sub>S </sub>can be acquired by adding up the loads (the numbers of sessions) indicated by the computer load information of all load distribution target computers. Alternatively, weighting using weights corresponding to (e.g., in inverse proportion to) the processing capacities of the load distribution target computers may be made on the loads, and the addition result of such weighted loads be used as the entire load N<sub>S</sub>.
0045Subsequently, referring to the table <b>151</b><i>a, </i>the server configuration management unit <b>151</b> determines the number of to-be-used PN computers that corresponds to the present load N<sub>S </sub>(step S<b>2</b>). In the embodiment, the contents of the table <b>151</b><i>a </i>are set as shown in <figref idref="DRAWINGS">FIG. 5</figref>. In this case, the server configuration management unit <b>151</b> determines the number of to-be-used PN computers as follows:
0046If N<sub>S</sub><N<sub>S1</sub>, the number of to-be-used PN computers is zero;
0047If N<sub>S1</sub>≦N<sub>S</sub><N<sub>S2</sub>, the number of to-be-used PN computers is two;
0048If N<sub>S2</sub>≦N<sub>S</sub><N<sub>S3</sub>, the number of to-be-used PN computers is four; and
0049If N<sub>S</sub>≧N<sub>S3</sub>, the number of to-be-used PN computers is six.
0050Subsequently, the server configuration management unit <b>151</b> compares the determined number of to-be-used PN computers with the number of currently used PN computers (step S<b>3</b>). If they are equal to each other, the server configuration management unit <b>151</b> determines that it is not necessary to assign a new PN computer as a load distribution target computer (i.e., a computer that should be started to be used). In this case, the server configuration management unit <b>151</b> assumes a standby state for a predetermined period (step S<b>4</b>), and then iterates step S<b>1</b> and the later steps.
0051In contrast, if the number of to-be-used PN computers is greater (step S<b>3</b>), the server configuration management unit <b>151</b> determines that it is necessary to assign a new PN computer as a load distribution target computer. In this case, the server configuration management unit <b>151</b> requests the PN management unit <b>152</b> to start the use of a new PN computer. In response to this request, the PN management unit <b>152</b> determines whether the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> contain an unoccupied PN computer (step S<b>5</b>). If any unoccupied PN computer is not contained, i.e., if all the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are already used as load distribution target computers, this is reported from the PN management unit <b>152</b> to the server configuration management unit <b>151</b>. At this time, the server configuration management unit <b>151</b> assumes the standby state for the predetermined period (step S<b>4</b>), and then iterates step S<b>1</b> and the later steps.
0052In contrast, if an unoccupied PN computer is contained, i.e., if there is a PN computer that is not used (booted) at present, the PN management unit <b>152</b> performs processing for assigning the PN computer as a computer (load distribution target computer) that should be started to be used (step S<b>6</b>). This process is performed as below, based on whether the number N of unoccupied PN computers is larger or smaller than the difference Nd between the above numbers. Firstly, if N≧Nd, the PN management unit <b>152</b> selects, from the unoccupied PN computers, the same number of PN computers as the difference Nd, and assigns them as computers that should be started to be used. Further, if N<Nd, the server configuration management unit <b>151</b> selects all of the number N of unoccupied PN computers and assigns them as computers that should be started to be used, although they are insufficient in number. Information indicating the computer assignment is supplied from the PN management unit <b>152</b> to the server configuration management unit <b>151</b>, PN start/stop unit <b>153</b> and setting change unit <b>154</b>.
0053Upon receiving this, the PN start/stop unit <b>153</b> starts the PN computers assigned (determined) by the server configuration management unit <b>151</b> as computers that should be started to be used (step S<b>7</b>). At this time, the setting change unit <b>154</b> controls the load distributing device <b>12</b> to add the PN computers, started by the PN start/stop unit <b>153</b> (the start of use of the computers is determined by the PN management unit <b>152</b>), as load distribution target computers that serve as the load distribution targets of the load distributing device <b>12</b> (step S<b>8</b>). The order of steps S<b>7</b> and S<b>8</b> may be reversed. When the load distribution targets of the load distributing device <b>12</b> have been changed by the control of the setting change unit <b>154</b>, the server configuration management unit <b>151</b> assumes the standby state for the predetermined period (step S<b>4</b>), and then iterates step S<b>1</b> and the later steps.
0054If the number of to-be-used PN computers is smaller than that of currently used PN computers (step S<b>3</b>), the server configuration management unit <b>151</b> determines that it is necessary to end the use of the same number of PN computers as the difference Nd. In this case, the server configuration management unit <b>151</b> requests the PN management unit <b>152</b> to finish the use of the same number of PN computers as Nd. In response to this request, the PN management unit <b>152</b> determines, from the currently used PN computers, the same number of PN computers as Nd, the use of which should be ended (step S<b>9</b>). Information indicating the PN computers, the end of use of which is determined by the PN management unit <b>152</b>, is sent from the PN management unit <b>152</b> to the server configuration management unit <b>151</b>, PN start/stop unit <b>153</b> and setting change unit <b>154</b>.
0055At this time, the setting change unit <b>154</b> controls the load distributing device <b>12</b> so that the PN computers, the use of which is determined to be ended, will be excluded from the load distribution targets of the load distributing device <b>12</b> (step S<b>10</b>). The PN start/stop unit <b>153</b> stops the PN computers, the end of use of which is determined by the PN management unit <b>152</b> (step S<b>11</b>). The order of steps S<b>10</b> and S<b>11</b> may be reversed. When the same number of PN computers as Nd are stopped, the server configuration management unit <b>151</b> assumes the standby state for the predetermined period (step S<b>4</b>), and then iterates step S<b>1</b> and the later steps.
0056As is apparent from the above description, in the system of <figref idref="DRAWINGS">FIG. 1</figref> that employs the table <b>151</b><i>a </i>of <figref idref="DRAWINGS">FIG. 5</figref>, if the load N<sub>S </sub>is not less than the load threshold value N<sub>S1 </sub>(provided that N<sub>S</sub><N<sub>S2</sub>), two PN computers are used as load distribution target computers. In this state, if the load N<sub>S </sub>is increased to the load threshold value N<sub>S2 </sub>or more (provided that N<sub>S</sub><N<sub>S3</sub>), further two PN computers are added as load distribution target computers. In this case, four PN computers in total, i.e., all PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> in the system, are used. If in this state, the load N<sub>S </sub>is increased to the load threshold value N<sub>S2 </sub>or more, yet two PN computers must be added as load distribution target computers. At this time, however, all PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> in the system are already used, and no more unoccupied PN computers exist. Accordingly, there is no case where more than four PN computers are used.
0057Further, when the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are used, if the load N<sub>S </sub>is lower than the load threshold value N<sub>S2 </sub>(provided that N<sub>S</sub>≧N<sub>S1</sub>), two PN computers are excluded from the load distribution targets. In this case, the remaining two PN computers are used. In this state, if the load N<sub>S </sub>is lower than the load threshold value N<sub>S1</sub>, the remaining two PN computers are also excluded from the load distribution targets. As a result, no PN computers are used. It can be understood from this that the table <b>151</b><i>a </i>defines the conditions for the start/end of use of PN computers, which correspond to load.
0058As described above, in the load distributing system of the first embodiment of the invention, when a load causing a spike state has occurred, one or more PN computers (spare computers) are booted, and the load distributing device <b>12</b> performs load distributing additionally using the booted PN computers. In this state, if the load is reduced, the PN computers are excluded from the load distribution targets and stopped. As a result, a sudden spike state can be dealt with even if a large number of servers are not booted at all times. Namely, even if a much greater number of requests than that the managing operators of a system (which includes the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b>) expect are concentrated on the system, the troubles (A) to (C) recited in the section “Background Art”, which may occur due to a “spike phenomenon”, can be avoided.
0059The above embodiment employs a structure in which the management server <b>150</b> runs on the independent management server computer <b>15</b>. However, the management server <b>150</b> may be operated in any one of the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b>. In this case, it is advisable to employ a structure in which even if an abnormality occurs in the Web server computer with the management server <b>150</b> operating therein, the functions provided by the management server <b>150</b> is not interrupted. Specifically, it is sufficient if, at least, the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> provide such a cluster system as disclosed in the prior art document. When they provide a cluster system, even if an abnormality occurs in the Web server computer in which the management server <b>150</b> operates, the functions of the management server <b>150</b> (i.e., the functions of the server configuration management unit <b>151</b>, PN management unit <b>152</b>, PN start/stop unit <b>153</b>, and setting change unit <b>154</b>) can be taken over to another Web server computer. Further, the number of Web server computers and that of PN computers are not limited to the above-described ones. It is sufficient if at least two (i.e., a plurality of) Web server computers are employed, and at least one PN computer is employed. Furthermore, the load information acquisition unit <b>120</b> in the load distributing device <b>12</b> may acquire the load N<sub>S</sub>.
SECOND EMBODIMENT
0060<figref idref="DRAWINGS">FIG. 3</figref> is a block diagram illustrating the configuration of a load distributing system according to a second embodiment of the invention. In this figure, elements equivalent to those of <figref idref="DRAWINGS">FIG. 1</figref> are denoted by corresponding reference numerals. The system of <figref idref="DRAWINGS">FIG. 3</figref> differs from that of <figref idref="DRAWINGS">FIG. 1</figref> in that in the former, a load distributing device <b>22</b> corresponding to the load distributing device <b>12</b> in <figref idref="DRAWINGS">FIG. 1</figref> does not have a load information acquisition unit. Instead, Web server computers <b>21</b>-<b>1</b> to <b>21</b>-<b>6</b> corresponding to the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b> in <figref idref="DRAWINGS">FIG. 1</figref> include load information acquisition units F<b>1</b> to F<b>6</b>, respectively. The load information acquisition units F<b>1</b> to F<b>6</b> acquire only load information concerning the Web server computers <b>11</b>-<b>1</b> to <b>11</b>-<b>6</b>, respectively, which differs from the load information acquisition unit <b>120</b> in <figref idref="DRAWINGS">FIG. 1</figref>. Further, the computer load information items acquired by the load information acquisition units F<b>1</b> to F<b>6</b> do not indicate the number of sessions, but the rates of use of the CPUs included in the Web server computers <b>21</b>-<b>1</b> to <b>21</b>-<b>6</b>, respectively. If a single Web server computer has a plurality of CPUs, the value acquired by adding the rates of use of these CPUs is used as the load information (computer load) of the Web sever computer. The load is not limited to the rate of use of each CPU. It is sufficient if the load reflects processing of requests in the Web server computers. The rate of use of each memory, the rate of use of each input/output unit, and the like may be used as the load, individually or in combination with the rate of use of each CPU.
0061Further, in the system of <figref idref="DRAWINGS">FIG. 3</figref>, a management server computer <b>25</b> is used in place of the management server computer <b>15</b> in <figref idref="DRAWINGS">FIG. 1</figref>. On the management server computer <b>25</b>, a management server <b>250</b> runs. The management server <b>250</b> includes various functional elements, such as a server configuration management unit <b>251</b>, PN management unit <b>252</b>, PN start/stop unit <b>253</b> and setting change unit <b>254</b>. Unlike the server configuration management unit <b>151</b>, the server configuration management unit <b>251</b> acquires the entire load of all load distribution target computers, based on computer load information acquired by the load information acquisition unit of each load distribution target computer. The entire load is referred to as “N<sub>C</sub>”. Accordingly, assume in this embodiment that the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> as auxiliary load distribution target computers include respective load information acquisition units (not shown) similar to the load information acquisition units F<b>1</b> to F<b>6</b> of the Web server computers <b>21</b>-<b>1</b> to <b>21</b>-<b>6</b>.
0062The server configuration management unit <b>251</b> holds a table <b>251</b><i>a. </i>The table <b>251</b><i>a </i>stores load threshold values for the load of all load distribution target computers employed, in relation to the numbers of PN computers (the numbers of to-be-used PN computers) to be used as load distribution targets and corresponding to the respective threshold values. <figref idref="DRAWINGS">FIG. 6</figref> shows an example of the table <b>251</b><i>a. </i>In the example of <figref idref="DRAWINGS">FIG. 6</figref>, the table <b>251</b><i>a </i>stores three load threshold values N<sub>C1 </sub>N<sub>C2 </sub>and N<sub>C3 </sub>in relation to the respective numbers of to-be-used PN computers. The load threshold values N<sub>C1</sub>, N<sub>C2 </sub>and N<sub>C3 </sub>correspond to the load threshold values N<sub>S1</sub>, N<sub>S2 </sub>and N<sub>S3 </sub>stored in the table <b>151</b><i>a </i>of <figref idref="DRAWINGS">FIG. 5</figref>, respectively.
0063Referring to the flowchart of <figref idref="DRAWINGS">FIG. 4</figref>, a description will be given of the operation of the load distributing system of <figref idref="DRAWINGS">FIG. 3</figref>, and mainly given of the points different from those of the system shown in <figref idref="DRAWINGS">FIG. 1</figref>. In the load distributing system of <figref idref="DRAWINGS">FIG. 3</figref>, steps S<b>21</b> to S<b>31</b> corresponding to steps S<b>1</b> to S<b>11</b> in the flowchart of <figref idref="DRAWINGS">FIG. 2</figref> are executed. This system mainly differs from the system of <figref idref="DRAWINGS">FIG. 1</figref> in the way of acquiring a load at step S<b>21</b> (which corresponds to step S<b>1</b> of <figref idref="DRAWINGS">FIG. 2</figref>). Namely, at step S<b>21</b>, the server configuration management unit <b>251</b> acquires load information concerning each Web server computer <b>21</b>-<b>1</b>, . . . , or <b>21</b>-<b>6</b> (load distribution target computer), which currently serves as a load distribution target, from the load information acquisition unit F<b>1</b>, . . . , or F<b>6</b> incorporated in each Web server computer. From the acquired the load information (computer load information) concerning each load distribution target computer, the server configuration management unit <b>251</b> acquires the entire load N<sub>C</sub>. In this embodiment, the addition result of the loads (the rates of use of the CPUs) of all load distribution target computers, indicated by the load information, is used as the entire load N<sub>C</sub>. Alternatively, weighting using weights corresponding to (e.g., in proportion to) the processing capacities (e.g., the processing rates of the CPUs) of the load distribution target computers may be made on the loads, and the addition result of such weighted loads be used as the entire load N<sub>C</sub>. The operations of the server configuration management unit <b>251</b> performed after the acquisition of the load N<sub>C </sub>are similar to those of the first embodiment except that the load is changed from N<sub>S </sub>to N<sub>C</sub>, and the load threshold values are changed from N<sub>S1</sub>, N<sub>S2 </sub>and N<sub>S3 </sub>to N<sub>C1</sub>, N<sub>C2 </sub>and N<sub>C3</sub>, respectively.
THIRD EMBODIMENT
0064<figref idref="DRAWINGS">FIG. 7</figref> is a block diagram illustrating the configuration of a load distributing system according to a third embodiment of the invention. In this figure, elements equivalent to those of <figref idref="DRAWINGS">FIG. 1</figref> or <figref idref="DRAWINGS">FIG. 3</figref> are denoted by corresponding reference numerals. The load distributing device <b>12</b> shown in <figref idref="DRAWINGS">FIG. 1</figref> is used as the load distributing device of the system of <figref idref="DRAWINGS">FIG. 7</figref>, and Web server computers <b>21</b>-<b>1</b> to <b>21</b>-<b>6</b> shown in <figref idref="DRAWINGS">FIG. 3</figref> are used as the Web server computers of the system of <figref idref="DRAWINGS">FIG. 7</figref>. The system of <figref idref="DRAWINGS">FIG. 7</figref> is characterized in that it uses both the load information acquisition unit <b>120</b> of the load distributing device <b>12</b>, and the load information acquisition units of all load distribution target computers, which include the load information acquisition units F<b>1</b>, . . . , and F<b>6</b> of the Web server computers <b>21</b>-<b>1</b>, . . . , and <b>21</b>-<b>6</b>. Namely, to determine the number of to-be-used PN computers, the system of <figref idref="DRAWINGS">FIG. 7</figref> utilizes both load information (which indicates the number of sessions) concerning each load distribution target computer, acquired from the load information acquisition unit <b>120</b>, and load information (which indicates the rate of use of the CPU) acquired from the load information acquisition unit of each load distribution target computer.
0065Accordingly, in the system of <figref idref="DRAWINGS">FIG. 7</figref>, a management server computer <b>35</b> is used instead of the management server computer <b>15</b> of <figref idref="DRAWINGS">FIG. 1</figref> or the management server computer <b>25</b> of <figref idref="DRAWINGS">FIG. 3</figref>. On the management server computer <b>35</b>, a management server <b>350</b> runs. The management server <b>350</b> includes various functional elements, such as a server configuration management unit <b>351</b>, PN management unit <b>152</b>, PN start/stop unit <b>153</b>, and setting change unit <b>154</b>. The server configuration management unit <b>351</b> has functions corresponding to the functions of the server configuration management unit <b>151</b> of <figref idref="DRAWINGS">FIG. 1</figref> and server configuration management unit <b>251</b> of <figref idref="DRAWINGS">FIG. 3</figref>. Namely, the server configuration management unit <b>351</b> acquires the load N<sub>S</sub>, based on the computer load information acquired by the load information acquisition unit <b>120</b> of the load distributing device <b>12</b>. The server configuration management unit <b>351</b> also acquires the load N<sub>C</sub>, based on the computer load information acquired by the load information acquisition unit of each load distribution target computer.
0066The server configuration management unit <b>351</b> holds a table <b>351</b><i>a. </i><figref idref="DRAWINGS">FIG. 11</figref> shows an example of the table <b>351</b><i>a. </i>The table <b>351</b><i>a </i>is characterized in that it stores the number of to-be-used PN computers in relation to both load threshold values (in this embodiment, N<sub>S1</sub>, N<sub>S2 </sub>and N<sub>S3</sub>) corresponding to the load N<sub>S</sub>, and load threshold values (in this embodiment, N<sub>C1</sub>, N<sub>C2 </sub>and N<sub>C3</sub>) corresponding to the load N<sub>C</sub>.
0067Referring to the flowchart of <figref idref="DRAWINGS">FIG. 8</figref>, a description will be given of the operation of the load distributing system of <figref idref="DRAWINGS">FIG. 7</figref>, and mainly given of the points different from those of the system shown in <figref idref="DRAWINGS">FIG. 1</figref>. In the load distributing system of <figref idref="DRAWINGS">FIG. 7</figref>, step S<b>43</b> corresponding to step S<b>2</b> in the flowchart of <figref idref="DRAWINGS">FIG. 2</figref>, and steps S<b>44</b> to S<b>52</b> corresponding to steps S<b>3</b> to S<b>11</b> in the flowchart of <figref idref="DRAWINGS">FIG. 2</figref> are executed.
0068Specifically, in the load distributing system of <figref idref="DRAWINGS">FIG. 7</figref>, the server configuration management unit <b>351</b> acquires the entire load N<sub>S </sub>of all load distribution target computers, based on the load information (which indicates the number of sessions) concerning each load distribution target computer, acquired by the load information acquisition unit <b>120</b> of the load distributing device <b>12</b> (step S<b>41</b>). The server configuration management unit <b>351</b> also acquires the entire load N<sub>C </sub>of all load distribution target computers, based on the load information (which indicates the rate of use of the CPU) acquired from the load information acquisition unit of each load distribution target computer (step S<b>42</b>).
0069After acquiring the loads N<sub>S </sub>and N<sub>C</sub>, the server configuration management unit <b>351</b> proceeds to step S<b>43</b>. At step S<b>43</b>, the server configuration management unit <b>351</b> refers to the table <b>351</b><i>a </i>to determine the number of to-be-used PN computers corresponding to the present load N<sub>S</sub>. Similarly, the server configuration management unit <b>351</b> also determines the number of to-be-used PN computers corresponding to the present load N<sub>C</sub>, based on the contents of the table <b>351</b><i>a. </i>Subsequently, the server configuration management unit <b>351</b> compares the numbers of to-be-used PN computers corresponding to the loads N<sub>S </sub>and N<sub>C</sub>, and selects the larger one of the numbers as the number of PN computers to be actually used. The following operations are similar to those of the first embodiment.
0070As described above, in this embodiment, based on different types of loads N<sub>S </sub>and N<sub>C</sub>, the numbers n<b>1</b> and n<b>2</b> of PN computers necessary to suppress the spike state indicated by the loads N<sub>S </sub>and N<sub>C </sub>are computed individually. The larger one of the numbers n<b>1</b> and n<b>2</b> is selected as the number of PN computers to be actually used. As a result, the spike state can be more effectively overcome than in the first and second embodiments in which the number of PN computers to be used is determined only from one of the loads N<sub>S </sub>and N<sub>C</sub>.
FOURTH EMBODIMENT
0071<figref idref="DRAWINGS">FIG. 9</figref> is a block diagram illustrating the configuration of a load distributing system according to a fourth embodiment of the invention. In this figure, elements equivalent to those of <figref idref="DRAWINGS">FIG. 7</figref> are denoted by corresponding reference numerals. Firstly, a description will be given of different points between the systems of <figref idref="DRAWINGS">FIGS. 7 and 9</figref>. In the system of <figref idref="DRAWINGS">FIG. 7</figref>, it is assumed, although not mentioned, that the Web server computers (<b>21</b>-<b>1</b> to <b>21</b>-<b>6</b>) execute the same type of boot image. The same can be said of the first and second embodiments. The boot image at least includes an operating system (OS). The boot image may include an application program operable under the OS. Thus, if the same boot image including the OS is executed by each Web server computer, it is possible to make a PN computer, used when a spike state occurs, correspond to the boot image for booting (starting) the computer.
0072In contrast, in the system of <figref idref="DRAWINGS">FIG. 9</figref>, different boot images are executed in different Web server computers. In this case, the Web server computers are managed, classified into groups corresponding to boot images executed therein. Further, the load used to determine the number of PN computers to be used is measured in units of groups. Depending upon in which group a load that causes a spike state occurs, the type of boot image for booting the PN computers used to suppress the state is determined. Accordingly, boot images cannot be made to correspond to the PN computers beforehand. However, if PN computers are prepared in units of groups, boot images can be made to correspond to the computers beforehand. In this case, a large number of PN computers must be prepared, which is not practical. For instance, if the PN computers are classified into three groups corresponding to three types of boot images employed, and each group includes four PN computers, 12 (=3×4) PN computers are required in total.
0073In light of the above, the system of <figref idref="DRAWINGS">FIG. 9</figref> employs the following structure, which enables the PN computers to be booted by any boot image. The system of <figref idref="DRAWINGS">FIG. 9</figref> employs three boot images #<b>1</b>, #<b>2</b> and #<b>3</b>. Accordingly, the Web server computers are managed, classified into three Web server computer groups <b>40</b>-<b>1</b>(#<b>1</b>) to <b>40</b>-<b>3</b>(#<b>3</b>) corresponding to the boot images #<b>1</b> to #<b>3</b>, respectively. The Web server computer group <b>40</b>-<b>1</b>(#<b>1</b>) includes p Web server computers <b>41</b>-<b>11</b> to <b>41</b>-<b>1</b><i>p </i>booted by the boot image #<b>1</b>. The Web server computer group <b>40</b>-<b>2</b>(#<b>2</b>) includes q Web server computers <b>41</b>-<b>21</b> to <b>41</b>-<b>2</b><i>q </i>booted by the boot image #<b>2</b>. The Web server computer group <b>40</b>-<b>3</b>(#<b>3</b>) includes r Web server computers <b>41</b>-<b>31</b> to <b>41</b>-<b>3</b><i>r </i>booted by the boot image #<b>3</b>.
0074Further, the system of <figref idref="DRAWINGS">FIG. 9</figref> employs a management server computer <b>45</b> corresponding to the management server computer <b>35</b> in <figref idref="DRAWINGS">FIG. 7</figref>. A management server <b>450</b> runs on the management server computer <b>45</b>. The management server <b>450</b> includes various functional elements, such as a server configuration management unit <b>451</b>, PN management unit <b>152</b>, PN start/stop unit <b>153</b>, setting change unit <b>154</b> and boot-image selection unit <b>455</b>. The server configuration management unit <b>451</b> has a function for acquiring the loads N<sub>S </sub>and N<sub>C </sub>in units of Web server computer groups #i (i=1, 2, 3), and determining the number of to-be-used PN computers in units of groups #i, based on the loads N<sub>S </sub>and N<sub>C</sub>.
0075The server configuration management unit <b>451</b> holds such a table <b>451</b><i>a </i>as shown in <figref idref="DRAWINGS">FIG. 12</figref>. The table <b>451</b><i>a </i>is characterized in that it stores the number of to-be-used PN computers in units of the Web server computer groups #<b>1</b> to #<b>3</b> in relation to both load threshold values (in this embodiment, N<sub>S11</sub>, N<sub>S12 </sub>and N<sub>S13 </sub>to N<sub>S31</sub>, N<sub>S32 </sub>and N<sub>S33</sub>) corresponding to the load N<sub>S</sub>, and load threshold values (in this embodiment, N<sub>C11</sub>, N<sub>C12 </sub>and N<sub>C13 </sub>to N<sub>C31</sub>, N<sub>C32 </sub>and N<sub>C33</sub>) corresponding to the load N<sub>C</sub>.
0076When a load causing a spike state occurs in a Web server computer group <b>40</b>-<i>i</i>(#<i>i</i>), and the PN management unit <b>152</b> determines one or more PN computers (hereinafter, it is assumed that a plurality of PN computers are determined), the boot-image selection unit <b>455</b> has a function for setting a boot image #i, unique to the group <b>40</b>-<i>i</i>(#<i>i</i>), for the determined PN computers. The boot image #i is used in the Web server computers included in the group <b>40</b>-<i>i</i>(#<i>i</i>). The setting of the boot image #i for the PN computers by the boot-image selection unit <b>455</b> means to make the PN computers correspond to a disk (disk drive) storing the boot image #i, using a table <b>470</b> described later. Namely, the boot-image selection unit <b>455</b> has a function for selecting the disk that stores the boot image #i used to boot the PN computers.
0077When a high load is applied to the Web server computer group <b>40</b>-<b>1</b>(#l), a disk (disk D<b>1</b> described later) storing the boot image #<b>1</b> that is used in the Web server computers <b>41</b>-<b>11</b> to <b>41</b>-<b>1</b><i>p </i>belonging to the group is made by the boot-image selection unit <b>455</b> to correspond to the PN computers newly incorporated in the group. Similarly, when a high load is applied to the Web server computer group <b>40</b>-<b>2</b>(#<b>2</b>), a disk (disk D<b>2</b> described later) storing the boot image #<b>2</b> that is used in the Web server computers <b>41</b>-<b>21</b> to <b>41</b>-<b>2</b><i>q </i>belonging to the group is made to correspond to the PN computers newly incorporated in the group. Further, when a high load is applied to the Web server computer group <b>40</b>-<b>3</b>(#<b>3</b>), a disk (disk D<b>3</b> described later) storing the boot image #<b>3</b> that is used in the Web server computers <b>41</b>-<b>31</b> to <b>41</b>-<b>3</b><i>r </i>belonging to the group is made to correspond to the PN computers newly incorporated in the group.
0078In this embodiment, the Web sever computers <b>41</b>-<b>11</b> to <b>41</b>-<b>1</b><i>p, </i>Web sever computers <b>41</b>-<b>21</b> to <b>41</b>-<b>2</b><i>q, </i>Web sever computers <b>41</b>-<b>31</b> to <b>41</b>-<b>3</b><i>r, </i>management server computer <b>45</b> and PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are connected to a storage area network (hereinafter referred to as “the SAN”) <b>46</b>. The SAN <b>46</b> is also connected to a storage device <b>47</b>. The storage device <b>47</b> includes disks (disk drives) D<b>1</b> to D<b>3</b>. Namely, each of the above-described computers and the disks D<b>1</b> to D<b>3</b> in the storage device <b>47</b> are connected to the SAN <b>46</b>. The disks D<b>1</b> to D<b>3</b> pre-store the boot images #<b>1</b> to #<b>3</b> used in the Web server computers of the Web server computer groups <b>40</b>-<b>1</b> to <b>40</b>-<b>3</b>, respectively.
0079The storage device <b>47</b> also includes a database that holds the table <b>470</b>. The table <b>470</b> stores information in which the disks D<b>1</b> to D<b>3</b> in the storage device <b>47</b> are related to computers that use the disks D<b>1</b> to D<b>3</b> as boot disks. A computer that uses a disk Di (i=1, 2, 3) as a boot disk means a boot computer that is booted (started) by the boot image #i stored in the disk Di.
0080<figref idref="DRAWINGS">FIG. 13</figref> shows an example of the table <b>470</b>. In the example of <figref idref="DRAWINGS">FIG. 13</figref>, the table <b>470</b> stores information (e.g., disk identifiers) in relation to information (e.g., computer identifiers). The former information indicates the disks (boot disks) D<b>1</b> to D<b>3</b> storing the boot images #<b>1</b> to #<b>3</b>. The latter information indicates the computers booted by the boot images #<b>1</b> to #<b>3</b> stored in the disks D<b>1</b> to D<b>3</b>, namely, the computers using the disks D<b>1</b> to D<b>3</b> as boot disks. In this embodiment, assume that the identifiers of the Web sever computers <b>41</b>-<b>11</b> to <b>41</b>-<b>1</b><i>p </i>are WS<b>11</b> to WS<b>1</b><i>p, </i>those of the Web sever computers <b>41</b>-<b>21</b> to <b>41</b>-<b>2</b><i>q </i>are WE<b>21</b> to WS<b>2</b><i>q, </i>and those of the Web sever computers <b>41</b>-<b>31</b> to <b>41</b>-<b>3</b><i>r </i>are WS<b>31</b> to WS<b>3</b><i>r. </i>Further, assume that the identifiers of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are P<b>1</b> to P<b>4</b>.
0081The system of <figref idref="DRAWINGS">FIG. 9</figref> employs the following procedure to boot the PN computer <b>15</b>-<i>j </i>(j is one of 1 to 4) by the boot image #i. Firstly, the boot-image selection unit <b>455</b> searches the table <b>470</b>, held in the database in the storage device <b>47</b>, for the identifier of the disk Di that stores the boot image #i. Subsequently, the boot-image selection unit <b>455</b> operates the table <b>470</b> to additionally set the identifier (Pj) of the PN computer <b>15</b>-<i>j </i>in relation to the identifier (Di) of the disk Di. By the table operation of the boot-image selection unit <b>455</b>, the disk Di is logically connected as the boot disk of the PN computer <b>15</b>-<i>j. </i>This means that the disk Di storing the boot image #<b>1</b> used to boot the PN computer <b>15</b>-<i>j </i>is selected.
0082In this case, when the PN computer <b>15</b>-<i>j </i>is started by the PN start/stop unit <b>153</b>, it searches, via the SAN <b>46</b>, the table <b>470</b> stored in the storage device <b>47</b>, thereby detecting its computer identifier (Pj). From the identifier (Di) of the disk related to the computer identifier (Pj) detected in the table <b>470</b>, the PN computer <b>15</b>-<i>j </i>specifies the disk Di that stores the boot image (in this case, the boot image #<b>1</b>) used to boot the computer itself. The PN computer <b>15</b>-<i>j </i>reads the boot image #<b>1</b> from the specified disk Dj (i.e., the disk Dj related to the computer itself), and is booted by the boot image #<b>1</b>.
0083If in the table <b>470</b>, the disk D<b>1</b> is newly related to two PN computers <b>15</b>-<b>1</b> and <b>15</b>-<b>2</b> as shown in <figref idref="DRAWINGS">FIG. 14</figref>, the computers <b>15</b>-<b>1</b> and <b>15</b>-<b>2</b> use the disk D<b>1</b> as a common boot disk. In this case, the PN computers <b>15</b>-<b>1</b> and <b>15</b>-<b>2</b> are booted by the boot image #<b>1</b> stored in the disk D<b>1</b>.
0084Referring now to the flowchart of <figref idref="DRAWINGS">FIG. 10</figref>, a description will be given of the operation of the load distributing system of <figref idref="DRAWINGS">FIG. 9</figref>, and mainly given of the points different from those of the system shown in <figref idref="DRAWINGS">FIG. 7</figref>. Firstly, the server configuration management unit <b>451</b> sets, to an initial value of 1, a variable i for designating a Web server computer group (step S<b>61</b>). Subsequently, the server configuration management unit <b>451</b> acquires, from the load information acquisition unit <b>120</b> of the load distributing device <b>12</b>, load information (computer load information) concerning computers (load distribution target computers) that currently serve as targets of load distribution and include Web server computers belonging to the Web server group <b>40</b>-<i>i</i>(#<b>1</b>), thereby acquiring the entire load N<sub>S </sub>of the group <b>40</b>-<i>i</i>(#i) (step S<b>62</b>). Further, the server configuration management unit <b>451</b> acquires load information concerning load distribution target computers from the load information acquisition units of the load distribution target computers that include the load information acquisition units of Web server computers belonging to the Web server group <b>40</b>-<i>i</i>(#<b>1</b>), thereby acquiring the entire load N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i) (step S<b>63</b>). Steps S<b>62</b> and S<b>63</b> differ from steps S<b>41</b> and S<b>42</b> of <figref idref="DRAWINGS">FIG. 8</figref> in that in the former steps, the loads N<sub>S </sub>and N<sub>C </sub>of the entire group #i designated by variable i are acquired, whereas in the latter steps, the loads N<sub>S </sub>and N<sub>C </sub>of the entire system are acquired.
0085After acquiring the entire loads N<sub>S </sub>and N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i), the server configuration management unit <b>451</b> proceeds to step S<b>64</b>. At step S<b>64</b>, the server configuration management unit <b>451</b> refers to the entries of the group <b>40</b>-<i>i</i>(#i) in the table <b>451</b><i>a </i>to determine the number n<b>1</b> of to-be-used PN computers corresponding to the present load N<sub>S </sub>of the group <b>40</b>-<i>i</i>(#i). Similarly, the server configuration management unit <b>451</b> determines the number n<b>2</b> of to-be-used PN computers corresponding to the present load N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i), based on the entries of the group <b>40</b>-<i>i</i>(#i) in the table <b>451</b><i>a. </i>Subsequently, the server configuration management unit <b>451</b> compares the numbers n<b>1</b> and n<b>2</b> of to-be-used PN computers corresponding to the loads N<sub>S </sub>and N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i), and selects the larger one of the numbers as the number of to-be-used PN computers to be actually used.
0086The operations performed after step S<b>64</b> are substantially similar to those performed after step S<b>43</b> in <figref idref="DRAWINGS">FIG. 8</figref>. However, this embodiment differs in the following operations. Assume here that a load causing a spike state occurs in the Web server computer group <b>40</b>-<i>i</i>(#i). In this case, to reduce the load, the PN management unit <b>152</b> assigns, to the group <b>40</b>-<i>i</i>(#i), at least one PN computer that should be started to be used (step S<b>69</b>). At this time, in the fourth embodiment, the PN management unit <b>152</b> transfers control to the boot-image selection unit <b>455</b>. The boot-image selection unit <b>455</b>, in turn, makes the PN computer, assigned to the group <b>40</b>-<i>i</i>(#i), correspond to the disk Di that stores the boot image #i unique to the group <b>40</b>-<i>i</i>(#i). In other words, the boot-image selection unit <b>455</b> selects the boot image #i (the disk Di storing the boot image #i) used to boot the PN computer assigned to the group <b>40</b>-<i>i</i>(#i) (step S<b>70</b>).
0087After the boot-image selection unit <b>455</b> selects the boot image #i used to boot the PN computer that should be started to be used, the PN start/stop unit <b>153</b> operates. The PN start/stop unit <b>153</b> starts the one of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> that is assigned by the PN management unit <b>152</b> (step S<b>71</b>). By the table operation of the boot-image selection unit <b>455</b>, the started PN computer is made to correspond to the disk Di storing the boot image #i used to boot the computer. Namely, the boot image #i used to boot the started PN computer is selected by the boot-image selection unit <b>455</b>. The started PN computer reads the selected boot image #i from the disk Di to execute boot processing.
0088When the PN computer is started by the PN start/stop unit <b>153</b>, the setting change unit <b>154</b> controls the load distributing device <b>12</b> so that the started PN computer will belong to the Web server computer group <b>40</b>-<i>i</i>(#i), and will become a load distribution target computer, along with the other computers in the group <b>40</b>-<i>i</i>(#i) (step S<b>72</b>). The order of steps S<b>71</b> and S<b>72</b> may be reversed.
0089When target change of load distributing by the load distributing device <b>12</b> is made by the control of the setting change unit <b>154</b>, the server configuration management unit <b>451</b> is kept in a standby state for a preset time (step S<b>66</b>). Then, the unit <b>451</b> switches the target of processing from one Web server computer group to another (step S<b>67</b>). In the embodiment that employs three Web server computer groups #<b>1</b> to #<b>3</b>, if the group #<b>1</b> is the present group, it is switched to the group #<b>2</b>. If the group #<b>2</b> is the present group, it is switched to the group #<b>3</b>. If the group #<b>3</b> is the present group, it is switched to the group #<b>1</b>. Step S<b>62</b> and the later steps are again executed on the Web server computer group acquired by switching.
0090As described above, in the fourth embodiment, the Web server computers in the system are classified into the Web server computer groups <b>40</b>-<b>1</b>(#<b>1</b>) to <b>40</b>-<b>3</b>(#<b>3</b>), depending upon the types of boot images executed by the Web server computers in the system. When a load causing a spike state occurs in any group <b>40</b>-<i>i</i>(#i) included in the groups <b>40</b>-<b>1</b>(#<b>1</b>) to <b>40</b>-<b>3</b>(#<b>3</b>), a PN computer is selected from the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> and made to correspond to the boot image #i (the disk Di storing the boot image #i) unique to the group <b>40</b>-<i>i</i>(#i). As a result, the selected PN computer can be started as a load distribution target computer belonging to the group <b>40</b>-<i>i</i>(#i). Thus, the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> can be effectively utilized.
MODIFICATION OF THE FOURTH EMBODIMENT
0091In the system of <figref idref="DRAWINGS">FIG. 9</figref>, the PN computer <b>15</b>-<i>j </i>is booted by the boot image #i stored in the disk Di in the storage device <b>47</b>. However, the disk Di is not always necessary to boot the PN computer <b>15</b>-<i>j </i>using the boot image #i. Referring now to the block diagram of <figref idref="DRAWINGS">FIG. 15</figref>, a description will be given of a modification of the fourth embodiment, in which the PN computer <b>15</b>-<i>j </i>can be booted by the boot image #i without using the disk Di in the storage device <b>47</b>. In <figref idref="DRAWINGS">FIG. 15</figref>, elements equivalent to those of <figref idref="DRAWINGS">FIG. 9</figref> are denoted by corresponding reference numerals.
0092In <figref idref="DRAWINGS">FIG. 15</figref>, the Web server computer <b>41</b>-<b>11</b> and PN computer <b>15</b>-<b>1</b> are connected to an input/output bus (external input/output bus) <b>51</b>. The Web server computer <b>41</b>-<b>11</b> belongs to the Web server computer group <b>40</b>-<b>1</b> (see <figref idref="DRAWINGS">FIG. 9</figref>). Although not shown in <figref idref="DRAWINGS">FIG. 15</figref>, the input/output bus <b>51</b> is also connected to the server computers other than the Web server computer <b>41</b>-<b>11</b>, which belong to the Web server computer group <b>40</b>-<b>1</b>, the server computers belonging to the other Web server computer groups <b>40</b>-<b>2</b> and <b>40</b>-<b>3</b>, and the PN computers other than the PN computer <b>15</b>-<b>1</b>.
0093The computers <b>41</b>-<b>11</b> and <b>15</b>-<b>1</b> include CPUs <b>52</b><i>a </i>and <b>52</b><i>b, </i>local disks (local disk drives) <b>53</b><i>a </i>and <b>53</b><i>b, </i>and input/output buses (internal input/output buses) <b>54</b><i>a </i>and <b>54</b><i>b, </i>respectively. The local disk <b>53</b><i>a </i>of the computer <b>41</b>-<b>11</b> stores the boot image #<b>1</b> unique to the Web server computer group <b>40</b>-<b>1</b>(#<b>1</b>) and used to boot the computer <b>41</b>-<b>11</b>. The CPU <b>52</b><i>a </i>and local disk <b>53</b><i>a </i>are connected to each other by the input/output bus <b>54</b><i>a, </i>and the CPU <b>52</b><i>b </i>and local disk <b>53</b><i>b </i>are connected to each other by the input/output bus <b>54</b><i>b. </i>Further, the local disks <b>53</b><i>a </i>and <b>53</b><i>b </i>are connected to the input/output bus <b>51</b>, and the input/output buses <b>54</b><i>a </i>and <b>54</b><i>b </i>are also connected to the input/output bus <b>51</b>.
0094Assume here that the PN computer <b>15</b>-<b>1</b> in <figref idref="DRAWINGS">FIG. 15</figref> is assigned to the Web server computer group <b>40</b>-<b>1</b> in <figref idref="DRAWINGS">FIG. 9</figref>. In this case, the boot-image selection unit <b>455</b> shown in <figref idref="DRAWINGS">FIG. 9</figref> requires one of the Web server computers <b>41</b>-<b>11</b> to <b>41</b>-<b>1</b><i>p </i>belonging to the group <b>40</b>-<b>1</b>, e.g. the Web server computer <b>41</b>-<b>11</b>, to copy the boot image to the PN computer <b>15</b>-<b>1</b>. This means that the boot image #<b>1</b> stored in the local disk <b>53</b><i>a </i>of the Web server computer <b>41</b>-<b>11</b> belonging to the group <b>40</b>-<b>1</b> is selected as the boot image to boot the PN computer <b>15</b>-<b>1</b>. At this time, the PN computer <b>15</b>-<b>1</b> is not yet started.
0095In response to the request to copy issued from the boot-image selection unit <b>455</b>, the CPU <b>52</b><i>a </i>of the Web server computer <b>41</b>-<b>11</b> reads the boot image #<b>1</b> from the local disk <b>53</b><i>a </i>of the computer <b>41</b>-<b>11</b>, and copies it to the local disk <b>53</b><i>b </i>of the PN computer <b>15</b>-<b>1</b> via the input/output bus <b>51</b>. By the copying operation of the CPU <b>52</b><i>a </i>of the Web server computer <b>41</b>-<b>11</b>, the boot image #<b>1</b> can be copied to the local disk <b>53</b><i>b </i>of the PN computer <b>15</b>-<b>1</b>, even if the PN computer <b>15</b>-<b>1</b> is not started. Many cluster computers and blade server computers have such a function as this.
0096After the boot image #<b>1</b> is copied, the PN start/stop unit <b>153</b> shown in <figref idref="DRAWINGS">FIG. 9</figref> starts the PN computer <b>15</b>-<b>1</b>. The PN computer <b>15</b>-<b>1</b>, in turn, boots itself, using the boot image #<b>1</b> copied in the local disk <b>53</b><i>b </i>thereof. More specifically, the CPU <b>52</b><i>b </i>of the PN computer <b>15</b>-<b>1</b> reads the boot image #<b>1</b> from the local disk <b>53</b><i>b </i>via the input/output bus <b>54</b><i>b, </i>and boots it. Note that in <figref idref="DRAWINGS">FIG. 15</figref>, the input/output buses <b>54</b><i>a </i>and <b>54</b><i>b </i>are provided inside the computers <b>41</b>-<b>11</b> and <b>15</b>-<b>1</b>, respectively, and the input/output bus <b>51</b> is provided outside the computers <b>41</b>-<b>11</b> and <b>15</b>-<b>1</b>. However, this bus configuration is just an example. In short, it is sufficient if the computer <b>41</b>-<b>11</b> having the local disk <b>53</b><i>a </i>with a boot image stored therein can directly or indirectly copy the boot image (data) to the local disk <b>53</b><i>b </i>of the computer <b>15</b>-<b>1</b> that is not started.
FIFTH EMBODIMENT
0097<figref idref="DRAWINGS">FIG. 16</figref> is a block diagram illustrating the configuration of a load distributing system according to a fifth embodiment of the invention. In <figref idref="DRAWINGS">FIG. 16</figref>, elements equivalent to those of <figref idref="DRAWINGS">FIG. 9</figref> are denoted by corresponding reference numerals. The system of <figref idref="DRAWINGS">FIG. 16</figref> is characterized by comprising Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> managed by a plurality (e.g., four) of different management bodies (for example, different companies), and a common provisioning node computer site (hereinafter referred to as “the common PN computer site”) <b>60</b> as an auxiliary site that can be utilized by the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b>.
0098The Web server site <b>50</b>-<b>1</b> comprises elements that are similar to those of the system of <figref idref="DRAWINGS">FIG. 9</figref>, but do not include the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b>, SAN <b>46</b> or storage devices <b>47</b>-<b>1</b> to <b>47</b>-<b>3</b>. Namely, the Web server site <b>50</b>-<b>1</b> comprises the load distributing device <b>12</b>, a plurality of, e.g., three, Web server computer groups <b>40</b>-<b>1</b> to <b>40</b>-<b>3</b>, and a management server computer <b>55</b> corresponding to the management server computer <b>45</b> in <figref idref="DRAWINGS">FIG. 9</figref>. In the management server computer <b>55</b>, a management server <b>550</b> operates. The management server <b>550</b> includes a server configuration management unit <b>551</b> and the setting change unit <b>154</b>. The other Web server sites <b>50</b>-<b>2</b> to <b>50</b>-<b>4</b> have the same structure as the Web server site <b>50</b>-<b>1</b>, although not shown. Note that the number of Web server computer groups, the number of Web server computers in each group, or the like, is not necessarily equal between the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b>. In the embodiment, however, to facilitate the explanation, it is assumed that each of the Web server computer groups in the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> correspond to any one of the boot images #<b>1</b> to #<b>3</b>.
0099The server configuration management unit <b>551</b> in the management server <b>550</b> has a function for acquiring the entire loads N<sub>S </sub>and N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i), like the server configuration management unit <b>451</b> of <figref idref="DRAWINGS">FIG. 9</figref>. The server configuration management unit <b>551</b> also has a function for determining the number of PN computers, the use of which should be started or stopped, based on the table <b>451</b><i>a </i>of a data structure shown in <figref idref="DRAWINGS">FIG. 12</figref>, and the loads N<sub>S </sub>and N<sub>C</sub>, like the server configuration management unit <b>451</b> of <figref idref="DRAWINGS">FIG. 9</figref>. The server configuration management unit <b>551</b> further has a function for requesting a management server <b>650</b>, described later, incorporated in the common PN computer site <b>60</b> to start or stop the use of the determined PN computers.
0100On the other hand, the common PN computer site <b>60</b> comprises the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> and storage device <b>47</b>. As in the system of <figref idref="DRAWINGS">FIG. 9</figref>, the storage device <b>47</b> comprises the disks D<b>1</b> to D<b>3</b> storing the boot images #<b>1</b> to #<b>3</b>, and the database holding the table <b>470</b>. The PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are connected to the storage device <b>47</b> by the SAN <b>46</b>. By virtue of this structure, each of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> can be booted by the corresponding one of the boot images #<b>1</b> to #<b>3</b>.
0101The PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are connected via a network <b>70</b> to the load distributing device <b>12</b>, management server computer <b>55</b> and Web server computer groups <b>40</b>-<b>1</b> to <b>40</b>-<b>3</b> (the Web server computers belonging to the groups <b>40</b>-<b>1</b> to <b>40</b>-<b>3</b>), which are incorporated in the Web server site <b>50</b>-<b>1</b>. The PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> are also connected via the network <b>70</b> to the load distributing device, management server computer and Web server computer groups (which are not shown) of each of the other Web server sites <b>50</b>-<b>2</b> to <b>50</b>-<b>4</b>. As a result, an arbitrary one of the PN computers can also be assigned as a load distribution target computer that belongs to an arbitrary one of the Web server computer groups of an arbitrary one of the Web server sites.
0102In light of the above, the common PN computer site <b>60</b> includes a management server computer <b>65</b> for processing a request to start the use of a provisioning node, and a request to stop the use of a provisioning node, issued from each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> as management bodies. The management server computer <b>65</b> is also connected to the network <b>70</b> and SAN <b>46</b>. On the management server computer <b>65</b>, a management server <b>650</b> runs which has a function for processing the request to start the use of a provisioning node, and the request to stop the use of a provisioning node. The management server <b>650</b> includes various functional elements, such as a PN management unit (provisional node management unit) <b>652</b>, PN start/stop unit <b>153</b> and boot-image selection unit <b>455</b>.
0103The PN management unit <b>652</b> has a function for managing the states of use of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b>. The PN management unit <b>652</b> also has a function for receiving a request to start the use of a provisioning node or to stop the use of a provisioning node, issued from each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b>, and controlling the PN start/stop unit <b>153</b> and boot-image selection unit <b>455</b> to process the request.
0104The PN management unit <b>652</b> holds the record file <b>652</b><i>a </i>of a data structure shown in <figref idref="DRAWINGS">FIG. 19</figref>. The record file <b>652</b><i>a </i>stores records concerning the use of the PN computers. Each record contains information indicating the state of use of a PN computer started in response to a request from each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b>. Specifically, each record concerning the use of a PN computer includes fields <b>81</b> to <b>84</b>. The field <b>81</b> is used to record the time (i.e., start time) when a PN computer is started. The field <b>82</b> is used to record the time (i.e., stop time) when the PN computer is stopped. From the start time and stop time recorded in the fields <b>81</b> and <b>82</b>, the period (operation period) in which the PN computer operates is detected. The field <b>83</b> is used to record information, e.g., a provisioning node identifier, for identifying a PN computer. The field <b>84</b> is used to record information concerning a Web server site using the provisioning node indicated by the identifier recorded in the field <b>83</b>. Each record stored in the record file <b>652</b><i>a </i>can utilize various formats, other than that shown in <figref idref="DRAWINGS">FIG. 19</figref>, such as a log format. Further, the information items indicating the start time and stop time may be stored as other records. Information indicating the period (stop period) in which the PN computer is stopped may be recorded as a record instead of the period in which it operates.
0105Referring to the flowcharts of <figref idref="DRAWINGS">FIGS. 17 and 18</figref>, a description will be given of the operation of the load distributing system of <figref idref="DRAWINGS">FIG. 16</figref>, and mainly given of the points different from those of the system shown in <figref idref="DRAWINGS">FIG. 9</figref>. The server configuration management unit <b>551</b> that operates in the management server computer <b>55</b> of the Web server site <b>50</b>-<b>1</b> firstly executes the same processes (steps S<b>81</b> to S<b>85</b>) as those of steps S<b>61</b> to S<b>65</b> in <figref idref="DRAWINGS">FIG. 10</figref>. Specifically, the server configuration management unit <b>551</b> sets a variable i to an initial value of 1 (step S<b>81</b>), and then acquires the entire loads N<sub>S </sub>and N<sub>C </sub>of the Web server computer group <b>40</b>-<i>i</i>(#i) indicated by the variable i (steps S<b>82</b> and S<b>83</b>). Subsequently, the server configuration management unit <b>551</b> refers to the table <b>451</b><i>a </i>to determine the numbers n<b>1</b> and n<b>2</b> of to-be-used PN computers corresponding to the present loads N<sub>S </sub>and N<sub>C </sub>of the group <b>40</b>-<i>i</i>(#i) (step S<b>83</b>). At step S<b>83</b>, the server configuration management unit <b>551</b> selects the larger one of the numbers n<b>1</b> and n<b>2</b> corresponding to the loads N<sub>S </sub>and N<sub>C </sub>as the number of PN computers to be actually used. After that, the server configuration management unit <b>551</b> compares the selected number with the number of currently used PN computers (step S<b>85</b>). The number of currently used PN computers is managed by the PN management unit <b>652</b> of the common PN computer site <b>60</b>.
0106If the numbers are equal to each other, the server configuration management unit <b>551</b> is kept in a standby state for a preset period (step S<b>86</b>), and then operates the variable i to switch from one Web server computer group to another (step S<b>87</b>). As a result, step S<b>82</b> and the later steps are again performed on the Web server computer group acquired by switching.
0107In contrast, if the number of to-be-used PN computers is larger (step S<b>85</b>), the server configuration management unit <b>551</b> determines that it is necessary to assign new PN computers as load distribution target computers. In this case, the server configuration management unit <b>551</b> requests, via the network <b>70</b>, the management server <b>650</b> of the management server computer <b>65</b> to start the use of new PN computers corresponding to the difference Nd between the compared numbers (step S<b>88</b>).
0108Further, if the number of to-be-used PN computers is smaller than the number of currently used PN computers (step S<b>85</b>), the server configuration management unit <b>551</b> determines that it is necessary to stop the use of the currently used PN computers corresponding to the difference Nd. In this case, the server configuration management unit <b>551</b> requests, via the network <b>70</b>, the management server <b>650</b> of the management server computer <b>65</b> for PN computer management to stop the use of the currently used PN computers corresponding to the difference Nd (step S<b>91</b>).
0109The PN management unit <b>652</b> of the management server <b>650</b> waits for a request (a request to start or stop the use of a PN computer) from each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> (step S<b>101</b>). Assume here that the PN management unit <b>652</b> has received a request from, for example, the management server <b>550</b> of the management server computer <b>55</b> in the Web server site <b>50</b>-<b>1</b>. In this case, the PN management unit <b>652</b> determines whether the received request is a request to start or stop the use of a PN computer (step S<b>102</b>).
0110If the received request is a request to start the use of a PN computer, the PN management unit <b>652</b> determines whether the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> contain an unoccupied PN computer (step S<b>103</b>). If there is an unoccupied PN computer, the PN management unit <b>652</b> assigns the PN computer as a computer that should be started to be used (step S<b>104</b>).
0111The boot-image selection unit <b>455</b> in the management server <b>650</b> makes the PN computer, assigned by the PN management unit <b>652</b>, correspond to the disk Di that stores the boot image #i. In other words, the boot-image selection unit <b>455</b> selects the boot image #i (the disk Di storing the boot image #i) used to boot the PN computer assigned by the PN management unit <b>652</b> (step S<b>105</b>). At this time, the PN start/stop unit <b>153</b> in the management server <b>650</b> operates. The PN start/stop unit <b>153</b> starts the one of the PN computers <b>15</b>-<b>1</b> to <b>15</b>-<b>4</b> that is assigned by the PN management unit <b>652</b> (step S<b>106</b>). The started PN computer is made by the boot-image selection unit <b>455</b> to correspond to the disk Di that stores the boot image #i used to boot the PN computer. Accordingly, the started PN computer reads the boot image #i from the disk Di made to correspond thereto, and executes boot processing.
0112When the PN computer assigned as a computer that should be started to be used is started, the PN management unit <b>652</b> stores, in the record file <b>652</b><i>a, </i>a record that stores the start time, the identifier (provisioning node identifier) of the started PN computer, and information indicating the Web server site (in this case, the Web server site <b>50</b>-<b>1</b>) that uses the PN computer (step S<b>107</b>). The domain name of the Web server site is used as the information indicating the site. The domain name is made to correspond to an IP (Internet Protocol) address by a DNS (Domain Name System) not shown.
0113After executing step S<b>107</b>, the PN management unit <b>652</b> informs the management server <b>550</b>, via the network <b>70</b>, of the result of processing made in reply to the request therefrom (the request to start the use of the PN computer) (step S<b>108</b>).
0114In contrast, if any unoccupied PN computer does not exist (step S<b>103</b>), the PN management unit <b>652</b> reports this to the requester of the start of use of the PN computer (i.e., the management server <b>550</b> of the Web server site <b>50</b>-<b>1</b>) (step S<b>108</b>).
0115Further, if the request from the management server <b>550</b> of the Web server site <b>50</b>-<b>1</b> is a request to stop the use of a PN computer (step S<b>102</b>), the PN management unit <b>652</b> selects, from the currently used PN computers, the PN computer, the use of which should be ended (step S<b>109</b>). The PN start/stop unit <b>153</b> stops the PN computer, the use of which is determined by the PN management unit <b>652</b> to be ended (step S<b>110</b>). At this time, the PN management unit <b>652</b> searches the record file <b>652</b><i>a </i>for the record that stores the identifier of the stopped PN computer and has its stop-time field <b>82</b> kept blank, and writes the present time to the field <b>82</b> as the stop time (step S<b>111</b>). After that, the PN management unit <b>652</b> informs the management server <b>550</b> of the Web server site <b>50</b>-<b>1</b>, via the network <b>70</b>, of the result of processing made in reply to the request therefrom (the request to stop the use of the PN computer) (step S<b>108</b>).
0116When the server configuration management unit <b>551</b> in the management server <b>550</b> of the Web server site <b>50</b>-<b>1</b> has issued a request to start the use of a PN computer to the management server <b>650</b> of the common PN computer site <b>60</b> (step S<b>88</b>), it waits for the result of processing issued from the PN management unit <b>652</b> in the management server <b>650</b>. Upon receiving the result of processing made in reply to the request to start the use of a PN computer, the server configuration management unit <b>551</b> determines from the result whether the request has succeeded (step S<b>89</b>). If succeeded, the PN management unit <b>652</b> transfers control to the setting change unit <b>154</b>. The setting change unit <b>154</b>, in turn, controls the load distributing device <b>12</b> so that the PN computer started in reply to the request to start the use of a PN computer will be added in the Web server computer group <b>40</b>-<i>i</i>(#i) as a load distribution target computer (step S<b>90</b>).
0117As described above, in this embodiment, the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> as four different management bodies can utilize the PN computers of the common PN computer site (auxiliary site) <b>60</b>. Further, the record file <b>652</b><i>a </i>can be used as information indicating, for example, the fees for the PN computers that the management bodies have used.
0118In this embodiment, it is assumed that a plurality of Web server computers belonging to each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> are managed, classified into groups corresponding to the respective types of boot images. However, in each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b>, all Web server computers may execute the same type of boot image. In this case, it is not necessary to classify the Web server computers in each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> into groups. Further, when the Web server computers in each of the Web server sites <b>50</b>-<b>1</b> to <b>50</b>-<b>4</b> execute the same type of boot image, the storage device <b>47</b> and boot image selection unit <b>455</b> incorporated in the common PN computer site <b>60</b> are also unnecessary. Also, instead of the dedicated load distributing device <b>12</b>, the round-robin function of the DNS (Domain Name System) may be used as a load distributing device. This can be said of the load distributing devices employed in the first to fourth embodiments. The DNS round-robin function is a function for distributing the load of a well-trafficked server utilizing a DNS in which domain names are associated with IP addresses. More specifically, this is a function for assigning a plurality of IP addresses to a single domain name, and sequentially responding to requests sequentially issued, thereby preventing concentration of access to a single computer.
0119The present invention is not limited to the above-described embodiments, but may be modified in various ways without departing from the scope. Various inventions can be realized by appropriately combining the structure elements disclosed in the embodiments. For instance, some of the disclosed structural elements may be deleted. Some structural elements of different embodiments may be combined appropriately.
INDUSTRIAL APPLICABILITY
0120In the present invention, when a sudden spike phenomenon occurs, an auxiliary computer is started and used as a new load distribution target computer. When the spike phenomenon has ceased, the booted auxiliary computer is excluded from the load distribution targets, and stopped. Thus, it is not necessary to boot many server computers at all times, and a sudden spike phenomenon that is hard to predict can be easily overcome.
Contents12
17 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2011055370A1 | Cited by | United States of America | Pre-grant |
| US9928116B2 | Cited by | United States of America | Search report |
| US2014244728A1 | Cited by | United States of America | Search report |
| US9288147B2 | Cited by | United States of America | Applicant |
| US9961146B2 | Cited by | United States of America | Applicant |
| US8850444B2 | Cited by | United States of America | Applicant |
| US9298518B2 | Cited by | United States of America | Search report |
| US8407514B2 | Cited by | United States of America | Search report |
| US9294335B2 | Cited by | United States of America | Search report |
| US2014244728A1 | Cited by | United States of America | Pre-grant |
| US8458324B2 | Cited by | United States of America | Applicant |
| US8225323B2 | Cited by | United States of America | Applicant |
| US2008320488A1 | Cited by | United States of America | Pre-grant |
| US2014244728A1 | Cited by | United States of America | Search report |
| US2011225449A1 | Cited by | United States of America | Pre-grant |
| CN103246262A | Cited by | China | Search report |
| US2016077887A1 | Cited by | United States of America | Pre-grant |
| US2013268573A1 | Cited by | United States of America | Pre-grant |
| US6779016B1 | Cites | United States of America | Pre-grant |
6 members in 4 offices
Priority claims7
| Document | Office | Kind | Date |
|---|---|---|---|
| 2003148233 | Japan | – | |
| 2003148233 | Japan | A | |
| 2004007558 | Japan | W | |
| 2003148233 | – | – | – |
| JP20030148233 | – | – | – |
| PCTJP0407558 | – | – | – |
| WO2004JP07558 | – | – | – |
Members6
| Document | Office | Kind | |
|---|---|---|---|
| WO2004104852A1 | World Intellectual Property Organization (WIPO) | A1 | |
| JP2005011331A | Japan | A | |
| JP3782429B2 | Japan | B2 | |
| CN1829986A | China | A | |
| US2007180452A1 | United States of America | A1 | |
| CN100416542C | China | C |
30 transactions on the USPTO file
Abandoned after 1 non-final rejection.
- Non-final rejections
- 1
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Mail Abandonment for Failure to Respond to Office ActionAbandonedMABN2 | MABN2 | |
| Aband. for Failure to Respond to O. A.AbandonedABN2 | ABN2 | |
| Examiner Interview Summary Record (PTOL - 413)EXIN | EXIN | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Withdraw Flagged for 5/25W525 | W525 | |
| Flagged for 5/25F525 | F525 | |
| Transfer Inquiry to GAUTI1050 | TI1050 | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Sent to Classification ContractorPGPC | PGPC | |
| Notice of DO/EO Acceptance MailedM903 | M903 | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Request for Foreign Priority (Priority Papers May Be Included)RQPR | RQPR | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| 371 Completion Date371COMP | 371COMP | |
| Additional Application Filing FeesADDFLFEE | ADDFLFEE | |
| A statement by one or more inventors satisfying the requirement under 35 USC 115, Oath of the ApplicOATHDECL | OATHDECL | |
| Cleared by OIPE CSRL194 | L194 | |
| Cleared by OIPE CSRL194 | L194 | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
3 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Information on status: application discontinuationABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTIONSTCB | STCB | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- 20070180452
- Publication, DOCDB
- 2007180452
- Publication, EPODOC
- US2007180452
- Application
- 10558237
- Application, DOCDB
- 55823704
- Application, EPODOC
- US20040558237
Titles
- English
- Load distributing system and method
Classification
- CPC, 5
- G06F9/505
- H04L67/1002
- H04L67/1008
- H04L67/1012
- H04L67/1017
- IPC, 5
- G06F9 46
- G06F13 00
- G06F15 177
- H04L29 06
- H04L29 08
- USPC, 1
- 718105000