Upstash Redis in Vercel Functions
info
This is a quickstart for Vercel Serverless Functions. For Vercel Edge Functions, check this article.
Database Setup
Create a Redis database using Upstash Console or Upstash CLI. Select the same region with your Vercel Serverless Function to minimize the latency. Copy the UPSTASH_REDIS_REST_URL
and UPSTASH_REDIS_REST_TOKEN
for the next steps.
Project Setup
We will create a Next.js application and deploy to Vercel.
npx create-next-app@latest
Install @upstash/redis:
npm install @upstash/redis
The Code
Update pages/api/hello.js
and replace REST_URL and REST_TOKEN below:
import { Redis } from '@upstash/redis'
const redis = new Redis({
url: 'UPSTASH_REDIS_REST_URL',
token: 'UPSTASH_REDIS_REST_TOKEN',
})
export default async function handler(req, res) {
let count = await redis.incr("counter")
res.status(200).json({count: count})
}
Run & Deploy
You can run the app locally: npm run dev
and check http://localhost:3000/api/hello
Deploy your app with vercel deploy
info
You can also integrate your Vercel projects with Upstash using Vercel Integration module. Check this article.