Несколько копий ColdFusion MX Enterprise 6.1 на одном физическом сервере

J2EE конфигурация ColdFusion MX Enterprise 6.1 позволяет запускать несколько ColdFusion MX серверов на одном физическом сервере используя также встроенный JRun сервер J2EE приложений или такой J2EE сервер от стороннего разработчика, как, например, IBM WebSphere, Sun ONE App Server или BEA WebLogic. В результате, без дополнительных затрат на «железо» и программное обеспечение, мы получим среду с высоко доступными, безопасными и оптимизированными приложениями, которые в прошлом требовали запуска нескольких копий ColdFusion серверов на отдельных физических серверах.

 

Разница между одной и несколькими копиями серверов на одном физическом сервере

В ColdFusion MX Enterprise и Professional, а также в ColdFusion 5 и более ранних версиях можно было установить ColdFusion один раз на один сервер. Все приложения, выполнялись в пределах одного сервера (см. Рисунок 1). Это означало, что все приложения имели доступ к глобальным настройкам (почтовые сервера, настройки кэширования, настройки отладки, безопасность и т.д.) и проблема с одним приложением приводили к проблеме со всеми остальными приложениями (например, в случае, если сервер не отвечает и требует перезагрузки).

Один ColdFusion сервер управляет всеми сайтами или приложениями в ColdFusion MX, ColdFusion 5 и более ранних версиях
Рисунок 1. Один ColdFusion сервер управляет всеми сайтами/приложениями
в ColdFusion MX, ColdFusion 5 и более ранних версиях

Единственным решением такой проблемы был запуск каждого приложения на отдельной машине. Таким образом, каждое приложение могло быть настроено в отдельности и не затрагивало другие приложения в случае сбоя. Для корпоративных интрасетей, где может потребоваться изолировать приложение по управлению человеческими ресурсами от приложения по деловой отчетности, стоимость каждого сервера со своей копией ColdFusion может сделать это требование недостижимым и, в дополнении, потребовать дополнительные усилия по управлению этими приложениями.

В ColdFusion MX Enterprise 6.1 пользователи могут иметь один физический сервер, как если бы их было несколько. ColdFusion установлен на J2EE сервер в пределах своей собственной Виртуальной Машины Ява (JVM). Это название подразумевает, что виртуальная машина самодостаточная среда, которая ведет себя так, как если бы это был отдельный компьютер, в то время как в действительности разделяет ресурсы с другими виртуальными машина на том же сервере. В результате, пользователь может установить другой J2EE сервер на другую, полностью обособленную, JVM, а затем также установить туда ColdFusion. Таким образом, два ColdFusion сервера работают в полной изоляции друг от друга – как если бы они были на разных физических серверах (см. Рисунок 2).

ColdFusion MX Enterprise 6.1 позволяет устанавливать несколько своих копий на один физический сервер, сохраняя их в изоляции друг от друга
Рисунок 2. ColdFusion MX Enterprise 6.1 позволяет устанавливать несколько своих копий на один физический сервер, сохраняя их в изоляции друг от друга

 

Преимущества нескольких копий сервера

Несколько копий ColdFusion MX Enterprise 6.1 на одном сервере – самый экономичный способ получить надежные, безопасные и оптимизированные приложения. Это позволяет получать такие преимущества, которые в прошлых версиях требовали дополнительные денежные затраты и затрудняли поддержку управления несколькими физическими серверами.

Высокая надежность. При одной копии ColdFusion сервера на одном сервере неправильно созданные приложения, плохо продуманный CFX тег, ошибка в JVM, чрезмерная загруженность в одном приложении или сайте могут понизить производительность других приложений на той же машине, если не привести к сбою. Или, если сервер перезапускается, то в это время все приложения на нем недоступны.

При нескольких копиях ColdFusion MX Enterprise 6.1 на одном сервере таких проблем нет. Каждое приложение расценивается, как если бы оно было запущено на собственном сервере. Они могут быть остановлены, запущенны, обновлены и управляемы совершенно независимо друг от друга (см. Рисунок 3).

