Рассмотрим приложение веб-сервиса (сеансы не используются) с примерно 10000 пользователями и примерно 300 одновременными подключениями в пиковый период.
RAM / CPU? Кластеризация? Балансировки нагрузки? Только ты можешь знать. Я видел, как занятость ОЗУ варьируется от нескольких мегабайт до нескольких сотен, даже для того, что казалось простыми приложениями. Многое зависит от того, какие библиотеки вы будете загружать. То же и для ЦП. Нет замены профилированию производительности веб-приложения. Начните с образца конфигурации, получите некоторое программное обеспечение для тестирования рабочей нагрузки, такое как JMeter (но их много, выбор может зависеть от того, что делает ваш веб-сервис), создайте прилично средний сценарий весового тестирования и запустите 50, 100, 150 потоков. Следите за своей виртуальной машиной java (одним из бесплатных инструментов может быть javamelody, он одновременно бесплатный и легкий, но есть и другие) и проверяйте свои журналы, если он дает сбой. Затем произведите правильные расчеты на основе времени отклика и состояния машины под нагрузкой.