Prisma ORM 8 is here.Read the docs

Beyond Prisma ORM

Prisma ORM v6

Prisma ORM addresses many development needs, but Prisma's additional products like Prisma Postgres, Accelerate and Optimize can further enhance scalability and performance for your applications.

Prisma ORM covers data modeling, migrations, and type-safe queries. As a production application grows, two problems tend to appear that the ORM alone does not solve: managing database connections under load, and caching the results of frequent queries.

This page describes how Prisma's other products extend the ORM to handle those cases.

Connection pooling and caching with Prisma Accelerate

As your application scales, you will likely need connection pooling to keep the number of database connections under control, and caching to reduce database load and response times. Prisma Accelerate provides both, so you do not have to set up and run separate infrastructure for them.

Prisma Accelerate is particularly useful for applications deployed to serverless and edge environments (also know as Function-as-a-Service) because these deployments lend themselves towards many orders of magnitude more connections being created than a traditional, long-lived application. For these apps, Prisma Accelerate also protects your database from connection exhaustion during traffic spikes.

Try out the Accelerate speed test to measure the difference caching makes.

Improve query performance with connection pooling

Place your connection pooler in one of 15+ global regions to minimize latency between your application and the database, including from serverless and edge environments.

Reduce query latency and database load with caching

Cache query results across 300+ global points of presence. Accelerate extends your Prisma Client with per-query control over caching, using the ttl and swr options.

Handle scaling traffic with managed infrastructure

Accelerate handles millions of queries per day without changes to your infrastructure, and reuses database connections so the same database can serve more traffic.

Get started with Accelerate

Accelerate integrates with your Prisma ORM project through the @prisma/extension-accelerate client extension. Follow the setup guide to enable edge environment support, connection pooling, and global caching.

import { PrismaClient } from "../prisma/generated/client";
import { withAccelerate } from "@prisma/extension-accelerate";

// 1. Extend your Prisma Client with the Accelerate extension
const prisma = new PrismaClient().$extends(withAccelerate());

// 2. (Optionally) add cache to your Prisma queries
const users = await prisma.user.findMany({
  cacheStrategy: {
    ttl: 30, // Consider data fresh for 30 seconds
    swr: 60, // Serve stale data for up to 60 seconds while fetching fresh data
  },
});

To see more examples, visit our examples repo or try them out yourself with npx try-prisma.

Sign up for Accelerate

Grow with Prisma

Accelerate and Optimize build on Prisma ORM through Prisma Client Extensions. This is how they add capabilities that are not part of the ORM itself, such as globally distributed caching and connection pooling. Create a free Prisma Data Platform account to try Accelerate with your existing Prisma Client code.

Prisma is also building Prisma Optimize and Prisma Postgres alongside Accelerate, and we would like to hear what you think. Join our community and learn more about each product below.

On this page