ThinkFree Conversion Server: How it works
Conversion server is built and deployed using enterprise-level Java technologies. As a result, Conversion server is cross-platform, highly scalable and flexible. In order to accommodate different usage scenarios, the Conversion server can be utilized in two system configurations -synchronous and asynchronous.
Synchronous conversion is typically used for on-demand HTML conversion. Real-time requests for HTML document views can be fulfilled with minimal delay. As a practical example Naver.com, Korea’s largest web portal/search engine, uses the synchronous configuration of Conversion server to show MS office email attachments to users of Naver.com’s web email service.
The Synchronous System Configuration

- 1. Web client sends HTML conversion request.
- 2. HTML converter retrieves the target document from the repository.
- 3. After completing the HTML conversion, the HTML output is stored in the repository.
- 4. Finally the HTML Converter sends a response (XML or JSON) back to the original client.
When using the Conversion server synchronously, it cannot efficiently handle a large volume of requests. As a consequence, the addition of many servers may be required to handle the load increase. Alternatively, you can configure the Conversion server in an asynchronous manner. The asynchronous mode is primarily used for bulk file conversions. This configuration is highly scalable allowing the server to handle a high volume of requests. However, a delay may occur due to the nature of queue-based processes.
The Asynchronous System Configuration

- 1. The client sends a HTML conversion request
- 2. After receiving a request, the HTML converter processes the request and places it in a queue.
- 3. The asynchronous listener dequeues a HTML conversion request.
- 4. The listener retrieves the target document from the repository.
- 5. After completing the HTML conversion, the HTML output is stored in the repository.
- 6. Finally, the database is updated with information about the converted result
(i.e. error status, document URL result).
|