Парадигмы изоляции данных в корпоративных SaaS-системах
Предотвращение утечек данных между клиентами (тенантами) — ключевое требование в B2B SaaS. В Kling Digital применяется архитектура изолированных баз данных PostgreSQL с динамическим кэшированием пулов соединений.
Динамический пул соединений Prisma Client
export async function getPrismaClientByTenantId(tenantId: string | null) {
if (!tenantId) return masterPrisma;
if (tenantClients.has(tenantId)) return tenantClients.get(tenantId)!;
const tenantConfig = await masterPrisma.tenant.findUnique({ where: { id: tenantId } });
const client = new PrismaClient({ datasourceUrl: tenantConfig.databaseUrl });
tenantClients.set(tenantId, client);
return client;
}




