Что делает Java EE масштабируемым, что делает что-либо масштабируемое: разделение проблем. По мере увеличения вашей обработки или ввода-вывода вы можете добавить новое оборудование и перераспределить нагрузку полупрозрачно (в основном прозрачно для приложения, что явно меньше для обезьян конфигурации), поскольку разделенные изолированные проблемы не знают и не заботятся, re на одном физическом оборудовании или на разных процессорах в кластере.
может сделать масштабируемые приложения на любом языке или платформе исполнения. (Да, даже COBOL на старых мэйнфреймах System 37.) Какие прикладные структуры, такие как Java EE (и другие, естественно - Java EE, вряд ли уникальны в этом отношении!) Дают вам возможность легко (условно говоря) делают это сделав большую часть тяжелой работы для вас.
Когда мое веб-приложение использует, скажем, EJB для выполнения какой-либо бизнес-логики, EJB может находиться на одном ядре ЦП на другом ядре в одном CPU на другом ЦП полностью или, в крайнем случае, возможно, даже по всей планете. Я не знаю и, по большей части, при условии, что здесь есть работа, мне все равно. Аналогичным образом, когда я отправляю сообщение на шине сообщений для обработки, я не знаю и не забочусь о том, куда это сообщение идет, какой компонент выполняет обработку и где происходит эта обработка, еще раз, пока производительность падает на мои необходимо. Это все, что нужно для настройки обезьян. Эта технология позволяет это и инструменты для оценки того, какие предметы должны идти, чтобы получить приемлемую производительность, поскольку система масштабируется по размеру.
Теперь, когда я пытаюсь рулить все это, я начинаю с проблем сразу. Если я не буду думать обо всех проксингах, планировании и распространении, и так заранее, когда мое приложение выходит за рамки обработки одной машины, теперь у меня есть серьезные перезаписи, когда я переношу часть приложения в другое поле. И тогда каждый раз, когда мои способности растут, я должен делать это снова и снова.
Если я действительно задумываюсь обо всем этом заранее, я пишу очень много шаблонов кода для каждого приложения, которое делает незначительные вариации всех тех же вещей. I может кодировать вещи масштабируемым образом, но я хочу делать это каждый раз. проклятый. время. Я пишу приложение?
Так что Java EE (и другие фреймворки) приносит в таблицу предварительно написанный шаблон для общих требований к созданию масштабируемых приложений. Написание моих приложений на них не гарантирует их масштабируемость, конечно, но фреймворки делают писать масштабируемые приложения намного проще.
Мне бы хотелось увидеть эти «различные источники», утверждая, что они масштабируемы. :) – cletus
Веб-сайт Sun: «С простотой, мобильностью, масштабируемостью и унаследованной интеграцией платформа J2EE является платформой для корпоративных решений». http://java.sun.com/j2ee/overview.html – Uri
Ну, Sun вряд ли является беспристрастным адвокатом. :) – cletus