OpenSimMirror/OpenSim
Justin Clark-Casey (justincc) 84cea46c10 Add experimental OutgoingQueueRefillEngine to handle queue refill processing on a controlled number of threads rather than the threadpool.
Disabled by default.  Currently can only be enabled with console "debug lludp oqre start" command, though this can be started and stopped whilst simulator is running.
When a connection requires packet queue refill processing (used to populate queues with entity updates, entity prop updates and image queue updates), this is done via Threadpool requests.
However, with a very high number of connections (e.g. 100 root + 300 child) a very large number of simultaneous requests may be causing performance issues.
This commit adds an experimental engine for processing these requests from a queue with a persistent thread instead.
Unlike inbound processing, there are no network requests in this processing that might hold the thread up for a long time.
Early implementation - currently only one thread which may (or may not) get overloaded with requests.  Added for testing purposes.
2014-08-19 00:17:12 +01:00
..
Addons On teleport to a region that already has a child agent established (e.g. a neighbour) don't resend all the initial avatar and object data again. 2014-08-15 21:47:34 +01:00
ApplicationPlugins
Capabilities
ConsoleClient
Data
Framework If a user moves back in sight of a child region before the agent has been closed on teleport, don't unnecessarily resend all avatar and object data about that region. 2014-08-15 21:47:34 +01:00
Region Add experimental OutgoingQueueRefillEngine to handle queue refill processing on a controlled number of threads rather than the threadpool. 2014-08-19 00:17:12 +01:00
Server Update OpenID server handler with proper interface. fixes http://opensimulator.org/mantis/view.php?id=7301 2014-08-13 20:06:07 -04:00
Services
Tests
Tools Don't allow the last behavior to be removed from a pCampbot bot 2014-08-15 22:44:31 +01:00