Hi there, great work writing oat++. I am the author of Passenger (<a href="https://www.phusionpassenger.com" rel="nofollow">https://www.phusionpassenger.com</a>), an application server that powers 650.000 companies and sites world-wide such as Apple, Pixar, Juniper, etc. Passenger is mostly written in C++ and like you, performance is a priority for us.<p>I've done a fast code review, and I thought I'd share some of my findings with you. These are based on my experience with writing high-performance servers. You can read about some of my experience in these blog posts: <a href="https://www.rubyraptor.org/how-we-made-raptor-up-to-4x-faster-than-unicorn-and-up-to-2x-faster-than-puma-torquebox/" rel="nofollow">https://www.rubyraptor.org/how-we-made-raptor-up-to-4x-faste...</a><p>Hopefully you can use my feedback to make oat++ even faster and better. Code review here: <a href="https://github.com/oatpp/oatpp/issues/15" rel="nofollow">https://github.com/oatpp/oatpp/issues/15</a><p>I've covered:<p>- Pools and contention<p>- Shared_ptr and atomics everywhere<p>- List vs vector<p>- Zero-copy architecture<p>- SpinLock everywhere<p>- New does not return nullptr?<p>- More documentation<p>- More tests