Saltar al contenido

Multitenencia (multi-tenancy)

La multitenencia (multi-tenancy) es una arquitectura de software en la que un solo despliegue sirve a varios clientes, llamados tenants o inquilinos, desde infraestructura compartida, y mantiene los datos de cada tenant aislados de forma lógica. Una única instancia de la aplicación, una base de datos y un código base atienden a muchas organizaciones a la vez, con un identificador de tenant que separa los registros de un cliente de los del siguiente.

Actualizado el 2 min de lecturaPor fromHello

Lo esencial

  1. Multitenencia significa que un despliegue sirve a muchos tenants aislados desde infraestructura compartida, con el límite aplicado tanto en la aplicación como en la base de datos.

  2. El aislamiento es un espectro: una base de datos compartida con una clave de tenant, un esquema por tenant o una base de datos separada por tenant. Un aislamiento más fuerte cuesta más de operar.

  3. Autoalojar una plataforma multitenant te da tu propio límite de tenant: una sola instalación puede gestionar varias marcas o espacios de trabajo de clientes sin una suscripción por marca.

¿Cómo funciona la multitenencia?

Una aplicación multitenant añade un identificador de tenant a cada petición y a cada registro. Cuando un usuario inicia sesión, la aplicación determina a qué tenant pertenece y limita a ese tenant cada consulta, cada tarea en segundo plano y cada mensaje. Todos los tenants funcionan en los mismos servidores y normalmente en la misma base de datos, lo que mantiene bajo el costo de operación por tenant, pero el aislamiento solo es tan fuerte como el código y las restricciones de base de datos que lo imponen.

¿Cuáles son los principales modelos de aislamiento?

Modelo de aislamientoCómo funcionaContrapartida
Base de datos compartida, clave de tenantCada fila lleva un ID de tenant; cada consulta filtra por élEl más barato de operar; un solo filtro olvidado puede filtrar datos entre tenants
Esquema por tenantCada tenant tiene su propio esquema dentro de una base de datos compartidaSeparación más fuerte; las migraciones se multiplican con el número de tenants
Base de datos por tenantCada tenant tiene una base de datos o una instancia dedicadaEl aislamiento más fuerte; el mayor costo y la mayor carga operativa
La multitenencia en relación con los términos cercanos.

¿Por qué importa la multitenencia para un equipo pequeño?

Si gestionas un producto con una sola marca, es posible que la multitenencia ni se te pase por la cabeza. Importa en cuanto sirves a varias marcas, espacios de trabajo de clientes o entornos desde una sola instalación: el caso habitual de las agencias y las plataformas pequeñas. Herramientas de engagement de código abierto como Dittofeed modelan los tenants como espacios de trabajo, y montar un customer engagement autoalojado convierte toda la instalación en tu propio límite de tenant: los datos de tus clientes no comparten infraestructura con nadie fuera de tu empresa.

¿Qué cambia la multitenencia en el cumplimiento normativo?

En un SaaS compartido eres un tenant entre miles, y dependes del aislamiento, las decisiones de residencia de datos y los contratos del proveedor. Autoalojar le da la vuelta: pasas a ser el operador, así que el aislamiento por tenant, la retención y el log de auditoría te toca configurarlos a ti, y también demostrarlos. Ningún modelo cumple la normativa por naturaleza; las obligaciones del RGPD siguen a los datos, no a la arquitectura.

FAQ

Preguntas frecuentes

  • ¿Cuál es la diferencia entre multitenant y single-tenant?

    Un despliegue multitenant sirve a muchos clientes desde infraestructura compartida, con aislamiento lógico entre ellos. Un despliegue single-tenant dedica todo el stack, aplicación y base de datos, a un solo cliente. Single-tenant ofrece un aislamiento más estricto y un cumplimiento normativo más fácil de explicar, con un costo mayor por cliente; multitenant cambia algo de profundidad de aislamiento por eficiencia.

  • ¿Multitenencia es lo mismo que tener varios usuarios?

    No. Los usuarios son personas dentro de un tenant; los tenants son organizaciones cliente separadas. Una startup de dos personas con 10.000 usuarios puede seguir siendo single-tenant, mientras que una agencia que gestiona tres clientes en una sola instalación es multitenant.

  • ¿Un tenant puede ver los datos de otro?

    No, si el aislamiento está bien implementado. Pero el riesgo es real: en los diseños con base de datos compartida, una sola consulta sin filtrar puede cruzar el límite. Por eso las comprobaciones de tenant deben estar en la capa de datos (seguridad a nivel de fila o separación por esquemas) y no solo en el código de la aplicación.

  • ¿Una startup necesita multitenencia?

    Solo si sirves a varias organizaciones desde un despliegue: clientes, marcas o espacios de trabajo. Si autoalojas una herramienta para una sola empresa, single-tenant es más sencillo. La multitenencia compensa su complejidad cuando el número de tenants crece más rápido que tu capacidad de gestionar instalaciones separadas.

fromHello es software de automatización de marketing de código abierto: mensajes activados por lo que hace la gente.

fromHello Cloud está en acceso anticipado a través de la lista de espera.

Acceso anticipado

fromHello Cloud

Nadie emprende para quedarse pequeño.

El acceso anticipado a fromHello Cloud se abre por etapas. El onboarding es personalizado: te ayudamos a configurarlo y a traer tus contactos.

Te escribiremos cuando se abra tu plaza. Sin spam.

¿Aún no quieres unirte? Ver en GitHub