Client/server computing for transaction processing with superior coordinator optimization
A method of operating a first server data processing apparatus for use in coordinating a distributed transaction which is carried out by a plurality of server data processing apparatuses is disclosed, the method having steps of: receiving a registration request from a second server data processing apparatus; determining a machine address of the second server data processing apparatus that sent the registration request; keeping a list of the machine addresses of server data processing apparatuses that send registration requests to the first apparatus; determining the destination machine address of an outbound transactional request; determining whether the destination machine address of the outbound transactional request is included in the list of machine addresses kept by the keeping step; and when the destination machine address of the outbound transactional request is included in the list of machine addresses, substituting an identifier in the outbound transaction request identifying a transaction coordinator located on the first server apparatus with an identifier identifying a transaction coordinator located on the server apparatus having the destination machine address of the outbound transactional request.