Serverless Cloud는 Serverless Framework를 개발한 팀이 선보이는 백엔드 플랫폼입니다. 클라우드 런타임, CLI, SDK를 하나의 플랫폼에서 통합 제공하여 개발자 생산성을 크게 높여주는 것이 특징입니다. 이 글에서는 Upstash Redis(서버리스 Redis)에서 데이터를 조회하는 Next.js 애플리케이션을 만들고, 이를 Serverless Cloud에 배포하는 과정을 단계별로 살펴보겠습니다.
환경 설정
먼저 다음 명령어를 실행해 Serverless Cloud 프로젝트를 초기화합니다.
npm init cloud
? Do you want to create a new app or work on an existing one?
ℹ You've selected Create new app.
ℹ Please choose an app template to generate in this directory.
ℹ You've selected Next.js.
ℹ Please enter a name for your app.
ℹ You've entered serverless-cloud.
템플릿 선택 단계에서 Next.js를 고르면 해당 디렉터리에 새로운 Next.js 프로젝트가 자동으로 생성됩니다.
다음으로 프로젝트 폴더에서 Upstash Redis 클라이언트를 설치합니다.
npm install @upstash/redis
Upstash 콘솔에 접속해 Redis 데이터베이스를 생성한 뒤, CLI를 통해 아래와 같이 users 데이터를 입력합니다.
set users '[{ "id": "12", "name": "John Doe"}, { "id": "13", "name": "Jane Smith"}]'

이제 API 라우트 파일인 user.js를 아래와 같이 작성하고, 코드 안의 REST URL과 토큰 값을 Upstash 콘솔에서 발급받은 실제 값으로 교체합니다.
user.js
// Next.js API route support: https://nextjs.org/docs/api-routes/introduction
import { Redis } from "@upstash/redis";
const redis = new Redis({
url: "REPLACE_HERE",
token: "REPLACE_HERE",
});
export default async function handler(req, res) {
const data = await redis.get("users");
res.status(200).json({ users: data });
}
테스트 및 배포
Serverless Cloud의 인터랙티브 CLI에서 dev 명령어를 실행합니다. 그런 다음 브라우저에서 https://localhost:3000/ 에 접속하면 아래와 같은 화면을 확인할 수 있습니다.

앞서 Redis에 저장했던 사용자 목록이 정상적으로 출력되는 것을 볼 수 있습니다.
애플리케이션을 클라우드에 배포하려면 인터랙티브 CLI에서 deploy dev 명령어를 실행하면 됩니다. 배포 후에는 Serverless Cloud 대시보드에서 각종 지표(metrics)와 애플리케이션 로그를 실시간으로 모니터링할 수 있습니다.

마무리
이번 글에서는 Serverless Cloud 위에 Next.js 애플리케이션을 구축하고, 데이터 저장소로 Upstash Redis를 연동하는 전체 과정을 살펴보았습니다. 서버리스 환경에서는 HTTP 기반 REST API로 접근하는 Upstash Redis가 특히 잘 어울립니다. 기존 Redis 클라이언트처럼 TCP 연결을 상시 유지할 필요 없이 요청 단위로 호출할 수 있어, 함수가 필요할 때만 실행되는 서버리스 아키텍처와 자연스럽게 조화를 이루기 때문입니다.
최신 소식과 더 많은 팁은 Discord와 Twitter에서 팔로우하며 확인하실 수 있습니다.