A common challenge when building a bigger system is providing a unified interface to the consumers of your system. The fact that your services are split into multiple applications internally shouldn’t be visible to users or integrating systems or result in substantial development effort.
Netflix created and open-sourced Zuul, which is Netflix’ solution to this problem. Zuul is a service that proxies requests to multiple backing services and provides a unified “front door” to your system.
Pivotal - the commercial entity behind the Spring Framework adopted this technology in Spring Cloud, its next-generation library to build modern cloud-native applications.
In the newest version of the Spring Framework another Routing Gateway, Spring Cloud Gateway project is introduced. This project is based on the Reactive Stack, added in Spring Boot 2.0, and on the Netty Server. The greatest advantage of this project is its non-blocking IO architecture, making the gateway more reactive and allowing for back pressure.
Alfred Edge leverages all this work from Spring Cloud Gateway to provide a gateway service, a unified “front door”, which allows a browser, a mobile app or another integrating service to consume services from multiple backend services without managing cross-origin resource sharing (CORS) and authentication for each one individually. Alfred Edge is specifically tailored as a gateway for Alfresco Content Services and other services available in its ecosystem.
Alfred Edge is integrated with other Spring Cloud technology and is using Resilience4J for fault tolerance, optionally Eureka or Consul for service discovery or managing routes, filters and load balancing across your backend services.