Throttling Filter module
The Throttling Filter module is an incubator module and provides filter functionality to throttle HTTP requests coming to Magnolia.
Configuration
Add the filter configuration under /server/filters in the Magnolia configuration app. The following code block shows a sample configuration.
- The Filter accepts three parameters
- 
numberOfRequestsPerSecondnumberOfRequestsPerSecondByUserrequestType
throttling:
  class: 'info.magnolia.throttling.filter.ThrottlingFilter'
  enabled: true
  jcr:primaryType: 'mgnl:content'
  numberOfRequestsPerSecond: '0' (1)
  numberOfRequestsPerSecondByUser: '1' (2)
  requestType: 'GET' (3)
  mappings:
    throttle-home:
      pattern: 'regex:^\/\home(\.html)?$'| 1 | The numberOfRequestsPerSecondparameter accept Integer values. If you pass '0' to this parameter, there will be no limitation on the number of requests per second. This parameter limits the total number of requests that are coming to the url configured in the mappings section. | 
| 2 | The numberOfRequestsPerSecondByUserparameter limits the total number of requests that are coming to the url configured in the mappings section by authenticated user. | 
| 3 | The requestTypeparameter accepts request type (String). For example:GET, POST, PUT, etc. | 
| Requests that are not authenticated (no user logged-in) will fallback to ip-address and in case no ip-address is available will fallback to user session. | 
For more information, see Throttling Filter module.