Из вашего описания я понимаю, что существующее приложение работает в стеке LAMP. PHP хорошо интегрируется в стек LAMP и хорошо масштабируется с ним. Почему вы хотите перенести это в экосистему Java? Реализация бизнес-логики в Java означает, что вы отбрасываете основную рабочую часть существующего приложения. Если уже есть работающий бизнес-уровень и DAL, зачем начинать заново? Не будет ли рефакторинг более разумной (и более дешевой) альтернативой?
Кроме того, вы заявляете, что J2EE обеспечит гораздо большую надежность и удобство обслуживания. Как так? Поддерживаемость в основном зависит от архитектуры кода и стиля кодирования. Я не знаю ни одного паттерна в PoEAA Фаулера , который также не может быть реализован в PHP. PHP также предоставляет зрелые платформы для UnitTesting , Непрерывная интеграция , ORM , Внедрение зависимостей , Сообщение Очереди , Веб-сервисы , Развертывание и т. Д. Для поддержки разработки приложений.
Конечно, Java скомпилирована и поддерживает многопоточность и имеет историю в архитектуре корпоративного программного обеспечения, и я не отрицаю, что у нее есть языковые функции, которых нет у PHP. Но вопрос в том, нужны ли они для этого проекта? И давайте не будем забывать, что язык программирования сам по себе ничего не делает. Именно разработчик создает приложение, а код спагетти J2EE по-прежнему остается кодом спагетти.
Только мой 2с, хотя:)