Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Communications Framework (ECF) » Connection persistence?(how to let ecf use persisted connection)
icon5.gif  Connection persistence? [message #656701] Mon, 28 February 2011 08:13 Go to next message
Meng Xin Zhu is currently offline Meng Xin Zhu
Messages: 5
Registered: June 2010
Junior Member
My application is built on p2, so the ECF is the framework for downloading files from remote server.

I deployed multiple repositories in a same remote server with different location, I want to my application load all of those repositories. So p2 uses ecf to download the metadata files from remote server.

Currently the application is packaged with httpclient bundle, I enabled the log option of httpclient.

I found the connection always is closed after trying to get a file from remote server by p2, then create the connection to the same server again when trying to get next file from the server.

The connecting to the server looks like it is quite time consuming. Is there a way to let ecf use the persisted connection, not close the connection every time?

2011/02/28 11:54:36:200 CST [DEBUG] header - << "Connection: close[\r][\n]"
2011/02/28 11:54:36:200 CST [DEBUG] header - << "[\r][\n]"
2011/02/28 11:54:36:200 CST [DEBUG] HttpMethodBase - Should close connection in response to directive: close
2011/02/28 11:54:36:201 CST [DEBUG] HttpConnection - Releasing connection back to connection manager.
2011/02/28 11:54:36:201 CST [DEBUG] MultiThreadedHttpConnectionManager - Freeing connection, hostConfig=HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net]
2011/02/28 11:54:36:202 CST [DEBUG] IdleConnectionHandler - Adding connection at: 1298865276202
2011/02/28 11:54:36:202 CST [DEBUG] MultiThreadedHttpConnectionManager - Notifying no-one, there are no waiting threads
2011/02/28 11:54:36:203 CST [DEBUG] DefaultHttpParams - Set parameter http.socket.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.connection.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.connection-manager.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.authentication.credential-provider = org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientR etrieveFileTransfer$ECFCredentialsProvider@1497b1
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.authentication.credential-provider = org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientR etrieveFileTransfer$ECFCredentialsProvider@1497b1
2011/02/28 11:54:36:204 CST [DEBUG] MultiThreadedHttpConnectionManager - HttpConnectionManager.getConnection: config = HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net], timeout = 120000
2011/02/28 11:54:36:205 CST [DEBUG] MultiThreadedHttpConnectionManager - Allocating new connection, hostConfig=HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net]
2011/02/28 11:54:36:205 CST [DEBUG] HttpConnection - Open connection to d3kdti4u32zwya.cloudfront.net:80
Re: Connection persistence? [message #671708 is a reply to message #656701] Wed, 18 May 2011 18:20 Go to previous message
Scott Lewis is currently offline Scott Lewis
Messages: 970
Registered: July 2009
Senior Member
Meng Xin Zhu wrote on Mon, 28 February 2011 03:13
My application is built on p2, so the ECF is the framework for downloading files from remote server.

I deployed multiple repositories in a same remote server with different location, I want to my application load all of those repositories. So p2 uses ecf to download the metadata files from remote server.

Currently the application is packaged with httpclient bundle, I enabled the log option of httpclient.

I found the connection always is closed after trying to get a file from remote server by p2, then create the connection to the same server again when trying to get next file from the server.

The connecting to the server looks like it is quite time consuming. Is there a way to let ecf use the persisted connection, not close the connection every time?

2011/02/28 11:54:36:200 CST [DEBUG] header - << "Connection: close[\r][\n]"
2011/02/28 11:54:36:200 CST [DEBUG] header - << "[\r][\n]"
2011/02/28 11:54:36:200 CST [DEBUG] HttpMethodBase - Should close connection in response to directive: close
2011/02/28 11:54:36:201 CST [DEBUG] HttpConnection - Releasing connection back to connection manager.
2011/02/28 11:54:36:201 CST [DEBUG] MultiThreadedHttpConnectionManager - Freeing connection, hostConfig=HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net]
2011/02/28 11:54:36:202 CST [DEBUG] IdleConnectionHandler - Adding connection at: 1298865276202
2011/02/28 11:54:36:202 CST [DEBUG] MultiThreadedHttpConnectionManager - Notifying no-one, there are no waiting threads
2011/02/28 11:54:36:203 CST [DEBUG] DefaultHttpParams - Set parameter http.socket.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.connection.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.connection-manager.timeout = 120000
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.authentication.credential-provider = org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientR etrieveFileTransfer$ECFCredentialsProvider@1497b1
2011/02/28 11:54:36:204 CST [DEBUG] DefaultHttpParams - Set parameter http.authentication.credential-provider = org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientR etrieveFileTransfer$ECFCredentialsProvider@1497b1
2011/02/28 11:54:36:204 CST [DEBUG] MultiThreadedHttpConnectionManager - HttpConnectionManager.getConnection: config = HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net], timeout = 120000
2011/02/28 11:54:36:205 CST [DEBUG] MultiThreadedHttpConnectionManager - Allocating new connection, hostConfig=HostConfiguration[host=http://d3kdti4u32zwya.cloudfront.net]
2011/02/28 11:54:36:205 CST [DEBUG] HttpConnection - Open connection to d3kdti4u32zwya.cloudfront.net:80


I suspect that this may be related to this bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=344905

Also note that there has recently been a contribution for httpclient 4.1

https://bugs.eclipse.org/bugs/show_bug.cgi?id=251740

and that discussion may also lead to a change in policy WRT connection close.

Previous Topic:remoteservice API not using the configured proxy?
Next Topic:ECF 3.5.1 released
Goto Forum:
  


Current Time: Thu Oct 02 04:32:23 GMT 2014

Powered by FUDForum. Page generated in 0.01693 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software