Performance regression and type mismatch in net.udp.listen (Agent 2)

XMLWordPrintable

    • Sprint candidates

      During performance testing of Zabbix Agent 2 (Go) on Linux Mint 21.1, a severe performance degradation was identified in the net.udp.listen key. While Agent 2 is architecturally concurrent, the current implementation introduces a consistent 1-second overhead per request.

      Steps to reproduce:

      • Use socat to open a large range of UDP ports (e.g., 10000-12000):
      for port in {10000..12000}; do
        socat UDP-LISTEN:$port,fork /dev/null &
      done 
      • Monitor execution time using:
      time sbin/zabbix_agent2 -t net.udp.listen[11000]
      • Compare with zabbix_agentd:
      time sbin/zabbix_agentd -t net.udp.listen[11000]

      Result:
      Please see actual performance test results: ZBX-27377 - actual results.txt
      Expected:

      • net.udp.listen must be as fast as Agent 1. A 1-second delay is too slow and may cause data queues.
      • Return type: Must be the same as in Agent 1:  [u|1].

            Assignee:
            Zabbix Development Team
            Reporter:
            Deniss Ponomarenko
            Team INT
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - Not Specified
                Not Specified
                Logged:
                Time Spent - 1h
                1h