plog { server { shutdown_time = 10s // leave time for listeners to finish gracefully } server.defaults { // switch to 0.0.0.0 to be reachable externally, a bad idea. host = 127.0.0.1 port = 23456 handlers = [] } server.tcp { listeners = [] defaults { max_line = 1048576 } } server.udp { listeners = [] defaults { SO_RCVBUF = 1048576 SO_SNDBUF = 1048576 RECV_SIZE = 65536 threads = 4 defrag { // maximum memory in bytes used to track incoming messages max_size = 1048576 // maximum time to wait after the last message is received // to call it quits for that message expire_time = 10s // detect holes in message IDs // requires message IDs to be continuously incrementing detect_holes { // counters will still be reported (at 0) if disabled enabled = true // how many ports to track before evicting old ones. // cheap enough, really ports = 1024 // track a reasonably low amount of IDs per port // for fast loss discovery ids_per_port = 10 // every new message renews a port's lease. // as ports will be recycled, it is useful to avoid crazy stats. expire_time = 1m // if a hole between IDs is bigger, it's probably due to a recycled port. maximum_hole = 10 } } } } stress { host = 127.0.0.1 port = 23456 console.interval = 3s threads = 4 rate = 50000 # msg/sec # per thread renew_rate = 1000 # messages between socket changes stop_after = 1000000 min_size = 100 # bytes max_size = 1048576 # bytes size_exponent = 10 size_increments = 100 seed = 0 // random seed udp { SO_SNDBUF = 1048576 size = 65000 # packet size loss = 0.01 # packet loss } } }