La seguridad siempre debe ser una preocupación. Además, desea tener una gran cantidad de monitoreo, New Relic es ideal para esto. Desea recibir notificaciones de excepciones no detectadas, algo así como Airbrake. Es posible que desee comentarios de los usuarios, algo así como Kiss Metrics. Desea poder escalar fácilmente, lo que significa mucho más que simplemente usar un host en la nube como Heroku o EC2. Significa desarrollar su aplicación de tal manera que sea fácil de escalar, siga las pautas de la aplicación The Twelve-Factor. Además, desea que sus solicitudes sean súper rápidas, por lo que cualquier cosa que requiera algún procesamiento debe colocarse en un trabajo en segundo plano, algo como Sidekiq. Debes asegurarte de buscar bibliotecas que puedas usar para no construir algo que ya existe, sino también elegir bibliotecas que estén probadas y tengan una gran comunidad que las respalde. Desea la documentación adecuada y quizás wikis para que los nuevos desarrolladores del equipo puedan ponerse en marcha rápidamente. Desea asegurarse de escribir una base de código fácil de mantener utilizando patrones de diseño orientados a objetos apropiados cuando sea necesario respaldados por pruebas automatizadas. A medida que su aplicación crece, desea dividir partes de su aplicación en módulos, cada uno administrado en su propio repositorio por su propio equipo de desarrollo.
Para una aplicación SaaS a gran escala, ¿cuáles son las cosas que deben tenerse en cuenta al diseñar la aplicación?
Related Content
Mantenibilidad
Por ejemplo, asegúrese de que la aplicación esté bien probada y estructurada de manera tal que se minimice el acoplamiento innecesario entre componentes, la separación de preocupaciones, etc. Así, a medida que el proyecto crece, puede agregar, escalar o repensar partes de él sin tener que refactorizar otras partes, o recurrir a soluciones menos limpias que pueden ser frágiles o difíciles de entender más adelante.
Hay muchas otras cosas que pueden ser importantes para su aplicación en particular, pero si lo hace por adelantado, eventualmente hará que todo lo demás sea más fácil.
Un tema que en muchos casos se pasa por alto al diseñar una aplicación es cómo lo apoyará, de modo que la capacidad de monitorear es como se menciona aquí (y se puede hacer con muchas otras herramientas más baratas que New Relic), pero también la capacidad de tener Herramienta centralizada de registro y agregación de errores que lo ayudará a analizar los problemas rápidamente y encontrar la fuente del problema. Desea que esta herramienta forme parte de su arquitectura general, ya que tendrá errores y quiere estar listo. Leí el otro día esta publicación y resume algunos de los temas relevantes 3 formas de detectar errores y registros
More Interesting
¿Cómo es vender SaaS en una industria competitiva y cuán importante es la experiencia?
¿Cómo se construyen típicamente los planes de bonificación SDR?
¿Cuál es el mejor PaaS para SaaS?
¿Cuál es la próxima gran novedad en términos de SaaS, dedicada a los consumidores?
¿Por qué los mayoristas necesitan CRM?
¿Cuál es la pila tecnológica detrás de Box?
¿Cuántas pequeñas / medianas empresas SaaS hay en los Estados Unidos?