Actualmente estoy buscando implementar una aplicación de estilo SOA en un PAAS en la nube.Despliegue de una aplicación de estilo SOA dentro de un PAAS
Estoy evaluando una serie de proveedores de PAAS Incluyendo Cloud Foundry, Heroku y Jelastic.
Por el momento, por razones de simplicidad, solo tengo una aplicación Grails y un archivo jar de servicio único con un servidor Jetty incrustado. Esto se expandirá para ser servicios múltiples y front-ends web, con un servicio comido en el medio, todos se comunican a través de una mezcla de rabbit mq y http.
En este momento me cuesta entender la topología de cómo se implementarían en un PAAS.
Mis preguntas son:
¿Todos los servicios y aplicaciones web tienen que ser desplegados sobre el tema "aplicaciones" de nivel dentro del PAAS (por ejemplo, puede dinamómetros ser utilizado En Heroku?)
En caso afirmativo, se puede restringir el acceso a los servicios, de modo que solo se puedan realizar solicitudes desde la aplicación web (eventualmente puerta de enlace).
Necesitan existir como una aplicación de nivel superior para beneficiarse del equilibrio de carga (y escalado automático), ya que puede haber varias instancias de cada servicio.
Si cada servicio tuviese su propio almacén de datos, supongo que esto requeriría que fuera una aplicación.
Si hay una forma de lograr esto sin utilizar una aplicación completa para cada servicio, ¿cómo se pueden direccionar individualmente los nodos? ¿Pueden registrarse con algún tipo de servicio de directorio?
Gracias!
Gracias por su respuesta, esto confirma lo que estaba pensando acerca de la implementación de este tipo de patrón de Cloud Foundry. Con respecto a 2, ¿la idea de que este tipo de seguridad dependería de la implementación subyacente de IAAS? ¿Hay alguna forma de que las instancias de los conejos sean direccionables desde el mundo exterior? –
Me alegro de poder ayudar. Puede que le interese un comentario de mi colega Chris Richardson sobre el desarrollo de aplicaciones poco compactas. Google por eso. 2) Sí, está la seguridad de la capa de infraestructura. Pero tampoco debes olvidarte de la seguridad de tu aplicación, sin duda usando frameworks (por ejemplo, Spring Security si estuviste en Spring). Con respecto a los servicios a los que se puede acceder desde el exterior, existe una función de "tunelización" útil para la depuración y la configuración inicial/volcado: http://docs.cloudfoundry.com/tools/vmc/caldecott.html – ebottard