A method performed by an application load balancer for balancing the load for an application across a plurality of instances of the application within a computer architecture, the instances of the application running on machines in a farm of machines, the computer architecture including the plurality of instances of the application and the application load balancer for the application, the application load balancer being part of the application, so that the application load balancer can access message content under the same security model as the application, the method comprising the steps of: receiving a first client initiated message directed to the application, the first client initiated message being the first message in a plurality of messages included in a message sequence; assigning an affinity identifier to the first client initiated message based on content of the first client initiated message, wherein the affinity identifier is used to pin the plurality of messages included in the message sequence to an instance of the application; determining that the assigned affinity identifier is not mapped to an instance of the application; mapping the affinity identifier to a specified instance of the application in accordance with a load balancing algorithm to balance the load for the application across the plurality of instances of the application; sending the first client initiated message to the specified instance of the application; receiving a second client initiated message included in the message sequence subsequent to receiving the first client initiated message; assigning the affinity identifier to the second client initiated message based on content of the second client initiated message; correlating the second client initiated message with the first client initiated message based on the mapping of the affinity identifier to the specified instance of the application, wherein correlating the second client initiated message with the first client initiated message comprises determining that the affinity identifier assigned to the second client initiated message is already mapped to the specified instance of the application; and sending the second client initiated message to the specified instance of the application in response to the correlation. receiving a first client initiated message directed to the application, the first client initiated message being the first message in a plurality of messages included in a message sequence; assigning an affinity identifier to the first client initiated message based on content of the first client initiated message, wherein the affinity identifier is used to pin the plurality of messages included in the message sequence to an instance of the application; determining that the assigned affinity identifier is not mapped to an instance of the application; mapping the affinity identifier to a specified instance of the application in accordance with a load balancing algorithm to balance the load for the application across the plurality of instances of the application; sending the first client initiated message to the specified instance of the application; receiving a second client initiated message included in the message sequence subsequent to receiving the first client initiated message; assigning the affinity identifier to the second client initiated message based on content of the second client initiated message; correlating the second client initiated message with the first client initiated message based on the mapping of the affinity identifier to the specified instance of the application, wherein correlating the second client initiated message with the first client initiated message comprises determining that the affinity identifier assigned to the second client initiated message is already mapped to the specified instance of the application; and sending the second client initiated message to the specified instance of the application in response to the correlation.