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-best-practices.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,7 +29,7 @@ By following these best practices, you can help maximize the performance and cos
29
29
30
30
***Configure your [maxmemory-reserved setting](cache-configure.md#maxmemory-policy-and-maxmemory-reserved) to improve system responsiveness** under memory pressure conditions. This setting is especially important for write-heavy workloads or if you're storing larger values (100 KB or more) in Redis. It's recommended that you start with 10% of the size of your cache and then increase the percentage if you have write-heavy loads.
31
31
32
-
***Redis works best with smaller values**, so consider chopping up bigger data into multiple keys. In [this Redis discussion](https://stackoverflow.com/questions/55517224/what-is-the-ideal-value-size-range-for-redis-is-100kb-too-large/), some considerations are listed that you should consider carefully. Read [this article](cache-how-to-troubleshoot-client.md#large-request-or-response-size) for an example problem that can be caused by large values.
32
+
***Redis works best with smaller values**, so consider chopping up bigger data into multiple keys. In [this Redis discussion](https://stackoverflow.com/questions/55517224/what-is-the-ideal-value-size-range-for-redis-is-100kb-too-large/), some considerations are listed that you should consider carefully. Read [this article](cache-troubleshoot-client.md#large-request-or-response-size) for an example problem that can be caused by large values.
33
33
34
34
***Locate your cache instance and your application in the same region.** Connecting to a cache in a different region can significantly increase latency and reduce reliability. While you can connect from outside of Azure, it not recommended *especially when using Redis as a cache*. If you're using Redis as just a key/value store, latency may not be the primary concern.
35
35
@@ -39,7 +39,7 @@ By following these best practices, you can help maximize the performance and cos
39
39
> [!NOTE]
40
40
> This guidance is specific to the *connection attempt* and not related to the time you're willing to wait for an *operation* like GET or SET to complete.
41
41
42
-
***Avoid expensive operations** - Some Redis operations, like the [KEYS](https://redis.io/commands/keys) command, are *very* expensive and should be avoided. For more information, see some considerations around [long-running commands](cache-how-to-troubleshoot-server.md#long-running-commands)
42
+
***Avoid expensive operations** - Some Redis operations, like the [KEYS](https://redis.io/commands/keys) command, are *very* expensive and should be avoided. For more information, see some considerations around [long-running commands](cache-troubleshoot-server.md#long-running-commands)
43
43
44
44
***Use TLS encryption** - Azure Cache for Redis requires TLS encrypted communications by default. TLS versions 1.0, 1.1 and 1.2 are currently supported. However, TLS 1.0 and 1.1 are on a path to deprecation industry-wide, so use TLS 1.2 if at all possible. If your client library or tool doesn't support TLS, then enabling unencrypted connections can be done [through the Azure portal](cache-configure.md#access-ports) or [management APIs](https://docs.microsoft.com/rest/api/redis/redis/update). In such cases where encrypted connections aren't possible, placing your cache and client application into a virtual network would be recommended. For details on which ports are used for
Copy file name to clipboardExpand all lines: articles/azure-cache-for-redis/cache-faq.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -440,7 +440,7 @@ These tools enable you to monitor the health of your Azure Cache for Redis insta
440
440
<aname="cache-timeouts"></a>
441
441
442
442
### Why am I seeing timeouts?
443
-
Timeouts happen in the client that you use to talk to Redis. When a command is sent to the Redis server, the command is queued up and Redis server eventually picks up the command and executes it. However the client can time out during this process and if it does an exception is raised on the calling side. For more information on troubleshooting timeout issues, see [client-side troubleshooting](cache-how-to-troubleshoot-client.md) and [StackExchange.Redis timeout exceptions](cache-how-to-troubleshoot-timeouts.md#stackexchangeredis-timeout-exceptions).
443
+
Timeouts happen in the client that you use to talk to Redis. When a command is sent to the Redis server, the command is queued up and Redis server eventually picks up the command and executes it. However the client can time out during this process and if it does an exception is raised on the calling side. For more information on troubleshooting timeout issues, see [client-side troubleshooting](cache-troubleshoot-client.md) and [StackExchange.Redis timeout exceptions](cache-troubleshoot-timeouts.md#stackexchangeredis-timeout-exceptions).
1. Ensure you using the latest version of the [StackExchange.Redis NuGet package](https://www.nuget.org/packages/StackExchange.Redis/). There are bugs constantly being fixed in the code to make it more robust to timeouts so having the latest version is important.
82
-
1. If your requests are bound by bandwidth limitations on the server orclient, ittakeslongerforthemtocompleteandcancausetimeouts. Toseeifyourtimeoutisbecauseofnetworkbandwidthontheserver, see [Server-sidebandwidthlimitation](cache-how-to-troubleshoot-server.md#server-side-bandwidth-limitation). Toseeifyourtimeoutisbecauseofclientnetworkbandwidth, see [Client-sidebandwidthlimitation](cache-how-to-troubleshoot-client.md#client-side-bandwidth-limitation).
82
+
1. If your requests are bound by bandwidth limitations on the server orclient, ittakeslongerforthemtocompleteandcancausetimeouts. Toseeifyourtimeoutisbecauseofnetworkbandwidthontheserver, see [Server-sidebandwidthlimitation](cache-troubleshoot-server.md#server-side-bandwidth-limitation). Toseeifyourtimeoutisbecauseofclientnetworkbandwidth, see [Client-sidebandwidthlimitation](cache-troubleshoot-client.md#client-side-bandwidth-limitation).
83
83
1. AreyougettingCPUboundontheserverorontheclient?
84
84
85
85
-Checkifyou're getting bound by CPU on your client. High CPU could cause the request to not be processed within the `synctimeout` interval and cause a request to time out. Moving to a larger client size or distributing the load can help to control this problem.
86
-
-Checkifyou're getting CPU bound on the server by monitoring the CPU [cache performance metric](cache-how-to-monitor.md#available-metrics-and-reporting-intervals). Requests coming in while Redis is CPU bound can cause those requests to time out. To address this condition, you can distribute the load across multiple shards in a premium cache, or upgrade to a larger size or pricing tier. For more information, see [Server-side bandwidth limitation](cache-how-to-troubleshoot-server.md#server-side-bandwidth-limitation).
87
-
1. Aretherecommandstakinglongtimetoprocessontheserver?Long-runningcommandsthataretakinglongtimetoprocessontheredis-servercancausetimeouts. Formoreinformationaboutlong-runningcommands, see [Long-runningcommands](cache-how-to-troubleshoot-server.md#long-running-commands). YoucanconnecttoyourAzureCachefor Redis instance using the redis-cli client or the [Redis Console](cache-configure.md#redis-console). Then, runthe [SLOWLOG](https://redis.io/commands/slowlog) command to see if there are requests slower than expected. Redis Server and StackExchange.Redis are optimized for many small requests rather than fewer large requests. Splitting your data into smaller chunks may improve things here.
86
+
-Checkifyou're getting CPU bound on the server by monitoring the CPU [cache performance metric](cache-how-to-monitor.md#available-metrics-and-reporting-intervals). Requests coming in while Redis is CPU bound can cause those requests to time out. To address this condition, you can distribute the load across multiple shards in a premium cache, or upgrade to a larger size or pricing tier. For more information, see [Server-side bandwidth limitation](cache-troubleshoot-server.md#server-side-bandwidth-limitation).
87
+
1. Aretherecommandstakinglongtimetoprocessontheserver?Long-runningcommandsthataretakinglongtimetoprocessontheredis-servercancausetimeouts. Formoreinformationaboutlong-runningcommands, see [Long-runningcommands](cache-troubleshoot-server.md#long-running-commands). YoucanconnecttoyourAzureCachefor Redis instance using the redis-cli client or the [Redis Console](cache-configure.md#redis-console). Then, runthe [SLOWLOG](https://redis.io/commands/slowlog) command to see if there are requests slower than expected. Redis Server and StackExchange.Redis are optimized for many small requests rather than fewer large requests. Splitting your data into smaller chunks may improve things here.
88
88
89
89
Forinformationonconnectingtoyourcache's SSL endpoint using redis-cli and stunnel, see the blog post [Announcing ASP.NET Session State Provider for Redis Preview Release](https://blogs.msdn.com/b/webdev/archive/2014/05/12/announcing-asp-net-session-state-provider-for-redis-preview-release.aspx).
-Monitorthe `used_memory_rss` cachemetric. Whenthisvalueapproachesthesizeoftheircache, you're likely to start seeing performance issues. Distribute the data across multiple shards if you'reusingapremiumcache, orupgradetoalargercachesize.
115
115
116
-
Formoreinformation, see [MemorypressureonRedisserver](cache-how-to-troubleshoot-server.md#memory-pressure-on-redis-server).
116
+
Formoreinformation, see [MemorypressureonRedisserver](cache-troubleshoot-server.md#memory-pressure-on-redis-server).
0 commit comments