Nueva versión del framework para la creación de aplicaciones de red Ergo 1.2

Después de un año de desarrollo, se lanzó el marco Ergo 1.2, que implementa la pila de red Erlang completa y su biblioteca OTP en el lenguaje Go. El marco proporciona al desarrollador herramientas flexibles del mundo de Erlang para crear soluciones distribuidas en el lenguaje Go utilizando patrones de diseño de Aplicaciones, Supervisores y GenServer ya preparados. Dado que el lenguaje Go no tiene un análogo directo del proceso Erlang, el marco utiliza gorutinas como base para GenServer con un contenedor de recuperación para manejar situaciones de excepción. El código del proyecto se distribuye bajo la licencia MIT.

En el nuevo lanzamiento:

  • Soporte implementado para TLS 1.3 con la capacidad de generar automáticamente certificados autofirmados (si necesita cifrar conexiones, pero no es necesario autorizarlo, ya que la conexión utiliza una cookie para proporcionar acceso al host)
  • Se agregó enrutamiento estático para eliminar la necesidad de depender de EPMD para determinar el puerto del host. Esto resuelve el problema de seguridad y, junto con el cifrado, permite ejecutar un clúster Erlang en redes públicas.
  • Se agregó una nueva plantilla GenStage (del mundo Elixir), que le permite crear soluciones Pub/Sub sin usar el Bus de mensajes. Una de las características importantes de esta plantilla es el "control de contrapresión". El "Productor" entregará exactamente el volumen de mensajes solicitado por el "Consumidor". Puede encontrar una implementación de ejemplo aquí.

La sección de discusión analiza la implementación del patrón de diseño SAGAS que implementa la funcionalidad de transacciones distribuidas.

Fuente: opennet.ru

Añadir un comentario