| RSS



Меню

Bookmark and Share


Статистика
Ваш IP: 3.147.48.226
Вы используете: v





Сейчас на сайте:

Тех поддержка ->

Облако тэгов
ОС видио Tor Обратная сторона антенна 4.6 PHP Эксплоит Windows Server 2008 qip Virtual chroot kernel proc sysctl tune FreeBSD bridge Boot Disk Bluetooth GEO game directx Emulator Python Shell DDoS червь Conficker вирус троян Лаборатория Касперского пиратство apple iPhone ИТ-отрасль Щеголев Microsoft экономический кризис Twitter социальная сеть анонимность Лицензия Open Source ASP.NET MVC уязвимость MySQL база данных файлообмен закон франция пират Skype мобильный Deutsche Telekom Хакер киберпреступник Trend Micro кибератака Германия робот утечка данных персональные данные ноутбук интернет Китай цензура ядро Linux Торвальдс Windows Vista Acer Linux патент браузер Firefox Internet Explorer Opera Net Applications Safari Intel Linux Foundation Moblin Oracle патч банкомат кардер HSM IBM X-Force Cofee сша кибервойна Эстония Dell ИТ-специалист хакерские атаки Pirate Bay контроль кибербезопасность язык программирования The Pirate Bay Пиратская партия утечка информации приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 Баллмер взлом Пентагон ботнет Украина Facebook Cisco cloud Windows XP нетбук торрент музыка биометрический nokia ФБР IP-адрес CIPAV Comcast sms RSA java Google CAPTCHA Symantec спам конфиденциальная информация инсайдер Perimetrix антивирус тест Anti-Malware Windows 7 операционная система Windows провайдер авторское право RapidShare UNIX свиной грипп шантаж дети EFF BluWiki копирайт экстремизм Panda Security cloud computing McAfee Cybercrime Response Unit Bottle Domains HTTPS ICANN студент шпионское ПО Норвегия школьник New York Times XSS YouTube Warner Music кибершпионаж КНДР Ubuntu свободное ПО AMD ATI касперский Россия РФ сервер хостинг фальшивый антивирус Comodo CA Wi-Fi D-Link суд пароль блог фишинг Одноклассники медведев контрафакт мошенник штраф Sony GPS по Gumblar JAVASCRIPT хакеры вредоносное ПО Yahoo ФАС компьютер Софт MPAA кибероружие PandaLabs Red Hat Минкомсвязи сбой ASUSTeK Computer мошенничество Доктор Веб ВКонтакте Cyber-Arc исходный код PCI DSS МВД фильтр порнография BREIN свобода слова Казахстан GEMA Autodesk сисадмин Gmail кредитная карта кибермошенник LiveJournal шифрование криптография Deep Purple банк нанотехнологии Wikipedia zero-day ColdFusion выборы кража данных DNS BIND Android BASIC атака Black Hat Mac OS X Click Forensics Clampi домен фсб Прокуратура Уголовное дело icq Barrelfish киберпреступность Sophos AT&T ошибка Electa Gamma Knife OpenBSD DARPA военные Сайт Visual Studio 2010 .NET Framework 4 Chrome OS электронная почта турция конференция спамер FTC полиция российская ОС Koobface Великобритания БЕЛОРУССИЯ грузия BSA Bittorrent облачные вычисления Azure Европа Dr.Web Билл Гейтс спецслужбы Cryzip Живой Журнал Royal Bank of Scotland смартфон Canonical Pwn2Own F-Secure Symbian Hotmail фильм

Главная » Статьи » Общие Статьи

Золотая рыбка GlassFish: сервер приложений от Sun с открытым исходным кодом

В 2005 г. корпорация Sun анонсировала проект GlassFish – сервер приложений с открытым исходным кодом для платформы Java. Этот шаг в направлении Open Source, позволил создать действительно качественный сервер приложений. Вскоре сообщество разработчиков GlassFish выпустило первую версию, а сейчас – готовится вторая.

Версии GlassFish