Если во второй копии сервера неправильно созданное приложение вызовет понижение производительности ColdFusion или сбой, или, если по каким-то причинам сервер нужно перезапустить, то приложения в 1 и 3 копиях сервера будут не затронуты
Рисунок 3. Если во второй копии сервера неправильно созданное приложение вызовет понижение производительности ColdFusion или сбой, или, если по каким-то причинам сервер нужно перезапустить, то приложения в 1 и 3 копиях сервера будут не затронуты

Улучшенная безопасность. Как я упоминал ранее, все приложения, запущенные под одной копией ColdFusion могут влиять друг на друга. В то же время, изолированные друг от друга приложения гарантируют безопасность таких общих контейнеров памяти как server, application и session. Разработчики могут использовать эти общедоступные контейнеры без страха, что другое приложение на этом же сервере может перезаписать важное значение.

И наконец, внутри каждой копии ColdFusion разработчики могут получить дополнительные преимущества от мощного средства безопасности ColdFusion MX - sandbox security. Это средство дает разработчикам точный контроль над использованием ресурсов в приложениях на уровне директорий, тегов, функций, источников данных и IP адресов.

Оптимизированные приложения. У разных приложений разные потребности. Одни могут вызывать сильную нагрузку на базу данных, другие могут использовать Java объекты, а третьи могут использовать большое количество Verity коллекций. Поскольку каждая копия ColdFusion MX имеет свой собственный Административный модуль и свои собственные настройки, то приложения могут быть прекрасно настроены для оптимального использования своих нужд. Такие настройки как конкурирующие запросы (simultaneous requests), маппинги (mappings), источники данных (data sources), verity коллекции (verity collections), отладка (debugging), размер памяти JVM (JVM heap size) и пути к классам (class path) могут быть установлены по желанию для каждой копии в отдельности.

Кластеризация (объединение). В ранних версиях ColdFusion вы могли повысить способность к повышенной надежности и производительности с помощью создания кластера нескольких серверов, чтобы исключить сбой всей машины. Это также было возможно с помощью использования решений по балансировке нагрузок на уровне системы или программного обеспечения. С помощью J2EE сервера, включая Macromedia JRun, который входит в состав ColdFusion MX Enterprise 6.1, вы можете объединить копии серверов на одном физическом сервере (см. Рисунок 4). Иными словами, вы можете иметь множество копий ColdFusion приложений, каждые из которых запущены отдельно друг от друга, и объединить их все в кластер. Таким образом, вам не придется тратить деньги на покупку и поддержку нескольких машин.

Кластер копий ColdFusion на одном физическом сервере предоставляет преимущества восстановления сбоя без затрат на дополнительное 'железо'
Рисунок 4. Кластер копий ColdFusion на одном физическом сервере предоставляет преимущества восстановления сбоя без затрат на дополнительное "железо"

Также ColdFusion позволяет разработчикам объединять контейнеры сессий. В ColdFusion 5 и более ранних версиях было трудно использовать сессии и кластеризацию одновременно. ColdFusion MX Enterprise 6.1 в J2EE конфигурации позволяет использовать Java сессии, которые могут быть объединены (на одних и тех же J2EE серверах). Следовательно, ColdFusion переменные сессий могут быть разделены между копиями ColdFusion на одном и том же физическом сервере. Конечно, в зависимости от требований вашего сайта, вы можете продолжать использовать кластеры с множеством физических серверов и все еще получать пользу от Java сессий.

 

Ресурсы по этой теме

Для получения большей информации по этой теме обратите внимание на следующие ссылки:

 

Заключение

ColdFusion MX Enterprise 6.1 позволяет разработчикам настроить среду, в которой будут получены множество преимуществ, доступных в ранних версиях только благодаря дополнительным денежным затратам на приобретение и поддержку нескольких физических серверов. Это дает высокую надежность, улучшенную безопасность, оптимизацию приложений и кластеризацию (объединение) с помощью использования встроенного Macromedia JRun J2EE сервера или такого другого J2EE сервера как, например, IBM WebSphere, Sun ONE App Server или BEA WebLogic. Эти возможности вместе с высокопродуктивным языком ColdFusion (CFML) и большим набором встроенных служб делают ColdFusion MX Enterprise 6.1 самым лучшим решением быстрого создания и развертывания мощных Web-приложений и Web-служб.


Источник: The Benefits of Running Multiple Server Instances

 


Hosted by uCoz