You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-cache-for-redis/cache-management-faq.yml
+7-7Lines changed: 7 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -135,13 +135,13 @@ sections:
135
135
136
136
### Recommendation
137
137
138
-
We recommend that customers set the minimum configuration value for IOCP and WORKER threads to something larger than the default value. We can't give one-size-fits-all guidance on this value because the right value for one application is likely be too high or low for another application. This setting can also affect the performance of other parts of complicated applications.Each customer needs to fine-tune this setting to their specific needs. A good starting place is 200 or 300, then test and tweak as needed.
138
+
We recommend that customers set the minimum configuration value for IOCP and WORKER threads to something larger than the default value. We can't give one-size-fits-all guidance on this value because the right value for one application is likely be too high or low for another application. This setting can also affect the performance of other parts of complicated applications.Each customer needs to fine-tune this setting to their specific needs. A good starting place is 200 or 300, then test and tweak as needed.
139
139
140
140
How to configure this setting:
141
141
142
-
- We recommend changing this setting programmatically by using the [ThreadPool.SetMinThreads (...)](/dotnet/api/system.threading.threadpool.setminthreads#System_Threading_ThreadPool_SetMinThreads_System_Int32_System_Int32_) method.
142
+
We recommend changing this setting programmatically by using the [ThreadPool.SetMinThreads (...)](/dotnet/api/system.threading.threadpool.setminthreads#System_Threading_ThreadPool_SetMinThreads_System_Int32_System_Int32_) method.
143
143
144
-
For example, in NET Framework, you set it in `Global.asax.cs` in the `Application_Start` method:
144
+
For example, in NET Framework, you set it in `Global.asax.cs` in the `Application_Start` method:
145
145
146
146
```csharp
147
147
private readonly int minThreads = 200;
@@ -154,7 +154,7 @@ sections:
154
154
ThreadPool.SetMinThreads(minThreads, minThreads);
155
155
}
156
156
```
157
-
If you use .NET Core, you set it in `Program.cs`, just before the call to `WebApplication.CreateBuilder()`:
157
+
If you use .NET Core, you set it in `Program.cs`, just before the call to `WebApplication.CreateBuilder()`:
158
158
159
159
```csharp
160
160
const int minThreads = 200
@@ -169,12 +169,12 @@ sections:
169
169
> The value specified by this method is a global setting, affecting the whole AppDomain. For example, if you have a 4-core machine and want to set `minWorkerThreads` and `minIoThreads` to 50 per CPU during run-time, use `ThreadPool.SetMinThreads(200, 200)`.
170
170
>
171
171
172
-
- It is also possible to specify the minimum threads setting by using the `minIoThreads` or `minWorkerThreads` [configuration setting](/previous-versions/dotnet/netframework-4.0/7w2sway1(v=vs.100)) under the `processModel` configuration element in `Machine.config`. `Machine.config` is typically located at `%SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\`.
172
+
It is also possible to specify the minimum threads setting by using the `minIoThreads` or `minWorkerThreads` [configuration setting](/previous-versions/dotnet/netframework-4.0/7w2sway1(v=vs.100) under the `processModel` configuration element in `Machine.config`. `Machine.config` is typically located at `%SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\`.
173
173
174
-
Setting the number of minimum threads in this way isn't recommended because it's a System-wide setting. If you do set it this way, you must restart the application pool for the change to take
174
+
Setting the number of minimum threads in this way isn't recommended because it's a system-wide setting. If you do set it this way, you must restart the application pool.
175
175
176
176
> [!NOTE]
177
-
> The value specified in this configuration element is a _per-core_ setting. For example, if you have a 4-core machine and want your `minIoThreads` setting to be 200 at runtime, use `\<processModel minIoThreads="50"\>``.
177
+
> The value specified in this configuration element is a _per-core_ setting. For example, if you have a 4-core machine and want your `minIoThreads` setting to be 200 at runtime, use `\<processModel minIoThreads="50"\>`.
Copy file name to clipboardExpand all lines: articles/redis/management-faq.yml
+8-8Lines changed: 8 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -65,7 +65,7 @@ sections:
65
65
- question: |
66
66
Important details about ThreadPool growth
67
67
answer: |
68
-
The CLR ThreadPool has two types of threads - "Worker" and "I/O Completion Port" (IOCP) threads.
68
+
The CLR ThreadPool has two types of threads - _Worker_ and _I/O Completion Port_ (IOCP) threads.
69
69
70
70
- Worker threads are used for things like processing the `Task.Run(…)`, or `ThreadPool.QueueUserWorkItem(…)` methods. These threads are also used by various components in the CLR when work needs to happen on a background thread.
71
71
- IOCP threads are used when asynchronous IO happens, such as when reading from the network.
@@ -88,18 +88,18 @@ sections:
88
88
WORKER: (Busy=3,Free=997,Min=4,Max=1000)
89
89
```
90
90
91
-
As shown In the example, you see that for IOCP thread there are six busy threads and the system is configured to allow four minimum threads. In this case, the client would see two 500-ms delays, because 6 > 4.
91
+
As shown in the example, you see that for IOCP thread there are six busy threads and the system is configured to allow four minimum threads. In this case, the client would see two 500-ms delays, because 6 > 4.
92
92
93
93
> [!NOTE]
94
94
> StackExchange.Redis can hit timeouts if growth of either IOCP or WORKER threads gets throttled.
95
95
96
96
### Recommendation
97
97
98
-
Wwe strongly recommend that customers set the minimum configuration value for IOCP and WORKER threads to something larger than the default value. We can't give one-size-fits-all guidance on this value because the right value for one application can be too high or low for another application. This setting can also affect the performance of other parts of complicated applications. Each customer needs to fine-tune this setting to their specific needs. A good starting place is 200 or 300, then test and tweak as needed.
98
+
We recommend that customers set the minimum configuration value for IOCP and WORKER threads to something larger than the default value. We can't give one-size-fits-all guidance on this value because the right value for one application can be too high or low for another application. This setting can also affect the performance of other parts of complicated applications. Each customer needs to fine-tune this setting to their specific needs. A good starting place is 200 or 300, then test and tweak as needed.
99
99
100
100
How to configure this setting:
101
101
102
-
_ We recommend changing this setting programmatically by using the [ThreadPool.SetMinThreads (...)](/dotnet/api/system.threading.threadpool.setminthreads#System_Threading_ThreadPool_SetMinThreads_System_Int32_System_Int32_) method in .NET Framework and .NET Core applications.
102
+
We recommend changing this setting programmatically using the [ThreadPool.SetMinThreads (...)](/dotnet/api/system.threading.threadpool.setminthreads#System_Threading_ThreadPool_SetMinThreads_System_Int32_System_Int32_) method in .NET Framework and .NET Core applications.
103
103
104
104
For example, in NET Framework, you set it in `Global.asax.cs` in the `Application_Start` method:
105
105
@@ -115,7 +115,7 @@ sections:
115
115
ThreadPool.SetMinThreads(minThreads, minThreads);
116
116
}
117
117
```
118
-
If you ae using .NET Core, you would set it in `Program.cs`, just before the call to `WebApplication.CreateBuilder()`:
118
+
If you are using .NET Core, you set it in `Program.cs`, just before the call to `WebApplication.CreateBuilder()`:
119
119
120
120
```csharp
121
121
const int minThreads = 200
@@ -129,12 +129,12 @@ sections:
129
129
> The value specified by this method is a global setting, affecting the whole AppDomain. For example, if you have a machine with four cores and want to set `minWorkerThreads` and `minIoThreads` to 50 per CPU during run-time, use `ThreadPool.SetMinThreads(200, 200)`.
130
130
>
131
131
132
-
- It's also possible to specify the minimum threads setting by using the `minIoThreads`` or `minWorkerThreads` [configuration setting](/previous-versions/dotnet/netframework-4.0/7w2sway1(v=vs.100)) under the `processModel` configuration element in `Machine.config`. `Machine.config` is typically located at `%SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\`.
132
+
It's also possible to specify the minimum threads setting by using the `minIoThreads`` or `minWorkerThreads` [configuration setting](/previous-versions/dotnet/netframework-4.0/7w2sway1(v=vs.100)) under the `<processModel>` configuration element in `Machine.config`. `Machine.config` is typically located at `%SystemRoot%\Microsoft.NET\Framework\[versionNumber]\CONFIG\`.
133
133
134
-
Setting the number of minimum threads in this way isn't recommended because it's a System-wide setting.
134
+
Setting the number of minimum threads in this way isn't recommended because it's a system-wide setting. If you do set it this way, you must restart the application pool.
135
135
136
136
> [!NOTE]
137
-
> The value specified in this configuration element is a _per-core_ setting. For example, if you have a machine with four cores and want your `minIoThreads` setting to be 200 at runtime, you would use `processModel minIoThreads="50"`.
137
+
> The value specified in this configuration element is a _per-core_ setting. For example, if you have a machine with four cores and want your `minIoThreads` setting to be 200 at runtime, you would use `\<processModel minIoThreads="50"\>`.
0 commit comments