<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Connect with Redis client API libraries on Docs</title>
    <link>https://redis.io/docs/latest/develop/clients/</link>
    <description>Recent content in Connect with Redis client API libraries on Docs</description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="https://redis.io/docs/latest/develop/clients/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Redis vector library guide (Python)</title>
      <link>https://redis.io/docs/latest/develop/clients/redis-vl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/redis-vl/</guid>
      <description>&lt;p&gt;See the &lt;a href=&#34;https://redis.io/docs/latest/develop/ai/redisvl/&#34;&gt;RedisVL Guide&lt;/a&gt; for more information.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Client-side caching introduction</title>
      <link>https://redis.io/docs/latest/develop/clients/client-side-caching/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/client-side-caching/</guid>
      <description>&lt;p&gt;&lt;em&gt;Client-side caching&lt;/em&gt; reduces network traffic between&#xA;a Redis client and the server, which generally improves performance.&lt;/p&gt;&#xA;&lt;p&gt;By default, an &lt;a href=&#34;https://en.wikipedia.org/wiki/Application_server&#34;&gt;application server&lt;/a&gt;&#xA;(which sits between the user app and the database) contacts the&#xA;Redis database server through the client library for every read request.&#xA;The diagram below shows the flow of communication from the user app,&#xA;through the application server to the database and back again:&lt;/p&gt;&#xA;&#xA;&#xA;&#x9;&#xA;&#xA;&lt;a href=&#39;https://redis.io/docs/latest/images/csc/CSCNoCache.drawio.svg&#39; sdata-lightbox=&#34;/images/csc/CSCNoCache.drawio.svg&#34;&gt;&#xA;&#x9;&lt;img src=&#39;https://redis.io/docs/latest/images/csc/CSCNoCache.drawio.svg&#39;&#xA;&#x9;&#x9;  &#xA;&#x9;&#x9; &#xA;&#x9;&#x9;  &#xA;&#x9;&#x9; /&gt;&#xA;&lt;/a&gt;&#xA;&#xA;&lt;p&gt;When you use client-side caching, the client library&#xA;maintains a local cache of data items as it retrieves them&#xA;from the database. When the same items are needed again, the client&#xA;can satisfy the read requests from the cache instead of the database:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Connection pools and multiplexing</title>
      <link>https://redis.io/docs/latest/develop/clients/pools-and-muxing/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/pools-and-muxing/</guid>
      <description>&lt;p&gt;Redis example code generally opens a connection, demonstrates&#xA;a command or feature, and then closes. Real-world code typically&#xA;has short bursts of communication with the server and periods of&#xA;inactivity in between. Opening and closing connections&#xA;involves some overhead and leads to inefficiency if you do&#xA;it frequently. This means that you can improve the performance of production&#xA;code by making as few separate connections as possible.&lt;/p&gt;&#xA;&lt;p&gt;Managing connections in your own code can be tricky, so the Redis&#xA;client libraries give you some help. The two basic approaches to&#xA;connection management are called &lt;em&gt;connection pooling&lt;/em&gt; and &lt;em&gt;multiplexing&lt;/em&gt;.&#xA;The &lt;a href=&#34;https://redis.io/docs/latest/develop/clients/redis-py/&#34;&gt;&lt;code&gt;redis-py&lt;/code&gt;&lt;/a&gt;,&#xA;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/jedis/&#34;&gt;&lt;code&gt;jedis&lt;/code&gt;&lt;/a&gt;, and&#xA;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/go/&#34;&gt;&lt;code&gt;go-redis&lt;/code&gt;&lt;/a&gt; clients support&#xA;connection pooling, while&#xA;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/dotnet/&#34;&gt;&lt;code&gt;NRedisStack&lt;/code&gt;&lt;/a&gt;&#xA;supports multiplexing.&#xA;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/lettuce/&#34;&gt;&lt;code&gt;Lettuce&lt;/code&gt;&lt;/a&gt;&#xA;supports both approaches.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Error handling</title>
      <link>https://redis.io/docs/latest/develop/clients/error-handling/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/error-handling/</guid>
      <description>&lt;p&gt;When working with Redis, errors can occur for various reasons, including network issues, invalid commands, or resource constraints. This guide explains the types of errors you might encounter and how to handle them effectively.&lt;/p&gt;&#xA;&lt;h2 id=&#34;categories-of-errors&#34; class=&#34;group relative&#34;&gt;&#xA;  Categories of errors&#xA;  &lt;a href=&#34;#categories-of-errors&#34; class=&#34;header-link opacity-0 group-hover:opacity-100 transition-opacity duration-200 ml-1 align-baseline&#34; aria-label=&#34;Link to this section&#34; title=&#34;Copy link to clipboard&#34;&gt;&#xA;    &lt;svg class=&#34;inline-block w-4 h-4 align-baseline&#34; fill=&#34;currentColor&#34; viewBox=&#34;0 0 20 20&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;&#xA;      &lt;path fill-rule=&#34;evenodd&#34; d=&#34;M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z&#34; clip-rule=&#34;evenodd&#34;&gt;&lt;/path&gt;&#xA;    &lt;/svg&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Redis errors fall into four main categories. The table below provides a quick overview of each type. Click on any error type to jump to its detailed section, which includes common causes, examples, handling strategies, and code examples.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Client-side geographic failover</title>
      <link>https://redis.io/docs/latest/develop/clients/failover/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/failover/</guid>
      <description>&lt;p&gt;Some Redis client libraries support&#xA;&lt;a href=&#34;https://en.wikipedia.org/wiki/Failover&#34;&gt;Client-side geographic failover&lt;/a&gt;&#xA;to improve the availability of connections to Redis databases. Use this page&#xA;to get a general overview of the concepts and then see the documentation for&#xA;your client library to learn how to configure it for failover and failback:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/jedis/failover/&#34;&gt;Jedis&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://redis.io/docs/latest/develop/clients/redis-py/failover/&#34;&gt;redis-py&lt;/a&gt; (preview)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;concepts&#34; class=&#34;group relative&#34;&gt;&#xA;  Concepts&#xA;  &lt;a href=&#34;#concepts&#34; class=&#34;header-link opacity-0 group-hover:opacity-100 transition-opacity duration-200 ml-1 align-baseline&#34; aria-label=&#34;Link to this section&#34; title=&#34;Copy link to clipboard&#34;&gt;&#xA;    &lt;svg class=&#34;inline-block w-4 h-4 align-baseline&#34; fill=&#34;currentColor&#34; viewBox=&#34;0 0 20 20&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;&#xA;      &lt;path fill-rule=&#34;evenodd&#34; d=&#34;M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z&#34; clip-rule=&#34;evenodd&#34;&gt;&lt;/path&gt;&#xA;    &lt;/svg&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;You may have several &lt;a href=&#34;https://redis.io/docs/latest/operate/rs/databases/active-active/&#34;&gt;Active-Active databases&lt;/a&gt;&#xA;or independent Redis servers that are all suitable to serve your app.&#xA;Typically, you would prefer to use some database endpoints over others for a particular&#xA;instance of your app (perhaps the ones that are closest geographically to the app server&#xA;to reduce network latency). However, if the best endpoint is not available due&#xA;to a failure, it is generally better to switch to another, suboptimal endpoint&#xA;than to let the app fail completely.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Smart client handoffs</title>
      <link>https://redis.io/docs/latest/develop/clients/sch/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://redis.io/docs/latest/develop/clients/sch/</guid>
      <description>&lt;p&gt;&lt;em&gt;Smart client handoffs (SCH)&lt;/em&gt; is a feature of Redis Cloud and&#xA;Redis Enterprise servers that lets them actively notify clients&#xA;about planned server maintenance shortly before it happens. This&#xA;lets a client reconnect or otherwise respond gracefully without significant&#xA;interruptions in service.&lt;/p&gt;&#xA;&lt;p&gt;SCH is primarily useful when server software or hardware upgrades&#xA;are required. It provides two main features to help the&#xA;client avoid disruptions in service during the maintenance period:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
