Skip to content

SmartFoxServer 3 Core Settings

In this article we take a look at some of the low level settings that aren't accessible via the AdminTool and can be used to tweak the SmartFoxServer's engine. These parameters can affect the server's performance and behavior drastically and should be changed only when absolutely necessary.

Core settings list

The settings are located under the server/config/ folder in the core.xml file. The table below shows some (but not all) of the values that can be tweaked. The settings omitted from this list are meant to be left alone.

  • maxIncomingRequestSize: the max. size of an incoming request expressed in bytes (default: 150000, i.e. 150KB)
  • sessionPacketQueueSize: the maximum number of packets that can be buffered for a client. These packets are queued until the client is able to read them. When the queue is exceeded packets are dropped (default: 120)
  • disconnectOnFullQueue: when set to true the server will disconnect sessions whose packet queue exceeds their capacity (default: false)
  • socketWriterThreadPoolSize: the number of threads working on outgoing TCP packets. Can be increased on servers with many high core count (e.g. 32+ cores), with extremely high TCP traffic (default: 3)
  • udpSocketWriterThreadPoolSize: same as above for outgoing UDP traffic
  • tcpNoDelay: optimizes small TCP packets by aggregating them in larger batches at the expense of a bit extra latency, especially with a high volume of fast-paced packets (default: true)