Spawns a new thread for every client connection we accept(). This model is recommended for platforms like Ruby (MRI) 1.8 where spawning new threads is inexpensive, but still seems to work well enough with good native threading implementations such as NPTL under Linux on Ruby (MRI/YARV) 1.9
This model should provide a high level of compatibility with all Ruby implementations, and most libraries and applications. Applications running under this model should be thread-safe but not necessarily reentrant.
If you’re using green threads (MRI 1.8) and need to perform DNS lookups, consider using the “resolv-replace” library which replaces parts of the core Socket package with concurrent DNS lookup capabilities.