Проект GlassFish был анонсирован на конференции JavaOne 2005. Менее чем через год, на следующей конференции JavaOne, был представлен первый выпуск. Причем этот сервер приложений можно было скачать с сайта Sun либо с сайта сообщества – отличия были только в инсталляторе и названиях. GlassFish v. 1 был сфокусирован на выполнении спецификации Java EE 5 и функциональности класса предприятия, которые не были включены в предыдущую версию сервера приложений от Sun. GlassFish v. 2 на момент написания статьи все еще находится в стадии разработки (правда, последнюю версию можно скачать с официального сайта). Таким образом, GlassFish v. 1 распространяется с мая 2006-го, а GlassFish v. 2 окончательно доводится до ума. Фактически все сообщество сейчас работает над второй версией, и специалисты рекомендуют немного подождать ее выхода.

GlassFish v. 2 включает весь необходимый набор функций для корпоративных приложений из предыдущей версии. Кроме того, он поддерживает концепцию профилей, поэтому может быть сконфигурирован для использования в режиме разработки, в режиме «предприятия» или кластера.

GlassFish v. 3 находится в стадии планирования (в рамках сообщества GlassFish употребляется термин «Concept Creation» – стадия концепции программного продукта, или просто прототипирования). Ведется переработка модульной архитектуры, что позволит увеличить скорость загрузки и скажется на производительности в целом. Планируется, что первые версии для тестирования появятся в середине года.

У пользователей также есть выбор при установке конкретного дистрибутива GlassFish: можно взять либо версию Sun, либо сообщества разработчиков GlassFish. Эти программные продукты различаются только инсталлятором и поддержкой. Для тех, кому будет недостаточно по той или иной причине поддержки сообщества, смогут воспользоваться коммерческим вариантом фирмы Sun.

Возможности GlassFish

GlassFish включает поддержку самых последних спецификаций JC: JSP 2.1, JSF 1.2, Servlet 2.5 и JSTL 1.2.
Технология Java Server Faces (JSF) была добавлена в платформу Java EE 5 и является компонентной моделью для слоя приложения, который занимается представлением данных. JSF можно использовать с JavaServer Pages (JSP) или другими похожими технологиями. JSF версии 1.2 имеет множество улучшений по сравнению с предыдущими выпусками. Хотелось бы особо отметить улучшения в обработке запросов, что позволяет более эффективно работать с методологией AJAX.

Другой особенностью GlassFish является Jasper, JSP-компилятор, который теперь может использовать преимущества API в Java 6 SE. По разным оценкам, благодаря этому происходит увеличение производительности в 8–10 раз. Jasper также можно сконфигурировать для использования JDT-компилятора платформы Eclipse, хотя выигрыш в скорости будет не таким большим.

Некоторое время назад в GlassFish стали применять довольно качественные JSF-компоненты проекта Woodstock, которые могут быть интересны многим разработчикам. Они также поставляются с открытым исходным кодом, что является несомненным плюсом.

Отдельно расскажем о возможностях интеграции с существующими библиотеками и фреймворками. Они позволяют команде программистов не только быстро приступить к разработке действительно нужной функциональности, а не реализации рутинных вещей, но увеличить производительность при дальнейшем развитии проекта. Сообщество GlassFish очень щепетильно относится к интеграции с различными фреймворками и тщательно следит за совместимостью с ними. Их список постоянно растет, в качестве примера можно упомянуть такие известные и популярные проекты, как AppFuse, DWR, Facelets, IBATIS, JBoss Seam, Shale, Spring, Struts, Tapestry, WebWork, Wicket и прочие.

Open Source

Очень важно понять, почему корпорация Sun выбрала именно такую форму распространения своего продукта – с открытым исходным кодом. Для этого немного оглянемся назад…

Одним из первых серверов приложений для платформы Java был Tomcat. Его разрабатывает сообщество Apache, которое включает в себя, в том числе и специалистов фирмы Sun. Tomcat стал ранним стандартом для Java-сервлетов и JSP. Многие считают, что огромной популярности этого продукта в значительной степени способствовала его бесплатность и открытый исходный код.

