Upstash es una base de datos Redis totalmente gestionada como servicio. Upstash funciona con la API de Redis®, lo que significa que puedes usar el cliente Redis nativo de Bun para conectarte a tu base de datos Upstash.
NOTE
TLS está habilitado por defecto para todas las bases de datos Upstash Redis.Crear un nuevo proyecto
Crea un nuevo proyecto ejecutando `bun init`:
```sh
bun init bun-upstash-redis
cd bun-upstash-redis
```
Crear una base de datos Upstash Redis
Ve al [panel de Upstash](https://console.upstash.com/) y crea una nueva base de datos Redis. Después de completar la [guía de inicio](https://upstash.com/docs/redis/overall/getstarted), verás la página de tu base de datos con información de conexión.
La página de la base de datos muestra dos métodos de conexión; HTTP y TLS. Para el cliente Redis de Bun, necesitas los detalles de conexión **TLS**. Esta URL comienza con `rediss://`.
<Frame>

</Frame>
Conectar usando el cliente Redis de Bun
Puedes conectarte a Upstash configurando variables de entorno con el cliente `redis` predeterminado de Bun.
Establece la variable de entorno `REDIS_URL` en tu archivo `.env` usando el endpoint de Redis (no la URL REST):
```ini .env
REDIS_URL=rediss://********@********.upstash.io:6379
```
El cliente Redis de Bun lee la información de conexión de `REDIS_URL` por defecto:
```ts index.ts
import { redis } from "bun";
// Lee de process.env.REDIS_URL automáticamente
await redis.set("counter", "0");
```
Alternativamente, puedes crear un cliente personalizado usando `RedisClient`:
```ts index.ts
import { RedisClient } from "bun";
const redis = new RedisClient(process.env.REDIS_URL);
```
#### Usar el cliente Redis
Ahora puedes usar el cliente Redis para interactuar con tu base de datos Upstash Redis:
```ts index.ts
import { redis } from "bun";
// Obtener un valor
let counter = await redis.get("counter");
// Establecer un valor si no existe
if (!counter) {
await redis.set("counter", "0");
}
// Incrementar el contador
await redis.incr("counter");
// Obtener el valor actualizado
counter = await redis.get("counter");
console.log(counter);
```
```txt
1
```
El cliente Redis maneja las conexiones automáticamente en segundo plano. No es necesario conectar o desconectar manualmente para operaciones básicas.