Ваш вопрос очень широкий, и ответ зависит от того, как вы хотите создать свой http-сервер. Вы можете создать его как «однопоточный реактор», «многопоточный проактор» или «полусинхронный полуасинхронный» сервер.
QT в основном использует небольшие классы-обертки над нативными или posix API и наверняка имеет свой собственный избыточный вес, а 50 соединений звучат не слишком много, но опять же ответ зависит от того, что эти соединения будут делать? Обслуживать простые страницы или выполнять тяжелые вычисления?
Я думаю, что сложность проекта заключается в реализации полноценного http-сервера, который является безопасным, надежным и масштабируемым. Вам придется много писать, чтобы обеспечить жизненный цикл простой модели Java-сервлета. Требуется много интерфейсов / абстракций.
Вы можете найти уже проверенные http-серверы с открытым исходным кодом. Я бы даже не стал писать свой собственный для программного обеспечения.