       (gen-tcp-handler core stats channel-group tcp-handler))))
 
 (defn tcp-server
-  "Create a new TCP server. Doesn't start until (service/start!). Options:
+  "Create a new TCP server. Doesn't start until (service/start!).
+
+  Options:
   :host             The host to listen on (default 127.0.0.1).
   :port             The port to listen on. (default 5554 with TLS, or 5555 std)
-  :core             An atom used to track the active core for this server
+  :core             An atom used to track the active core for this server.
+  :so-backlog       The maximum queue length for incoming tcp connections (default 50).
   :channel-group    A global channel group used to track all connections.
   :initializer      A ChannelInitializer for creating new pipelines.
 

          (warn "forcefully closing connection from " (.remoteAddress channel)
                ". Client might be not reading acks fast enough or network is broken")
          (.close channel))))
    
    (channelRead [^ChannelHandlerContext ctx ^Object message]
      (try
        (handler @core stats ctx message)

         stats         (metrics/rate+latency)
         host          (get opts :host "127.0.0.1")
         port          (get opts :port (if (:tls? opts) 5554 5555))
         so-backlog    (get opts :so-backlog 50)
         channel-group (get opts :channel-group
                            (channel-group
                              (str "tcp-server " host ":" port)))
