diff options
author | John Hurliman | 2009-10-14 11:43:31 -0700 |
---|---|---|
committer | John Hurliman | 2009-10-14 11:43:31 -0700 |
commit | 0d2e6463d714bce8a6a628bd647c625feeeae8f6 (patch) | |
tree | 1d4a805e65932c225a4c6a2b219b23840b3288a9 /OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs | |
parent | * Split Task category into Task and State (diff) | |
download | opensim-SC_OLD-0d2e6463d714bce8a6a628bd647c625feeeae8f6.zip opensim-SC_OLD-0d2e6463d714bce8a6a628bd647c625feeeae8f6.tar.gz opensim-SC_OLD-0d2e6463d714bce8a6a628bd647c625feeeae8f6.tar.bz2 opensim-SC_OLD-0d2e6463d714bce8a6a628bd647c625feeeae8f6.tar.xz |
* Minimized the number of times textures are pulled off the priority queue
* OnQueueEmpty is still called async, but will not be called for a given category if the previous callback for that category is still running. This is the most balanced behavior I could find, and seems to work well
* Added support for the old [ClientStack.LindenUDP] settings (including setting the receive buffer size) and added the new token bucket and global throttle settings
* Added the AssetLoaderEnabled config variable to optionally disable loading assets from XML every startup. This gives a dramatic improvement in startup times for those who don't need the functionality every startup
Diffstat (limited to 'OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs')
-rw-r--r-- | OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs b/OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs index 858a03c..adad4c3 100644 --- a/OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs +++ b/OpenSim/Region/ClientStack/LindenUDP/ThrottleRates.cs | |||
@@ -51,6 +51,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
51 | public int Texture; | 51 | public int Texture; |
52 | /// <summary>Drip rate for asset packets</summary> | 52 | /// <summary>Drip rate for asset packets</summary> |
53 | public int Asset; | 53 | public int Asset; |
54 | /// <summary>Drip rate for the parent token bucket</summary> | ||
55 | public int Total; | ||
54 | 56 | ||
55 | /// <summary>Maximum burst rate for resent packets</summary> | 57 | /// <summary>Maximum burst rate for resent packets</summary> |
56 | public int ResendLimit; | 58 | public int ResendLimit; |
@@ -66,6 +68,8 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
66 | public int TextureLimit; | 68 | public int TextureLimit; |
67 | /// <summary>Maximum burst rate for asset packets</summary> | 69 | /// <summary>Maximum burst rate for asset packets</summary> |
68 | public int AssetLimit; | 70 | public int AssetLimit; |
71 | /// <summary>Burst rate for the parent token bucket</summary> | ||
72 | public int TotalLimit; | ||
69 | 73 | ||
70 | /// <summary> | 74 | /// <summary> |
71 | /// Default constructor | 75 | /// Default constructor |
@@ -77,21 +81,25 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
77 | { | 81 | { |
78 | IConfig throttleConfig = config.Configs["ClientStack.LindenUDP"]; | 82 | IConfig throttleConfig = config.Configs["ClientStack.LindenUDP"]; |
79 | 83 | ||
80 | Resend = throttleConfig.GetInt("ResendDefault", 12500); | 84 | Resend = throttleConfig.GetInt("resend_default", 12500); |
81 | Land = throttleConfig.GetInt("LandDefault", 500); | 85 | Land = throttleConfig.GetInt("land_default", 500); |
82 | Wind = throttleConfig.GetInt("WindDefault", 500); | 86 | Wind = throttleConfig.GetInt("wind_default", 500); |
83 | Cloud = throttleConfig.GetInt("CloudDefault", 500); | 87 | Cloud = throttleConfig.GetInt("cloud_default", 500); |
84 | Task = throttleConfig.GetInt("TaskDefault", 500); | 88 | Task = throttleConfig.GetInt("task_default", 500); |
85 | Texture = throttleConfig.GetInt("TextureDefault", 500); | 89 | Texture = throttleConfig.GetInt("texture_default", 500); |
86 | Asset = throttleConfig.GetInt("AssetDefault", 500); | 90 | Asset = throttleConfig.GetInt("asset_default", 500); |
87 | 91 | ||
88 | ResendLimit = throttleConfig.GetInt("ResendLimit", 18750); | 92 | Total = throttleConfig.GetInt("client_throttle_max_bps", 0); |
89 | LandLimit = throttleConfig.GetInt("LandLimit", 29750); | 93 | |
90 | WindLimit = throttleConfig.GetInt("WindLimit", 18750); | 94 | ResendLimit = throttleConfig.GetInt("resend_limit", 18750); |
91 | CloudLimit = throttleConfig.GetInt("CloudLimit", 18750); | 95 | LandLimit = throttleConfig.GetInt("land_limit", 29750); |
92 | TaskLimit = throttleConfig.GetInt("TaskLimit", 55750); | 96 | WindLimit = throttleConfig.GetInt("wind_limit", 18750); |
93 | TextureLimit = throttleConfig.GetInt("TextureLimit", 55750); | 97 | CloudLimit = throttleConfig.GetInt("cloud_limit", 18750); |
94 | AssetLimit = throttleConfig.GetInt("AssetLimit", 27500); | 98 | TaskLimit = throttleConfig.GetInt("task_limit", 55750); |
99 | TextureLimit = throttleConfig.GetInt("texture_limit", 55750); | ||
100 | AssetLimit = throttleConfig.GetInt("asset_limit", 27500); | ||
101 | |||
102 | TotalLimit = throttleConfig.GetInt("client_throttle_max_bps", 0); | ||
95 | } | 103 | } |
96 | catch (Exception) { } | 104 | catch (Exception) { } |
97 | } | 105 | } |