Zuul: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
No edit summary
Line 18: Line 18:
     register-with-eureka: false
     register-with-eureka: false
</source>
</source>
==Conceptual==
'''Zuul''' is an '''API Gateway''' or an '''Edge Server''' developed by Netflix. It is capable of performing the below tasks.
# '''Authentication and Security:''' Identifying authentication requirements for each resource and rejecting requests that do not satisfy them.
# '''Insights and Monitoring:''' Tracking meaningful data and statistics at the edge in order to give us an accurate view of production.
# '''Dynamic Routing:''' Dynamically routing requests to different backend clusters as needed.
# '''Stress Testing:''' Gradually increasing the traffic to a cluster in order to gauge performance.
# '''Load Shedding:''' Allocating capacity for each type of request and dropping requests that go over the limit.
# '''Static Response Handling:''' Building some responses directly at the edge instead of forwarding them to an internal cluster.
==Filters==
'''Filters''' are a way of extending '''Zuul’s''' default functionality and adding your own custom features. Filters can be divided into four types based on the stage that they are executed in, during the request routing process.
# <code>pre</code> Filters run before the request is routed.
# <code>route</code> Filters can handle the actual routing of the request.
# <code>post</code> Filters run after the request has been routed.
# <code>error</code> Filters run if an error occurs in the course of handling the request.


==References==
==References==

Revision as of 23:16, 28 July 2020

spring:
  application:
    name: ZuulProxy
zuul:
  routes:
    api:
      path: /api/self/rest/**
      url: https://localhost:2013/ebis/api/self/rest
    static:
      path: /**
      url: https://localhost:2015/
  sensitive-headers: Cookie,Set-Cookie
server:
  port: 1983
eureka:
  client:
    register-with-eureka: false

Conceptual

Zuul is an API Gateway or an Edge Server developed by Netflix. It is capable of performing the below tasks.

  1. Authentication and Security: Identifying authentication requirements for each resource and rejecting requests that do not satisfy them.
  2. Insights and Monitoring: Tracking meaningful data and statistics at the edge in order to give us an accurate view of production.
  3. Dynamic Routing: Dynamically routing requests to different backend clusters as needed.
  4. Stress Testing: Gradually increasing the traffic to a cluster in order to gauge performance.
  5. Load Shedding: Allocating capacity for each type of request and dropping requests that go over the limit.
  6. Static Response Handling: Building some responses directly at the edge instead of forwarding them to an internal cluster.

Filters

Filters are a way of extending Zuul’s default functionality and adding your own custom features. Filters can be divided into four types based on the stage that they are executed in, during the request routing process.

  1. pre Filters run before the request is routed.
  2. route Filters can handle the actual routing of the request.
  3. post Filters run after the request has been routed.
  4. error Filters run if an error occurs in the course of handling the request.

References