The present application claims priority to and incorporates by reference the entire contents of Japanese Patent Application No. 2013-178638 filed in Japan on Aug. 29, 2013 and Japanese Patent Application No. 2014-171950 filed in Japan on Aug. 26, 2014.
1. Field of the Invention
The present invention relates to a monitoring system, a system, and a monitoring method.
2. Description of the Related Art
Technologies have so far been known that monitor a service providing system that provides Web services, such as cloud services (refer to Japanese Patent Application Laid-open No. 2012-113556, for example). Such technologies generally monitor whether each server in a group of servers constituting the service providing system is operable, based on the status of hardware resources, such as the use status of processors and memories thereof and the use status of a network.
The conventional technologies as described above merely indirectly monitor whether a service can be provided based on whether the servers constituting the service providing system can operate, and have not been able to directly monitor whether the service can be provided.
Therefore, there is a need for a monitoring system, a system, and a monitoring method that are capable of directly monitoring whether a service can be provided.
According to an embodiment, a monitoring system includes an access unit, an access result analyzer, a creator, and an output unit. Based on access data that defines an order of one or more access processes necessary for receiving a service and access information used in the respective access processes, the access unit accesses a service providing system that provides the service and acquires access results of the respective access processes. The access result analyzer analyzes the access results and generates access result information on the respective access processes. Based on the pieces of access result information, the creator creates a report on whether the service is capable of being provided. The output unit outputs the report.
The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings.
Embodiments of a monitoring system, a system, and a monitoring method according to the present invention will be described below in detail with reference to the accompanying drawings.
The service providing system 1 provides Web services, such as cloud services, via the Internet 2, and is constituted by one or more servers. While the first embodiment will be described by exemplifying a case in which the service providing system 1 provides a cloud printing service, the service provided is not limited to this. Examples of services that can be provided by the service providing system 1 include, but are not limited to, various cloud services (Web services in a broad sense), such as storage services.
The monitoring system 100 monitors whether a service can be provided by the service providing system 1, and may be constituted by one computer or a plurality of computers.
The communication unit 110 communicates with external systems, such as the service providing system 1, via the Internet 2, and can be implemented by a communication device, such as a network interface card (NIC).
The operation unit 120 is used for various kinds of control input, and can be implemented by input devices, such as a keyboard, a mouse, a touchpad, and a touchscreen.
The display unit 130 displays various screens, and can be implemented by a display device, such as a liquid crystal display or a touch panel display.
The storage unit 140 stores various computer programs, such as a monitoring program executed by the monitoring system 100, and data used for various processes performed by the monitoring system 100. The storage unit 140 can be implemented by at least one of storage devices capable of magnetically, optically, or electrically storing data, such as a hard disk drive (HDD), a solid state drive (SSD), a memory card, an optical disc, and a random access memory (RAM).
The controller 150 controls respective units of the monitoring system 100, and can be implemented by a control device, such as a central processing unit (CPU). The controller 150 includes an access unit 151, an access result analyzer 153, a creator 155, and an output unit 157. The controller 150 implements the access unit 151, the access result analyzer 153, the creator 155, and the output unit 157 as software by starting (executing) the monitoring program stored in the storage unit 140.
Based on access data that defines the order of one or more access processes necessary for receiving a service and access information used in the respective access processes, the access unit 151 accesses the service providing system 1 that provides the service.
The access unit 151 only needs to be a software module that can access the service providing system 1 through a predetermined protocol, that is, that can communicate with the service providing system 1 through a predetermined protocol. Examples of the access unit 151 include, but are not limited to, tools, such as Apache JMeter, for measuring loads of Web services and the curl command of Linux (registered trademark). While the first embodiment will be described by exemplifying a case in which the predetermined protocol is a Hypertext Transfer Protocol (HTTP), the protocol is not limited to this, but various protocols can be employed.
The access data includes, in the category thereof, data that defines the order of a series of access processes (hereinafter, may be called “scenario”) in a use case of a service and access information used in the respective access processes. For example, in the case of the cloud printing, the access data includes, in the category thereof, data that defines five access processes (scenario of the cloud printing) called “login”, “send document for printing”, “check document for printing”, “request printing”, and “logout” as a use case of the cloud printing, and access information used in the respective access processes. In the first embodiment, the respective access processes are performed through HTTP communication, so that the access information is an HTTP request. While the first embodiment assumes that the access information is stored in the storage unit 140, the access information is not limited to be so.
The information of the HTTP request need not be entirely predefined in the access data. At least a part of the information may be predefined, and the other information may be generated when the HTTP request is sent.
After gaining access to the service providing system 1 based on the access data, the access unit 151 acquires access results of the respective access processes. In the first embodiment, the respective access processes are performed through the HTTP communication as described above, so that the access results are HTTP responses.
The access result analyzer 153 analyzes the access results acquired by the access unit 151, then generates access result information on the respective access processes, and stores one or more pieces of generated access result information as a log(s) in the storage unit 140.
Specifically, the access result analyzer 153 determines whether each of the access results corresponds to a predefined access result. In the first embodiment, because the respective access processes are performed through the HTTP communication as described above, the access result analyzer 153 determines whether a status code (“200” in the example illustrated in
For example, in the case of the access process called “login”, suppose that the HTTP body of the HTTP response includes a keyword “welcome”. In this case, the access result analyzer 153 determines whether the HTTP body includes the keyword “welcome”. The predefined keyword included in the HTTP body is defined depending on the contents of the cloud service provided by the service providing system 1 and the access processes.
If the result of the determination indicates that the access result corresponds to the predefined access result, the access result analyzer 153 generates access result information indicating that the access has been successful; or if the access result does not correspond to the predefined access result, the access result analyzer 153 generates access result information indicating that the access has failed.
While the first embodiment assumes that the access result analyzer 153 generates the access result information in a comma separated value (CSV) format and stores it in the storage unit 140, the data format of the access result information is not limited to this.
The date and time represent the date and time when the access has been made. The response time represents the time from sending the HTTP request until receiving the HTTP response. The access content represents the content of the access process (such as “login” or “logout”). The HTTP status code represents the status code (such as “200 (OK)” or “404 (not found)”) included in the HTTP header of the HTTP response. The reason for access failure represents the reason why the access has failed, and is generated when the access result analyzer 153 generates the access result information indicating the access failure based on the determination result of the comparison between the access result acquired by the access unit 151 and the predefined access result. The access destination URL represents the URL of the access destination. The date and time, the response time, the access content, the HTTP status code, and the access destination URL are included in the access result acquired by the access unit 151.
Based on the pieces of access result information generated by the access result analyzer 153, the creator 155 creates a report on whether the service can be provided. Specifically, the creator 155 creates the report in which the pieces of access result information are arranged in chronological order. As a result, the report indicates that the service can be provided if the pieces of access result information include no access result information indicating that the access has failed, or indicates that the service cannot be provided if the pieces of access result information include the access result information indicating that the access has failed.
In the first embodiment, the creator 155 creates the report by acquiring one or more pieces of access result information from the storage unit 140, arranging the acquired access result information in chronological order, and converting the format of the report into a HyperText Markup Language (HTML) format. The format of the report is, however, not limited thereto.
In the first embodiment, if one or more pieces of access result information include the access result information indicating that the access has failed, the creator 155 creates, as the report, a report in which the access result information indicating that the access has failed is emphasized. For example, the creator 155 creates a report in which the access result information indicating that the access has failed is distinguished from the access result information indicating that the access has been successful by using different colors. This can make the access result information indicating that the access has failed easily identifiable.
The output unit 157 outputs the report created by the creator 155. For example, the output unit 157 may output the report created by the creator 155 to be displayed on a web browser of the display unit 130, or may output the report via the communication unit 110 to be displayed on a web browser of an administrator terminal or the like, which is not illustrated.
First, based on the access data that defines the scenario of the cloud printing and the access information used in the respective access processes constituting the scenario, the access unit 151 sends an HTTP request to request a login to the service providing system 1 (Step S101), and acquires an HTTP response (response 1) to the HTTP request from the service providing system 1 (Step S103).
Then, the access result analyzer 153 analyzes whether the login has been successful by determining whether the acquired HTTP response (response 1) corresponds to a predefined HTTP response (Step S105), then generates access result information according to the result of the analysis, and outputs (stores) the access result information as a log in the storage unit 140 (Step S107).
Then, based on the access data, the access unit 151 sends an HTTP request for print document registration to the service providing system 1 (Step S111), and acquires an HTTP response (response 2) to the HTTP request from the service providing system 1 (Step S113).
Then, the access result analyzer 153 analyzes whether the document registration has been successful by determining whether the acquired HTTP response (response 2) corresponds to the predefined HTTP response (Step S115), then generates access result information according to the result of the analysis, and outputs (stores) the access result information as a log in the storage unit 140 (Step S117).
Thereafter, the monitoring system 100 repeats the same processing along the scenario of the cloud printing.
Lastly, based on the access data, the access unit 151 sends an HTTP request for logout to the service providing system 1 (Step S121), and acquires an HTTP response (response N) to the HTTP request from the service providing system 1 (Step S123).
Then, the access result analyzer 153 analyzes whether the logout has been successful by determining whether the acquired HTTP response (response N) corresponds to the predefined HTTP response (Step S125), then generates access result information according to the result of the analysis, and outputs (stores) the access result information as a log in the storage unit 140 (Step S127).
Then, the creator 155 acquires one or more logs from the storage unit 140 (Steps S131 and S133), then arranges the acquired logs in chronological order, and converts the format of the result into the HTML format to create a report (Step S135).
First, the access unit 151 sends an HTTP request for an access process to the service providing system 1 (Step S201), and receives an HTTP response to the HTTP request from the service providing system 1 (Step S203). If the access unit 151 has received no HTTP response within a certain time, the access result analyzer 153 determines that the access has failed (Step S211), and generates the access result information indicating that the access has failed.
Then, the access result analyzer 153 determines whether the HTTP status code of the received HTTP response corresponds to an expected status code (status code obtained when access is successful) (Step S205). If not (No at Step S205), the access result analyzer 153 determines that the access has failed (Step S211), and generates the access result information indicating that the access has failed.
If the HTTP status code corresponds to the expected status code (Yes at Step S205), the access result analyzer 153 determines whether the HTTP status code indicates redirection (Step S206). If so (Yes at Step S206), the process returns to Step S201, and the access unit 151 accesses (sends an HTTP request to) the redirected destination (the URL of the redirected destination specified in the HTTP response).
If the HTTP status code does not indicate redirection (No at Step S206), the access result analyzer 153 determines whether the content of the HTTP body is as expected, that is, whether the HTTP body includes an expected keyword (Step S207). If not (No at Step S207), the access result analyzer 153 determines that the access has failed (Step S211), and generates the access result information indicating that the access has failed.
If the content of the HTTP body is as expected (Yes at Step S207), the access result analyzer 153 determines that the access has been successful (Step S209), and generates the access result information indicating that the access has been successful.
As described above, in the first embodiment, the monitoring system defines, as access data, the data to be sent when a series of access processes is performed to the service providing system for a user to receive a cloud service therefrom; and based on the access data, the monitoring system performs the series of access processes, then analyzes the access results, and creates the report on whether the service can be provided.
As a result, the first embodiment can directly monitor whether the service can be provided by the service providing system, instead of monitoring, in a conventional way, whether each server constituting the service providing system is operable based on the hardware resource of the server so as to indirectly monitor whether the service can be provided. In other words, the first embodiment can monitor whether the service can be provided from the standpoint of the user, that is, at the service level.
As a result, the first embodiment can prevent the service providing system from being determined, in a conventional way, to be incapable of providing the service because some server of a server group constituting the service providing system cannot operate although the service providing system can provide the service, and thus can improve accuracy of the determination as to whether the service can be provided.
In a second embodiment of the present invention, an example will be described in which the user can understand where error have occurred in a service providing system. The following mainly describes differences from the first embodiment. Components having the same functions as those of the first embodiment will be given the same names and reference numerals as those of the first embodiment, and description thereof will be omitted.
A database system is exemplified as the external system 1200, which may be any system that performs any processing. The external system 1200 is constituted by one or more servers.
Examples of the memory system 1300 include, but are not limited to, storage systems. The memory system 1300 is constituted by one or more servers.
The access unit 1151 generates access process identification information that identifies an access process, and performs the access process using the access process identification information and the access information used in the access process. The second embodiment also assumes that each access process is performed through the HTTP communication, and that the access information is an HTTP request.
The access process identification information is an identifier generated when the access process is performed by the access unit 1151, and the content thereof is assumed to change each time each access process is performed. Hence, using the access process identification information allows the access process to be identified even when the same access process (HTTP request) is performed at different times.
A service providing system 1001, the external system 1200, and the memory system 1300 will be described. While the second embodiment will be described by exemplifying a case in which one server constitutes the service providing system 1001, the constitution is not limited to this.
The processor 1002-1 includes an acceptor 1003-1, a processing requester 1004-1, and a processing result analyzer 1005-1. The processor 1002-2 includes an acceptor 1003-2, a processing requester 1004-2, and a processing result analyzer 1005-2. The processor 1002-3 includes an acceptor 1003-3, a processing requester 1004-3, and a processing result analyzer 1005-3.
In the following description, in some cases, the processors 1002-1 to 1002-3 will each be simply called a processor 1002 when they need not be distinguished from one another; the acceptors 1003-1 to 1003-3 will each be simply called an acceptor 1003 when they need not be distinguished from one another; the processing requesters 1004-1 to 1004-3 will each be simply called a processing requester 1004 when they need not be distinguished from one another; and the processing result analyzers 1005-1 to 1005-3 will each be simply called a processing result analyzer 1005 when they need not be distinguished from one another.
While the second embodiment will be described by exemplifying a case in which the number of processors 1002 is three, the number is not limited to this, but may be any number more than one.
The processors 1002-1 to 1002-3 have a hierarchical structure. The second embodiment assumes that the processor 1002-1 is positioned at the highest hierarchy level, the processor 1002-2 is positioned at the highest hierarchy next to the processor 1002-1, and the processor 1002-3 is positioned at the highest hierarchy next to the processor 1002-2. However, the hierarchy level is not limited thereto.
The acceptor 1003 accepts an access process from the monitoring system 1100, or a processing request from one of the processors 1002 positioned at the higher hierarchy level than the acceptor 1003 itself.
In the second embodiment, the processors 1002-1 to 1002-3 have the above-described hierarchical structure. Hence, the acceptor 1003-1 accepts the access process from the monitoring system 1100; the acceptor 1003-2 accepts the processing request from the processor 1002-1; and the acceptor 1003-3 accepts the processing request from the processor 1002-2. The processing request is an HTTP request in the same manner as in the case of the access process, but is not limited to this.
Based on the access process or the processing request accepted by the acceptor 1003, the processing requester 1004 issues a processing request including the access process identification information included in the access process or the processing request to one of the processors 1002 positioned at a lower hierarchy level than the processing requester 1004 itself or to the external system 1200, and obtains a processing result.
In the second embodiment, the processors 1002-1 to 1002-3 have the above-described hierarchical structure. As described above, the acceptor 1003-1 accepts an access process from the monitoring system 1100. This causes the processing requester 1004-1 to generate a processing request for processing the access process from the monitoring system 1100 based on the access process therefrom, add the access process identification information included in the access process to the processing request, issue the processing request with the access process identification information added thereto to the processor 1002-2, obtain a processing result from the processor 1002-2, and then return it to the monitoring system 1100.
As described above, the acceptor 1003-2 accepts a processing request from the processor 1002-1. This causes the processing requester 1004-2 to generate a processing request for dealing with the processing request from the processor 1002-1 based on the processing request therefrom, add the access process identification information included in the processing request from the processor 1002-1 to the generated processing request, issue the processing request with the access process identification information added thereto to the processor 1002-3, obtain a processing result from the processor 1002-3, and then return it to the processor 1002-1.
As described above, the acceptor 1003-3 accepts a processing request from the processor 1002-2. This causes the processing requester 1004-3 to generate a processing request for dealing with the processing request from the processor 1002-2 based on the processing request therefrom, add the access process identification information included in the processing request from the processor 1002-2 to the generated processing request, issue the processing request with the access process identification information added thereto to the external system 1200, obtain a processing result from the external system 1200, and then return it to the processor 1002-2.
The processing result analyzer 1005 analyzes the returned processing result, and if the processing result indicates that the processing has failed, stores, in the memory system 1300, error information in which the processing result, the processing request issued to obtain the processing result, transmission source information indicating the transmission source of the processing request, and transmission destination information indicating the transmission destination of the processing request are associated with one another. The same method as that of the access result analyzer 153 according to the first embodiment only needs to be employed as a method for analyzing whether the processing result indicates that the processing has been successful or the processing has failed.
The processing result analyzer 1005-1 analyzes the processing result returned from the processor 1002-2, and if the processing result indicates that the processing has failed, stores, in the memory system 1300, error information in which the processing result, the processing request issued to obtain the processing result, transmission source information indicating the processor 1002-1, and transmission destination information indicating the processor 1002-2 are associated with one another.
The processing result analyzer 1005-2 analyzes the processing result returned from the processor 1002-3, and if the processing result indicates that the processing has failed, stores, in the memory system 1300, error information in which the processing result, the processing request issued to obtain the processing result, transmission source information indicating the processor 1002-2, and transmission destination information indicating the processor 1002-3 are associated with one another.
The processing result analyzer 1005-3 analyzes the processing result returned from the external system 1200, and if the processing result indicates that the processing has failed, stores, in the memory system 1300, error information in which the processing result, the processing request issued to obtain the processing result, transmission source information indicating the processor 1002-3, and transmission destination information indicating the external system 1200 are associated with one another.
In the example illustrated in
In the example illustrated in
In the example illustrated in
The description returns to the explanation of the monitoring system 1100.
The searcher 1159 searches the memory system 1300 for one or more pieces of error information associated with the access process identification information. Specifically, if the result of the analysis by the access result analyzer 153 shows that any of the pieces of access result information indicates that the access has failed, the searcher 1159 searches the memory system 1300 for one or more pieces of error information including the access process identification information of the access process whose access result information indicates that the access has failed.
For example, in the case of the example illustrated in
The output unit 1157 further performs output based on the pieces of error information found by the searcher 1159. For example, the output unit 1157 generates error notification information obtained by forming the search response illustrated in
First, the access unit 1151 generates an X-Request-ID, adds it to an HTTP request stored in the storage unit 1140, and issues the HTTP request called “acquire user information” (Step S301).
Then, based on the HTTP request received from the monitoring system 1100, the processor 1002-1 generates an HTTP request for dealing with the received HTTP request, adds the X-Request-1D included in the HTTP request from the monitoring system 1100 to the generated HTTP request, and issues the HTTP request with the X-Request-1D added thereto to the processor 1002-2 (Step S303).
Then, based on the HTTP request received from the processor 1002-1, the processor 1002-2 generates an HTTP request for dealing with the received HTTP request, adds the X-Request-ID included in the HTTP request from the processor 1002-1 to the generated HTTP request, and issues the HTTP request with the X-Request-ID added thereto to the processor 1002-3 (Step S305).
Then, based on the HTTP request received from the processor 1002-2, the processor 1002-3 generates an HTTP request for dealing with the received HTTP request, adds the X-Request-ID included in the HTTP request from the processor 1002-2 to the generated HTTP request, and issues the HTTP request with the X-Request-ID added thereto to the external system 1200 (Step S307).
The processor 1002-3 then acquires an HTTP response to the HTTP request issued to the external system 1200 from the external system 1200 (Step S309). In this case, the HTTP response is assumed to be an error response as described in the example illustrated in
Because the HTTP response is an error response, the processor 1002-3 stores, in the memory system 1300, error information in which the header of the HTTP response, the header of the HTTP request, the transmission source information indicating the processor 1002-3, and the transmission destination information indicating the external system 1200 are associated with one another (Step S311).
The processor 1002-3 then returns the error response as an HTTP response to the processor 1002-2 (Step S313).
Because the HTTP response is an error response, the processor 1002-2 stores, in the memory system 1300, error information in which the header of the HTTP response, the header of the HTTP request, the transmission source information indicating the processor 1002-2, and the transmission destination information indicating the processor 1002-3 are associated with one another (Step S315).
The processor 1002-2 then returns the error response as an HTTP response to the processor 1002-1 (Step S317).
Because the HTTP response is an error response, the processor 1002-1 stores, in the memory system 1300, error information in which the header of the HTTP response, the header of the HTTP request, the transmission source information indicating the processor 1002-1, and the transmission destination information indicating the processor 1002-2 are associated with one another (Step S319).
The processor 1002-1 then returns the error response as an HTTP response to the monitoring system 1100 (Step S321).
First, the access result analyzer 153 determines whether any of the pieces of access result information (the HTTP response or any of the HTTP responses) indicates that an access has failed (Step S401). In this case, one piece of the access result information is assumed to indicate that the access has failed.
Then, the access result analyzer 153 notifies the searcher 1159 of the X-Request-1D added to the HTTP request in response to which the access result information indicates that the access has failed (Step S403).
Then, the searcher 1159 sends to the memory system 1300 a search request with the X-Request-1D thus notified of as a key (Step S405).
Then, using the sent X-Request-ID as a key, the memory system 1300 searches for error information that includes the X-Request-ID, and returns a search response that includes one or more pieces of error information found to the monitoring system 1100 (Step S407).
Then, the searcher 1159 returns the pieces of error information included in the returned search response to the output unit 1157 (Step S409).
Then, the output unit 1157 generates the error notification information by forming the pieces of error information returned (Step S411), and sends the notification information to the e-mail addresses of the operators and the analysts of the system 1010 (Step S413).
As described above, in the second embodiment, the monitoring system includes in an access process the access process identification information that can identify the access process; and each of the processors of the service providing system issues the processing request including the access process identification information notified of from a higher level unit to a lower level unit, and if the process has resulted in failure, stores the error information in which the processing request including the access process identification information, the processing result, the transmission source information, and the transmission destination information are associated with one another.
As a result, according to the second embodiment, by searching for the error information based on the access process identification information in the access process using the access process identification information, the user can know one or more processors in which an error has occurred, and can know a processor that has caused the error among the one or more processors, without performing a log analysis.
Modifications
The present invention is not limited to the above-described embodiments, but various modifications can be made.
Modification 1
In the second embodiment, the searcher 1159 may search the memory system 1300 for one or more pieces of error information including the access process identification information entered based on a user operation via the operation unit 120.
This allows the operators and the analysts of the system 1010 to search for, for example, past error information regardless of the result of the analysis by the access result analyzer 153, and thus can lead to finding of potential problems of the system 1010, such as detection of frequently occurring errors beforehand.
Modification 2
In the second embodiment, even if the result of the analysis by the access result analyzer 153 shows that no piece of the access result information indicates that the access has failed, the searcher 1159 may search the memory system 1300 for one or more pieces of error information including the access process identification information of an access process.
This can lead to the following. That is, for example, if the processor 1002 is designed to retry processing predefined times when the processor 1002 obtains a processing result indicating that the access has failed, and if the processing result finally indicates that the processing has been successful, the operators and the analysts of the system 1010 can obtain, for example, the results of processing that has failed until the access becomes successful.
Modification 3
In the second embodiment, the output unit 1157 may send an output based on the error information to the address of a person in charge of the processor 1002 that has caused the error information or the address of a person in charge of the external system 1200 that has caused the error information.
In this case, the storage unit 1140 only needs to store a table in which each of the processors (modules) or the external system (external service) is associated with the address of a person in charge thereof, as illustrated in
In this manner, the error notification can be made on the processor or external system basis, whereby earlier responses can be expected.
Modification 4
In the second embodiment, if the processing result indicates that the processing has failed, the processing result analyzer 1005 may store, in the memory system 1300, error information in which, in addition to the processing result, the processing request issued to obtain the processing result, the transmission source information, and the transmission destination information, identification information that can identify the processor that includes the processing result analyzer 1005, are associated with one another, as illustrated in
This allows identification of a processor 1002 in which an error has occurred, even if the service providing system 1001 is built by redundantly configuring servers including the processors, such as by mirroring the servers, or if a server includes a plurality of processors 1002 of the same type.
Modification 5
In the second embodiment, instead of being included in each of the processors 1002, the processing result analyzer 1005 may be included in the service providing system 1001, and may analyze the processing result obtained by each of the processing requesters 1004; if the processing result indicates that the processing has failed, the processing result analyzer 1005 may store, in the memory system 1300, the error information in which the processing result, the processing request issued to obtain the processing result, the transmission source information indicating the transmission source of the processing request, and the transmission destination information indicating the transmission destination of the processing request are associated with one another.
This eliminates the need for each of the processors 1002 to include the processing result analyzer 1005, and thereby can improve maintainability. This also allows the processing result analyzer 1005 to asynchronously store the error information in the memory system 1300, which is preferable in terms of design.
Modification 6
In the second embodiment, the example has been described in which each of the processors 1002 synchronously issues the processing request. The second embodiment can, however, be applied to a case of asynchronously issuing the processing request, in which case a higher level processor 1002 accumulates processing requests in a storage unit (not illustrated), such as a queue, in the service providing system 1001, and a lower level processor 1002 sequentially deals with the processing requests accumulated in the storage unit.
Hardware Configuration
Computer programs to be executed in each system of the embodiments are stored as files in an installable format or an executable format on a computer-readable storage medium or media, such as one or more CD-ROMs, CD-Rs, memory cards, digital versatile discs (DVDs), or flexible disks (FDs).
The computer programs to be executed in each system of the embodiments may be stored on a computer connected to a network, such as the Internet, and may be provided by being downloaded via the network. The computer programs to be executed in each system of the embodiments may be provided or delivered via a network, such as the Internet. The computer programs to be executed in each system of the embodiments may be provided by being installed in advance in a ROM or the like.
The computer programs to be executed in each system of the embodiments are configured in modules for implementing the above-described units on a computer. As actual hardware, the CPU reads the computer programs from the HDD to load and execute them in the RAM, so that the above-described units are implemented on the computer.
The present invention has an effect of enabling direct monitoring of whether a service can be provided.
Although the invention has been described with respect to specific embodiments for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.
Number | Date | Country | Kind |
---|---|---|---|
2013-178638 | Aug 2013 | JP | national |
2014-171950 | Aug 2014 | JP | national |