One of description in given link is:
2. For this to be used effectively, applications must avoid doing small, logically related buffer writes. BecauseIn my case default behavior created delay because I was basing (probably stupidly) my whole system on fact that each message will be delivered as soon as possible.
TCP_NODELAYis enabled, these small writes will make TCP send these multiple buffers as individual packets, which can result in poor overall performance. ...
This option switched everything to expected from me behavior. Of course I don't saying this is solution to all problems and probably introduce me some issues somewhere else.
I'm still feel like novice in serious network programming :/ But well as far as project go I'm really happy with all this improvements and knowledge that I gain in meantime of doing them.
But well time to return tracing bugs in my changes so I could push my code to repository before going sleep.