On 12/21/10 8:54 AM, Сергей Григорьев wrote:
Hello All, My company is evaluating MINA for building a content-delivery system. I am in charge of creaing a pilot project. The prototype is a simple HTTP proxy which stands between the clients and a heavy-loaded web server. I've found an example of proxy in MINA souces, then tried it. It didn't work, because the connection between the client and proxy is relatively slow, and connection between proxy and the web server is very fast, so it consumed 2GBytes of memory. So we ended up with a proxy with a lot of queued messages from web server waiting to be delivered to the client. Then I decided to create a filter which watches for the number of messages in write queue (from proxy to the clients), and if the number is greater than 2, then the filter tells the other session (from proxy to server) to suspend reading, otherwise resumeReading. It ended up with all worker threads blocked:
Just a question : have you played with the received and send buffer size ? If you are sending big messages, this may have a huge impact on performances.
-- Regards, Cordialement, Emmanuel Lécharny www.iktek.com
