Abstract:
PROBLEM TO BE SOLVED: To provide a method that adjusts one time authentication of a client between sets of a store in order to execute transaction at an optional store or an optional subset of a store. SOLUTION: In a client/server environment which includes participating servers 101 and a controller server 102 and has a server group 104 in which each server 101 can communicate with the server 102, this method with which operations are adjusted between servers of the group 104 includes (1) a step where communication is performed between a client 103 and a server of the group 104 by using a limited procedure or an undefined protocol through which state information is exchanged between the client 103 and the server, (2) a step where the client 103 transfers a request for an operation to one of servers and (3) a step where plural servers communicate with the server 102 in response to the request and the operations of at least some of servers are adjusted.
Abstract:
A method for communicating information from a first computing node to at least one of the following: a storage device and a second computing node. The first computing node is monitored to collect at least one estimate of available resources, and based on this estimate, an amount of data collected is modified. Then, the modified data is sent to at least one of the following: the storage device and the second computing node. This invention also provides for the determination of an optimum batch size for aggregating data wherein, for a number of batch sizes, costs are estimated for sending batched information to persistent storage and for losing batched data. Then, the optimum batch size is selected from the number of different batch sizes based on sums of these costs. This invention also provides for selective compression of data, wherein it is determined which of a number of compression algorithms do not incur an overhead that exceeds available resources. Then, one of the determined algorithms is selected to maximize compression.
Abstract:
Techniques are disclosed for processing requests in a data processing system. While the principles of the invention are not limited to a particular domain, they are particularly suitable for use in an electronic trading system. By way of example of one aspect of the invention, a method for directing requests to at least one node in a system comprising multiple nodes and a plurality of requests comprises associating a number to each request, assigning at least one number to each node so as to balance a load across the nodes, and sending & request to a node based on the number associated to the request. Various other aspects are disclosed.
Abstract:
PROBLEM TO BE SOLVED: To regulate one authentication for a client among store sets to execute transaction in an optional store or an optional sub-session of the store. SOLUTION: This method for including an entry server and a controller server, and for coordinating actions among servers of a server group under a client/server environment having the server group in which the each entry server is communicated with the control server includes the following steps 1, 2 and 3. In the step 1, the communication is carried out using a protocol limited in a procedure for transferring condition information between the client and the server among the servers of the client and server groups, or an undefined protocol. In the step 2, an operation request is transferred from the client to one of the servers. In the step 3, the communication with the control server is carried out among the plurality of servers in response to the request to coordinating the actions for at least some of the servers. COPYRIGHT: (C)2004,JPO
Abstract:
PROBLEM TO BE SOLVED: To facilitate the retrieval of an object while using a cache by sending back an object requested from another node among plural nodes by using any one of plural protocols. SOLUTION: A client requests the object stored in a server (190). The request of the object is received by a network (192). The request of the object is routed to one cache node by a network dispatcher (194). It is determined whether the cache node to receive the request of the object from the network dispatcher is the first owner of the object or not (196). When it is the first owner, the cache node serves the request of the client (197). Then, the first owner retrieves the requested object by communicating with the server (198).
Abstract:
Coordinated, hierarchical caching of objects in a client/server system. In the described embodiment, an encapsulated cluster 70 comprises one or more level 1 nodes 20, e.g. Web server accelerators or routers, each including at least one level 1 cache 30, and one or more level 2 nodes 40, e.g. Web servers, within which the objects are permanently stored or generated on request. Each level 2 node is coupled to at least one level 1 node and includes one or more level 2 caches 50. More levels can be included. Object caching is based on various described criteria: for instance, the level 2 cache(s) can be used to cache dynamic pages which are expensive to create, while the level 1 cache(s) can be used to cache static pages, and hot dynamic pages. Different cache replacement policies for the level 1 cache(s) are also described (Fig. 4), in order to optimize performance whether the performance bottleneck is router processing power, server processing power, or the network between the server(s) and the router.
Abstract:
A determination can be made of how changes to underlying data affect the value of objects. Examples of applications include: caching dynamic Web pages; client-server applications whereby a server sending objects (which are changing all the time) to multiple clients can track which versions are sent to which clients and how obsolete the versions are; and any situation where it is necessary to maintain and uniquely identify several versions of objects, update obsolete objects, quantitatively assess how different two versions of the same object are, and/or maintain consistency among a set of objects. A directed graph, called an object dependence graph, may be used to represent the data dependencies between objects. Another aspect is constructing and maintaining objects to associate changes in remote data with cached objects. If data in a remote data source changes, database change notifications are used to "trigger" a dynamic rebuild of associated objects. Thus, obsolete objects can be dynamically replaced with fresh objects. The objects can be complex objects, such as dynamic Web pages or compound-complex objects, and the data can be underlying data in a database. The update can include either: storing a new version of the object in the cache; or deleting an object from the cache. Caches on multiple servers can also be synchronized with the data in a single common database. Updated information, whether new pages or delete orders, can be broadcast to a set of server nodes, permitting many systems to simultaneously benefit from the advantages of prefetching and providing a high degree of scaleability.
Abstract:
A determination can be made of how changes to underlying data affect the value of objects. Examples of applications include: caching dynamic Web pages; client-server applications whereby a server sending objects (which are changing all the time) to multiple clients can track which versions are sent to which clients and how obsolete the versions are; and any situation where it is necessary to maintain and uniquely identify several versions of objects, update obsolete objects, quantitatively assess how different two versions of the same object are, and/or maintain consistency among a set of objects. A directed graph, called an object dependence graph, may be used to represent the data dependencies between objects. Another aspect is constructing and maintaining objects to associate changes in remote data with cached objects. If data in a remote data source changes, database change notifications are used to "trigger" a dynamic rebuild of associated objects. Thus, obsolete objects can be dynamically replaced with fresh objects. The objects can be complex objects, such as dynamic Web pages or compound-complex objects, and the data can be underlying data in a database. The update can include either: storing a new version of the object in the cache; or deleting an object from the cache. Caches on multiple servers can also be synchronized with the data in a single common database. Updated information, whether new pages or delete orders, can be broadcast to a set of server nodes, permitting many systems to simultaneously benefit from the advantages of prefetching and providing a high degree of scalability.
Abstract:
In a client-server environment having a server group including one or more participating servers and one or more controller servers, where each participating server can communicate with at least one controller server, a method for coordinating actions among the servers in the server group comprising the steps of: (1) communicating between a client and at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers; (2) transmitting a request for an action from the client to one of the servers; and (3) communicating among a plurality of servers with at least one controller server coordinating actions of at least some of the servers in response to the request. A preferred embodiment of the method includes providing client identification information once by the client during a conversation, verifying the client identification information by one or more controller servers, generating client authentication information by one or more controller servers that is preserved in the conversation, and using the preserved client authentication information to automatically authenticate the client during the remainder of the conversation. Another preferred embodiment of the method includes transmitting a request by a client requiring participation by a plurality of servers and communicating among the servers with at least one controller server coordinating the actions of a plurality of servers in response to the request from the client.