Как известно, есть очень много видов лицензий для продуктов open source. Причем от выбора лицензии подчас зависит их популярность, особенно в корпоративной среде, где такие вопросы очень важны. На данный момент GlassFish использует CDDL (Common Development and Distribution License), которую предложила Sun, на основе Mozilla Public License. Но существует и альтернативная лицензионная схема на основе GPL второй версии и CPE. Очевидно, что возможность выбора также расширит базу пользователей GlassFish. Корпоративные клиенты предпочтут преимущества CDDL, а сообщества разработчиков смогут использовать альтернативный вариант, если в этом будет необходимость.

Процесс создания GlassFish довольно транспарентен: в нем активно участвует сообщество разработчиков и налажены коммуникации с другими заинтересованными сообществами. Аналогичная гибкость проявляется и к пользователям, как результат – оперативно поступают отзывы о функционировании продукта, что самым положительным образом сказывается на его качестве. В целом процесс разработки по сравнению с другими проектами более гибкий и продуманный. Гибкость процесса и вовлеченность разработчиков обеспечивается гетерогенностью (можно употребить менее точные термины «относительной децентрализованностью» или «распределенностью») сообщества GlassFish: его участники используют различные средства общения с помощью Интернета. В результате скорость циркуляции информации резко увеличивается, несмотря на то что разработчиков разделяют многие тысячи километров.

Веб-сервисы

Веб-сервисы постепенно занимают чуть ли не центральное место в архитектуре систем класса предприятия. Это связано в том числе и с тем, что они являются промежуточным звеном между Java-платформой и платформой Microsoft, которые используются наиболее часто. В рамках сообщества GlassFish разрабатывается проект Tango (WSIT). WSIT полностью использует преимущества, которые дает вторая версия GlassFish. Созданы специальные стандарты, которые обеспечивают полную совместимость с другими продуктами, прежде всего компании Microsoft.

Инструменты

Сообщество GlassFish активно взаимодействует с разработчиками NetBeans, поэтому именно эта IDE стала первой поддерживающей GlassFish. C тех пор такой поддержкой могут похвастаться различные среды разработки, например IDEA, JBuilder и Eclipse. Кроме того, разработчики GlassFish создали большое число инструментов, которые стали популярны сами по себе. В качестве примера стоит рассмотреть средство непрерывной интеграции – Hudson. Оно используется для создания билдов, тестирования и других подобных действий. Hudson достаточно прост и поддерживает систему плагинов для расширения базовой функциональности.
Одной из сильных сторон второй версии GlassFish является система администрирования. Она поддерживает как дружественный GUI-интерфейс, так и работу через командную строку. В качестве языка программирования используется TCL. Разумеется, система администрирования позволяет управлять кластерами и нагрузкой на сервер.

Как говорилось выше, GlassFish v. 2 поддерживает различные профили – для разработки, для «предприятия» и кластера. Сам дистрибутив значительно уменьшился по сравнению с предыдущим из-за применения технологии сжатия Pack200, которая применяется и для дистрибутива Java SE 6. Инсталлятор GlassFish v. 2 также может использовать автоматический центр обновлений, что избавит от лишних хлопот администраторов и позволит иметь актуальную версию GlassFish.

Планы на будущее

Усовершенствования проекта GlassFish не прекращаются. Сообщество разработчиков продолжает вносить новые улучшения в этот продукт. Кроме того, оно само постоянно расширяется за счет новых членов. В планах есть как организация собственных групп пользователей, так и проведение небольших конференций в рамках JavaOne.

Тактической целью сообщество можно назвать выпуск второй версии. Кроме того, постоянно расширяется список приложений и фреймворков, которые успешно интегрируются с GlassFish.

Глобальные планы предусматривают разработку третьей, более производительной и интеллектуально потребляющей ресурсы версии сервера приложений. Такой сервер позволит использовать его не только в рамках систем уровня предприятия, но и как легкий сервер приложений для небольших задач. Прототипы третьей версии уже в процессе разработки.

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

Список вопросов к эксперту по GlassFish

1. Представьтесь, пожалуйста.

