Try Dive's suggestion of not requesting keep alive for rpc requests

Only going to do this with the user service's deregister_messageserver and get_user_friend_list first of all to see if this can isolate any effect.
0.6.8-post-fixes
justincc 2009-12-15 17:38:28 +00:00
parent b52518bbfe
commit 44f57b4dc4
2 changed files with 29 additions and 29 deletions

View File

@ -113,7 +113,7 @@ namespace OpenSim.Grid.UserServer.Modules
// Message Server ---> User Server // Message Server ---> User Server
m_httpServer.AddXmlRPCHandler("register_messageserver", XmlRPCRegisterMessageServer); m_httpServer.AddXmlRPCHandler("register_messageserver", XmlRPCRegisterMessageServer);
m_httpServer.AddXmlRPCHandler("agent_change_region", XmlRPCUserMovedtoRegion); m_httpServer.AddXmlRPCHandler("agent_change_region", XmlRPCUserMovedtoRegion);
m_httpServer.AddXmlRPCHandler("deregister_messageserver", XmlRPCDeRegisterMessageServer); m_httpServer.AddXmlRPCHandler("deregister_messageserver", XmlRPCDeRegisterMessageServer, false);
} }
public void RegisterMessageServer(string URI, MessageServerInfo serverData) public void RegisterMessageServer(string URI, MessageServerInfo serverData)
@ -167,37 +167,37 @@ namespace OpenSim.Grid.UserServer.Modules
} }
public XmlRpcResponse XmlRPCRegisterMessageServer(XmlRpcRequest request, IPEndPoint remoteClient) public XmlRpcResponse XmlRPCRegisterMessageServer(XmlRpcRequest request, IPEndPoint remoteClient)
{ {
m_log.DebugFormat( m_log.DebugFormat(
"[MSGSERVER]: Beginning processing message service registration request from {0}", "[MSGSERVER]: Beginning processing message service registration request from {0}",
remoteClient.Address); remoteClient.Address);
XmlRpcResponse response = new XmlRpcResponse(); XmlRpcResponse response = new XmlRpcResponse();
Hashtable requestData = (Hashtable)request.Params[0]; Hashtable requestData = (Hashtable)request.Params[0];
Hashtable responseData = new Hashtable(); Hashtable responseData = new Hashtable();
if (requestData.Contains("uri")) if (requestData.Contains("uri"))
{ {
string URI = (string)requestData["uri"]; string URI = (string)requestData["uri"];
string sendkey = (string)requestData["sendkey"]; string sendkey = (string)requestData["sendkey"];
string recvkey = (string)requestData["recvkey"]; string recvkey = (string)requestData["recvkey"];
MessageServerInfo m = new MessageServerInfo(); MessageServerInfo m = new MessageServerInfo();
m.URI = URI; m.URI = URI;
m.sendkey = sendkey; m.sendkey = sendkey;
m.recvkey = recvkey; m.recvkey = recvkey;
RegisterMessageServer(URI, m); RegisterMessageServer(URI, m);
responseData["responsestring"] = "TRUE"; responseData["responsestring"] = "TRUE";
response.Value = responseData; response.Value = responseData;
m_log.DebugFormat( m_log.DebugFormat(
"[MSGSERVER]: Successfully processed message service registration request from {0}", "[MSGSERVER]: Successfully processed message service registration request from {0}",
remoteClient.Address); remoteClient.Address);
} }
else else
{ {
m_log.ErrorFormat( m_log.ErrorFormat(
"[MSGSERVER]: Message service registration request from {0} did not contain a uri, not registering", "[MSGSERVER]: Message service registration request from {0} did not contain a uri, not registering",
remoteClient.Address); remoteClient.Address);
} }
return response; return response;

View File

@ -71,7 +71,7 @@ namespace OpenSim.Grid.UserServer.Modules
m_httpServer.AddXmlRPCHandler("add_new_user_friend", XmlRpcResponseXmlRPCAddUserFriend); m_httpServer.AddXmlRPCHandler("add_new_user_friend", XmlRpcResponseXmlRPCAddUserFriend);
m_httpServer.AddXmlRPCHandler("remove_user_friend", XmlRpcResponseXmlRPCRemoveUserFriend); m_httpServer.AddXmlRPCHandler("remove_user_friend", XmlRpcResponseXmlRPCRemoveUserFriend);
m_httpServer.AddXmlRPCHandler("update_user_friend_perms", XmlRpcResponseXmlRPCUpdateUserFriendPerms); m_httpServer.AddXmlRPCHandler("update_user_friend_perms", XmlRpcResponseXmlRPCUpdateUserFriendPerms);
m_httpServer.AddXmlRPCHandler("get_user_friend_list", XmlRpcResponseXmlRPCGetUserFriendList); m_httpServer.AddXmlRPCHandler("get_user_friend_list", XmlRpcResponseXmlRPCGetUserFriendList, false);
} }
public XmlRpcResponse FriendListItemListtoXmlRPCResponse(List<FriendListItem> returnUsers) public XmlRpcResponse FriendListItemListtoXmlRPCResponse(List<FriendListItem> returnUsers)