1. A system comprising: a translation server operable to perform machine translation obtaining translation model data from a translation model for translation between a source language and a target language and language model data from a language model for the target language, the translation server further operable to translate text in the source language into the target language using the obtained translation model data and language model data, the translation server comprising: a request queue operable to store requests for language model data to be obtained for translating a segment in the source language, and a segment translation server cache operable to store language model data obtained by the requests by the translation server, wherein the translation server is further operable to: process the translation of the segment using language model data from a second language model for the target language to produce an initial translation of the segment before the requests for the language data in the language model in the request queue are sent out, update the requests for the language model data of the language model in the request queue based on the initial translation, send out the updated requests in the request queue to obtain language model data from the language model for processing the initial translation, and after the updated requests are served and the data for the updated requests are stored in the segment translation server cache, process the initial translation with the data for the updated requests to produce a final translation.