arquitectura saas para aplicaciones crm basadas en lámparas

Esto parecerá una variedad de preguntas, pero todas están relacionadas con la aplicación basada en SaaS y PHP que hemos estado construyendo. Somos conscientes de la arquitectura de nuestra aplicación y la estudiamos para asegurarnos de encontrar todas las técnicas esenciales antes de pasar a la producción y no enfrentar ninguna falla.

Para admitir SaaS, hemos decidido hacer que nuestra base de datos sea multiusuario, donde cada cliente tendrá su propia base de datos. Mi mente está dando vueltas a la siguiente lista de preguntas.

  • ¿Cómo brindar la capacidad de personalizar una aplicación SaaS multiinquilino para satisfacer las necesidades individuales de los inquilinos?

  • ¿Cómo garantizar la seguridad de la base de datos de cada inquilino para que no accedan accidentalmente a los datos de los demás?

  • ¿Qué son los clústeres y cómo les agregamos nuevas instancias de aplicación y base de datos en caso de que aumente el número? de clientes?

  • ¿Qué hacemos para garantizar el rendimiento y la escalabilidad del sitio web SaaS?

  • ¿Cómo manejamos las fallas de la aplicación SaaS, especialmente cuando lanzamos nuevas versiones y actualizaciones (integración continua)?

  • ¿Alguna solución especial para manejar suscriptores/clientes y permisos de módulos activados y desactivados en la aplicación SaaS?

He adjuntado el diagrama de bloques de DB con el que hemos decidido ir.

preguntado el 22 de mayo de 12 a las 13:05

Esta no es una mala pregunta, sin embargo, es bastante amplia y no es adecuada para este sitio. Stack Overflow trata problemas de programación específicos en lugar de preguntas de este tipo. -

1 Respuestas

He escrito un buen artículo con muchos de los elementos que debemos tener en cuenta al desarrollar una aplicación SaaS en PHP. Comprobar el Desarrollo de aplicaciones SaaS usando PHP en Zend Framework

Las respuestas a algunas de sus preguntas se encuentran a continuación:

¿Cómo brindar la capacidad de personalizar una aplicación SaaS multiinquilino para satisfacer las necesidades individuales de los inquilinos?

Es como un desarrollo normal del sitio. Supongamos que tiene recursos de la A a la Z, entonces necesita mantener los recursos asignados o accesibles de los inquilinos de alcance dentro de la base de datos. Luego, mientras accede, simplemente puede verificar los permisos.

¿Cómo garantizar la seguridad de la base de datos de cada inquilino para que no accedan accidentalmente a los datos de los demás?

El diseño de la base de datos en la aplicación SaaS es un tema que se discute muchas veces en Stack Overflow. Puede optar por una base de datos única o una base de datos única para cada inquilino. Para Grandes Proyectos el segundo es adecuado.

Si opta por la base de datos única, simplemente almacene el ID DEL INQUILINO en todas las tablas. Y luego, mientras autentica al inquilino, mantenga la ID DEL INQUILINO en SESIÓN en función del subdominio del que proviene la solicitud. Luego, pase esta ID en todas las operaciones de la base de datos y, por lo tanto, no afectará accidentalmente los datos de ningún otro inquilino.

contestado el 31 de mayo de 12 a las 14:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.