netflix zuul 是netflix開發的一個EDGE SERVICE。 主要是作為一個API Gateway 服務器,可以實現安全,流量控制等功能。
我看的是1.x的版本,Zuul1.x的實現原理基本是就是一個Servlet 應用。
<!--使用listener 初始化Zuul setting --> <listener> <listener-class>com.netflix.zuul.StartServer</listener-class> </listener> <!--使用Servlet 攔截請求並做相應的攔截操作 --> <servlet> <servlet-name>ZuulServlet</servlet-name> <servlet-class>com.netflix.zuul.http.ZuulServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>ZuulServlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> <filter> <filter-name>ContextLifecycleFilter</filter-name> <filter-class>com.netflix.zuul.context.ContextLifecycleFilter</filter-class> </filter> <filter-mapping> <filter-name>ContextLifecycleFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
具體例子可以參考 netflix 在github上的 simple webapp。
體驗的話,可以按照netflix 在github wiki 上文檔說明來進行。