M4 Caching

From Kolmisoft Wiki
Jump to navigationJump to search

The current caching system caches several HGC. When a call fails with some HGC, the IP is marked in the cache for some time, so next time the call comes from the same IP, call will be rejected with the same HGC.

This removes some load from the DB and provides some protection against DDoS attacks or high bursts of CPS.

Current cached HGC with for how long cache is active (until the value is removed from the cache and call could try to pass):

  • 301 Originator not found by IP address - 120s
  • 302 Global Call Limit reached - 5s
  • 303 Originator Capacity reached - 10s
  • 304 Originator's CPS Limit reached - 1s
  • 306 Originator Balance Limit reached (Balance Min) - 60s
  • 311 User is blocked - 120s
  • 313 User call limit reached - 10s
  • 320 Balance too low to make a call - 120s
  • 352 User daily spend limit reached - 60s

These values can be changed in /etc/m2/system.conf, for example:

hgc_301_cache_period = 5

this changes cache period for HGC 301 to 5 seconds.