2000 сообщений в час — не большая нагрузка для stateless (а я так понимаю, от состояний мало что зависит). В первую очередь нужно оптимизировать запросы к БД. А про сам XMPP можно не парится, уверен, что низкоуровневой работы с памятью, потоками, соккетами вам не требуется. Если есть готовая библиоткеа на php — используйте и не бойтесь — даже будет лучше, бо с++ web приложения они компилятся в нативный код и небольшая ошибка сделает ваш XMPP бот не готовым к 24/7. А в php ошибки не влияют на само приложение (web сервер не остановится). nginx (или что там у вас) разберется с памятью на должном уровне. Главное чтобы не apache).