Павлова Екатерина, ведущий инженер, технический лидер группы.

2. Каков ваш опыт работы с GlassFish?

Строго говоря, не считаю себя экспертом по Java EE, поскольку в основном в последнее время работаю над проектами из других областей (сейчас это Real-Time Java, Java VM). Однако я стараюсь следить за развитием событий в мире Java EE и не только теоретически. Я являюсь одним из редакторов новостной ленты «Аквариум» (http://blogs.sun.com/theaquarium_ru) и координировала организацию стенда, посвященного Java EE на Sun TechDays 2007 в Санкт-Петербурге.

3. В каких других проектах вы участвовали?

За 10 лет мне довелось поучаствовать в проектах во многих областях – от создания веб-приложений и баз данных, написания приложений для телекоммуникаций до системной разработки на большом количестве разнообразных платформ. Первый опыт промышленной разработки я получила при работе над первым русскоязычным дистрибутивом Linux в 1996 г., сейчас в основном занимаюсь Java VM.

4. Какова, на ваш взгляд, главная цель проекта?

Если говорить о GlassFish как о проекте, то он появился как часть усилий Sun Microsystems по открытию значительного объема разработанного в компании кода (например, OpenSolaris и OpenJDK). Так, в основу GlassFish легли части Sun Java System Application Server компании Sun и TopLink (решение для хранения Java объектов в реляционных БД, предоставленное Oracle). Проект успешно живет, так что формально, наверное, можно считать, что исходная цель достигнута.

Однако GlassFish – это не только проект. Это еще и сервер приложений с открытым кодом, т. е. некоторый продукт. И тут цели меняются от версии к версии. Наиболее важные из них – совместимость с текущей версией спецификации Java EE и промышленное качество. GlashFish полностью совместим с Java EE 5 и используется многими компаниями (SJSAS 9 PE – сервер приложений Sun Microsystems основан на GlassFish). Успех ли это? Реализации J2EE 1.4 стали доступны через два-три года после публикации спецификации, с появлением GlassFish ситуация резко изменилась – большинство серверов объявило о поддержке Java EE 5 гораздо быстрее (от 6 месяцев до 2 лет).

GlassFish – это также и сообщество. Около 7000 независимых программистов и представителей компаний участвуют в работе над проектом. Конечно, не каждый член сообщества играет активную роль в написании кода. Многие помогают просто используя свежие версии и сообщая об обнаруженных проблемах.

Благодаря усилиям сообщества многие части GlassFish реализованы в виде компонентов, которые можно использовать отдельно, – JAXB, JAX-WS, JAXP, StAX, JSP, JSF и т. д. Сообщество активно развивается, и, я надеюсь, его вклад в GlassFish будет только увеличиваться.

5. Для кого в первую очередь предназначен GlassFish?

Важной особенностью GlassFish является быстрота, с которой в нем появляется поддержка новых стандартов и технологий. Поэтому GF особенно интересен и удобен для пользователей, желающих оценить новые функции.

GF также предоставляет уникальную возможность разобраться самостоятельно, как устроена реализация Java EE платформы, и попробовать свои силы в работе над ее развитием.

Ну и конечно же, GF – классический сервер приложений, предназначенный как для разработки, так и для промышленного внедрения.

6. Для каких типов проектов предназначен GlassFish?

Последняя бета-версия GF v2 (выпуск финальной версии GF планируется осенью 2007) – это полнофункциональный сервер приложений. который годится для всех традиционных типов Java EE-проектов. GF v2 обеспечивает функциональность, необходимую для внедрения больших корпоративных проектов, в частности кластеризацию, отказоустойчивость, балансировку нагрузки, раскопирование в оперативной памяти, администрирование.

GF также поддерживает интероперабельность с технологиями Microsoft (с помощью WSIT). Последнее позволяет наладить взаимодействие между Web-сервисами на Java и средами .Net. Другой из многих новых возможностей в GlassFish версии v2 является интегрированная реализация стандарта JBI (Java Business Integration), что делает GF ориентированным на сервис-ориентированную архитектуру (SOA).

На JavaOne 2007 было объявлено о том, что Ericsson планирует предоставить реализацию контейнера для SIP-сервлетов (SIPSession Initiation Protocol) для включения в GlassFish. Большинство EE приложений имеет транзакционную природу, т. е. логика сфокусирована вокруг получения/обновления данных в базах данных. Поддержка сессий позволит делать еще более интересные приложения. Например, вместо простого списка ваших клиентов со статической информацией вы сможете узнать, доступен ли данный клиент сейчас онлайн и если да, то использует ли он мобильный телефон или фиксированный канал связи? Такая информация позволяет выбрать наиболее удобный способ связаться с клиентом в конкретный момент времени.

Но несмотря на обилие продвинутых возможностей, GlassFish остается удобным средством и для создания небольших приложений, и для получения первого опыта с разработкой на платформе Java EE. Позиционирование GlassFish как программного продукта на рынке

7. Как будет позиционироваться GlassFish на рынке продуктов для создания ПО?

GF позиционируется как высококачественный сервер приложений с открытым исходным кодом. И речь не о будущем, он уже используется во многих проектах.
Безусловно, GF будет и дальше проектом Open Source.

8. Какие фирмы уже используют GlassFish?

Их много. На новостном сайте «Аквариум» есть специальная рубрика, в которой рассказывается о некоторых известных внедрениях GF (blogs.sun.com/theaquarium/tags/stories/). Так, в последней истории рассказывается, как переносился на GF код системы для российского отделения Auchan – одного из крупнейших ритейлеров мира.

Еще один источник информации о внедрении систем на GF – слайды с конференции JavaOne 2007 (их можно скачать с http://developers.sun.com/learning/javaoneonline/).

Всего по состоянию на май 2007 г. на сайте GF было зарегистрировано более 2 500 000 скачиваний продукта. Некоторые из известных установок наглядно представлены на карте – http://beta.glassfish.java.net:81/maps/.

9. Какое будущее ждет GlassFish?

Я не умею предсказывать будущее. Мне кажется, что у GF есть шансы занять место среди наиболее популярных серверов приложений и что вклад сообщества в развитие GF в недалеком будущем станет основным.

10. Какие ближайшие конкуренты есть у GlassFish?

Часто спрашивают, что лучше использовать Tomcat или GlassFish? Конечно, Tomcat не является полноценным сервером приложений, но если ничего кроме servlet/JSP и не требуется? Интуитивно кажется, что GlassFish тяжеловеснее и медленнее, но в реальности не так. Благодаря ленивой инициализации, GlassFish такой же легковесный, как Tomcat, а при использовании http-коннектора Grizzly демонстрирует значительно более высокую производительность на реальных приложениях по сравнению с Tomcat.

Формально ближайшими конкурентами GF, наверное, надо считать другие открытые реализации платформы Java EE – JBoss, Geronimo и JOnAS. Однако во многом эти проекты сотрудничают с целью улучшить взаимодействие и переносимость. Например, GF и JBoss на JavaOne 2007 продемонстрировали результаты своих усилий по поддержке компонентов JSF (проекты WoodStock от Sun и RichFaces от JBoss) на разных контейнерах/реализациях. JBoss вообще является официальным контрибьютором в код GlassFish (JSF RI). Кстати, на Apache Wiki (http://wiki.apache.org/ws/StackComparison) есть сравнительная таблица для ряда доступных стеков веб-сервисов. По субъективному мнению, реализация GlassFish – одна из самых передовых и становится только лучше

11. Имеется ли возможность использовать фреймворк для веб-разработок Ruby on Rails?

Да, конечно. Использованию RoR-приложений с GlassFish посвящено, кстати, очень много заметок на «Аквариуме» (категория rails). В них рассказывается про первые шаги RoR с GF, как заставить работать RoR-приложение в GF с БД Derby в режиме embeded, про Rails Integration, про развертывание Web-приложений RoR на кластерах GlassFish. Одним из примеров успешного развертавания RoR-приложения в GF является система для управления Web-контентом Mephisto.

14. Какие средства разработки поддерживают работу с GlasFish?

GF v2 поддерживается всеми основными средами разработки на Java, включая Netbeans, IDEA и Eclipse (начиная с MyEclipse 5.5). Из множества других интересных инструментов хочу отметить JVantage – инструмент для визуальной разработки веб-приложений, позволяющий быстро создавать Java EE-приложение из описания модели базы данных, Quickr – утилиту для управления persistence layer, которая основана на Java Persistence Query Language и YourKit Profiler, удобное средство оптимизации приложений.

WWW

  • http://blogs.sun.com/theaquarium – групповой блог сообщества разработчиков GlassFish, который освещает все наиболее важные события в жизни проекта. Этот сайт будет хорошей отправной точкой для знакомства с проектом GlassFish.
  • http://blogs.sun.com/theaquarium_ru – русская версия блога, «в котором нет ни слова о рыбах».
  • http://glassfish.java.net – официальная страница проекта GlassFish, где можно почитать документацию, форумы и вики, а также подписаться на рассылки. И самое главное скачать различные билды проекта GlassFish.
  • http://java.sun.com/javaee/glassfish - на сайте фирмы Sun имеется и раздел, отведенный проекту GlassFish.
  • http://woodstock.dev.java.net – страница проекта JSF-компонентов проекта Woodstock.
  • http://wsit.dev.java.net – страница проекта Tango (WSIT)

Что такое GlassFish – краткие сведения

GlassFish – это не только программный продукт, но и целое сообщество, целью которого является создание полноценного сервера приложений для платформы Java EE 5. Сообщество также разрабатывает вспомогательные технологии для Java EE 5, в частности JAXB, JAX-WS, JAXP, StAX, JSP и JSF. А сам сервер приложений GlassFish включает в себя несколько известных проектов, например jMaki, Phobos и DynaFaces, и множество инструментов, таких как Hudson – для непрерывной интеграции.

Серверы приложений от Sun

Sun позиционирует в качестве серверов приложений несколько продуктов. Перед вами список их самых последних версий:

  • iPlanet AS 6.0 (Netscape AS) – сервер приложений совместимый с J2EE 1.2;
  • SunOne AppServer 7.0 – сервер приложений совместимый с J2EE 1.3 RI;
  • Sun Java System AppServer 8.0 – сервер приложений совместимый с J2EE 1.4;
  • Sun Java System AppServer 9.0 (GlassFish v. 1) – сервер приложений совместимый с Java EE 5;
  • Sun Java System AppServer 9.1 (GlassFish v. 1) – сервер приложений совместимый с Java EE 5.

Цикл разработки GlassFish

Существуют три версии GlassFish на разных стадиях разработки:

  • концепт-версия (Concept Creation) – прототип продукта, в котором собрана основная функциональность;
  • разрабатываемая версия (Active Development) – версия продукта, которая разрабатывается в данный момент;
  • выпущенная версия (Maintenance) – данная версия продукта уже выпущена, идет только исправление ошибок.

GlassFish v. 1 – выпущенная версия, GlassFish v. 2 – версия в разработке, а GlassFish v. 3 все еще находится в стадии концепции.

Поддерживаемые стандарты для WS

  • WS-MetadataExchange, WS-MetadataExchange WSDL, WS-Transfer;
  • WS-ReliableMessaging, WS-ReliableMessaging Policy;
  • WS-Coordination and WS-Atomic Transaction;
  • WS-Security, WS-SecurityPolicy, WS-Trust, WS-SecureConversation;
  • WS-Policy, WS-PolicyAttachment.

Официальное название проекта Tango – WSIT (Web Services Interoperability Technologies)

GlassFish выпускается с двумя видами лицензий для большей гибкости

Проект GlassFish поддерживает традицию Sun выпускать все больше приложений с открытым исходным кодом

Категория: Общие Статьи | Добавил: aka_kludge (15.06.2009) | Автор: Борис Вольфсон
Просмотров: 4152 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
    Главная      
...
На службе : дней

10:24
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск


Copyright tHR - TeAM 2024 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика