¿Cuáles son las mejores prácticas en la creación de aplicaciones múltiples clientes?

StackOverflow https://stackoverflow.com/questions/717105

  •  23-08-2019
  •  | 
  •  

Pregunta

¿Cuáles son las mejores prácticas en la creación de aplicaciones que dan soporte a múltiples inquilinos, como software como servicio?

Los enlaces a documentos técnicos que se expanden sobre este tema son muy apreciados.

¿Fue útil?

Solución

Es posible encontrar algunos consejos preciosos en una serie de entradas de blog por Oren Eini.

Este es uno de los últimos puestos de la serie, con enlaces a los mensajes anteriores: http://ayende.com/Blog/archive/2008/08/16/Multi-Tenancy--Approaches-and-Applicability.aspx

Otros consejos

En la base de datos:

A. Poner todo sobre la misma base de datos, poner una columna tenant_id en sus tablas

Pros: Fácil de hacer

Contras: muy propenso a errores: es fácil de filtrar datos de un inquilino a otro.

B. Poner todo en la misma base de datos, pero puso cada inquilino en su propio espacio de nombres (PostgreSQL les llama esquemas)

Pros: Proporciona una mejor protección de fuga de datos de la opción A

Contras: No es compatible con todas las bases de datos. Que yo sepa PostgreSQL y Oracle es compatible con ella.

C. Configuración de una base de datos por inquilino

Pros: Absolutamente ninguna posibilidad de fugas de datos de un inquilino a otro

Contras: La creación de nuevos inquilinos es más complicado. conexiones de bases de datos son caros.

Sólo supe las ideas anteriores de Guy Naor. Aquí hay un enlace a su presentación: http : //aac2009.confreaks.com/06-feb-2009-14-30-writing-multi-tenant-applications-in-rails-guy-naor.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top