US 7,512,691 B2
Message request response server and processor
Yukihiko Sohda, Yamato (Japan); Toshiro Takase, Yamato (Japan); Yuhichi Nakamura, Yokohama (Japan); and Michiaki Tatsubori, Yamato (Japan)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Feb. 15, 2005, as Appl. No. 11/58,510.
Claims priority of application No. 2004-040202 (JP), filed on Feb. 17, 2004.
Prior Publication US 2006/0075117 A1, Apr. 06, 2006
Int. Cl. G06F 15/16 (2006.01)
U.S. Cl. 709—227  [709/217; 709/219] 1 Claim
OG exemplary drawing
 
1. A server apparatus comprising:
a request processing unit embedded in a physical and tangible computer medium, said apparatus for each of a plurality of elements, for receiving processing request messages that include a structured document in which a name of an element and a content thereof are described, performing processing based on the processing request messages, and returning processing response messages, said request processing unit for performing processing based on contents of the plurality of elements included in a first processing request message received, and creating a first processing response message;
a cache unit for caching the first processing response message in association with a first key created based on a content of at least one predetermined key element among the plurality of elements included in the first processing request message;
a message analysis unit for analyzing the second processing request message received, and sequentially extracting the contents of the plurality of elements;
a key creation unit for creating a second key based on the content of the key element among the plurality of elements included in the second processing request message; and
a cache management unit for returning, as the processing response message for the second processing request message, the first processing response message cached in the cache unit when the second key coincides with the first key, and when the second key does not coincide with the first key, notifying the contents of the plurality of elements extracted by the message analysis unit to the request processing unit, allowing the request processing unit to perform the processing based on the contents of the plurality of elements and to create the second processing response message, and returning the second processing response message created;
wherein said apparatus comprises a capability to selectively implement a combination of limitations taken from a group of limitations consisting of:
when the second key does not coincide with the first key, the cache management unit allows the cache unit to cache, in association with the second key, the second processing response message created by the request processing unit;the request processing unit comprising:
an input object creation unit for creating an input object including input parameters of processing functions for performing processing corresponding to the processing request message, based on the contents of the plurality of elements,
an application processing unit for receiving the input object, performing processing determined by the processing functions and creating an output object including output parameters of the processing functions, and
a processing response message creation unit for creating the processing response message based on the output object; and
further comprising:
a setting file storage unit for storing a setting file which specifies the key element for the processing request message for each of many kinds of the processing request messages,
wherein the key creation unit creates the second key based on a content of the key element for the second processing request message, and
an element content registration unit for registering the respective contents of the plurality of elements in an element content database, the contents being called by function call from the message analysis unit every time the respective contents of the plurality of elements included in the second processing request message are extracted and the contents being notified by the function call,
wherein the key creation unit creates the second key based on contents of all the key elements registered in the element content database if all the key elements are registered in the element content database, and
wherein the cache management unit notifies all the contents of the plurality of elements registered in the element content database to the request processing unit when all the contents of the plurality of elements are registered in the element content database and the second key does not coincide with the first key;
further comprising a setting file storage unit for storing a setting file which specifies the key element for the processing request message for each of many kinds of the processing request messages, wherein the key creation unit obtains the key element for the second processing request message from the setting file and creates the second key if all the key elements obtained from the setting file are registered in the element content database; andwhen it is judged that the second key does not coincide with the first key, every time the contents of the elements are notified by the function call from the message analysis unit after the judgment, the element content registration unit notifies the contents of the elements to the request processing unit by the function call;when the second key coincides with the first key, the cache management unit stops extraction of the contents of the plurality of elements by the message analysis unit; andfurther comprising:
a decoding unit for receiving the respective contents of the plurality of elements extracted by the message analysis unit, decoding the contents if the contents are coded, and sequentially adding names and contents of elements included in the contents to the plurality of elements, wherein the key creation unit creates the second key based on the content of the key element among the plurality of elements which are included in the second processing request message and to which the elements decoded by the decoding unit are added.