Diferentes elementos

Hasta ahora hemos aprendido qué es el microservicio y cuáles son sus necesidades básicas por encima de la arquitectura MVC moderna. En este capítulo, aprenderemos los diferentes elementos de esta arquitectura que son igualmente importantes para un servicio.

Categorías de servicios

Con el nombre de Microservicio, asumimos que será un servicio que se puede consumir a través de protocolos HTTP, sin embargo, necesitamos saber qué tipo de servicios se pueden construir usando esta arquitectura. A continuación se muestra la lista de servicios que se pueden implementar mediante la arquitectura de microservicios.

Platform as a Service [PaaS]- En esta arquitectura orientada a servicios, la plataforma se entrega como una herramienta que se puede personalizar según las necesidades del negocio. PaaS juega un papel importante en el desarrollo de aplicaciones móviles. El mejor ejemplo de PaaS es el motor de aplicaciones de Google, donde Google proporciona diferentes plataformas útiles para construir su aplicación. PaaS se desarrolla originalmente para proporcionar una arquitectura o infraestructura integradas a los desarrolladores. Reduce la complejidad de la programación de nivel superior en un tiempo drásticamente reducido. A continuación se muestra una instantánea de la PaaS proporcionada por Google.

Software as a Service [SaaS]- Software as a Service es un negocio de licencias de software, en el que el software se aloja de forma centralizada y se licencia mediante suscripción. Se puede acceder a SaaS principalmente a través del navegador y es un patrón de arquitectura muy común en muchas verticales comerciales, como Gestión de Recursos Humanos (HRM), Planificación de Recursos Empresariales (ERP), Gestión de Relaciones con el Cliente (CRM), etc. La siguiente captura de pantalla muestra ejemplos de SaaS diferente proporcionado por Oracle.

Infrastructure as a Service [IaaS]- La infraestructura juega un buen papel en las industrias de TI. Al usar la computación en la nube, algunas de las organizaciones brindan infraestructura virtual como sus servicios. IaaS es muy útil para brindar agilidad, rentabilidad, seguridad, rendimiento, productividad, etc. en el desarrollo de software. Amazon EC2 y Microsoft Azure son los mayores ejemplos de IaaS. La siguiente imagen muestra un ejemplo de AWS, donde el centro de datos se proporciona como IaaS.

Data as a Service [DaaS]- La tecnología de la información se ocupa de los datos y algunos de los principales líderes de la industria creen que los datos serán el nuevo sustento de la sociedad. DaaS es un tipo de servicio en el que los datos se comparten con conglomerados empresariales para la investigación y el análisis. DaaS aporta simplicidad, agilidad y seguridad en la capa de acceso a datos. A continuación se muestra un ejemplo de Oracle Data Cloud, a la que se puede acceder o licenciar para sus propias necesidades comerciales.

Back End as a Service [BaaS]- BaaS también se conoce como MBaaS, que significa back-end móvil como servicio. En este tipo de servicio, el backend de la aplicación se proporcionará a las unidades de negocio para sus propios emprendimientos comerciales. Todas las notificaciones push, los servicios de redes sociales se incluyen en este tipo de servicios. Facebook y Twitter son ejemplos de proveedores de servicios BaaS conocidos.

Seguridad

Cuando se trata de manejar toneladas de datos de clientes, la seguridad juega un papel importante. La cuestión de la seguridad está asociada a todo tipo de servicios disponibles en el mercado. Cualquiera que sea la nube que esté utilizando (privada, pública, híbrida, etc.), la seguridad debe mantenerse en todos los niveles. Todo el problema de seguridad se puede subdividir en las siguientes partes:

  • Security issue faced by service providers - Este tipo de problema de seguridad lo enfrentan los proveedores de servicios como Google, Amazon, etc. Para garantizar la protección de la seguridad, es necesaria la verificación de antecedentes del cliente, especialmente de aquellos que tienen acceso directo a la parte central de la nube.

  • Security issue faced by consumers- La nube es rentable, por lo que se usa ampliamente en todas las industrias. Algunas organizaciones almacenan los detalles del usuario en centros de datos de terceros y extraen los datos cuando es necesario. Por lo tanto, es obligatorio mantener niveles de seguridad tales que los datos privados de un cliente no sean visibles para otros usuarios.

Para prevenir los problemas de seguridad mencionados anteriormente, a continuación se muestran algunos de los mecanismos defensivos utilizados por las organizaciones.

  • Deterrent Control - Conozca su amenaza potencial para reducir los ataques cibernéticos.

  • Preventive Control - Mantenga una política de autenticación de alto nivel para acceder a su nube.

  • Detective Control - Monitoriza a tus usuarios y detecta cualquier riesgo potencial.

  • Corrective Control - Trabajar en estrecha colaboración con diferentes equipos y solucionar los problemas que surjan durante la fase de control de detectives.