|
|
|
|
SailFin: Укрощение "сборщика мусора" для SIP-специфичных задач
Posted by lativ in SailFin
Телекоммуникационные сервера приложений такие как SailFin требуют более детерминированной модели "сборщика мусора" с предсказуемыми временами пауз, и также с хорошей масштабируемостью в многопроцессорных системах. Действительно, длительное ожидание соединения при телефонном разговоре - недопустимо.
Команда Sun, отвечающая за производительность, потратила много времени, настраивая "сборщик мусора", при тестировании SailFin на больших нагрузках. По результатам тестирования Bharath написал серию заметок: ("Укрощение сборщика мусора для SIP-специфичных задач" и "Укрощение сборщика мусора для SIP-приложений"). Читайте!
Два вторых издания, две уникальные новинки
Posted by katya in MySQL
|
Все разговоры недели сосредоточены вокруг книг. 2-ое издание книги High Performance MySQL только что появилось на полках. Помимо того что книга была полностью переписана, ее также можно назвать книгой сообщества, поскольку авторы собрали вместе официальные, а также просто используемые сообществом средства, чтобы объяснить на их примере как работает MySQL. Многие из тем также обсуждались в сообществе: оптимизация и индексирование, масштабируемость, расширенные возможности SQL, производительность. Другая отличительная черта - это первая книга, где авторы обясняют как писать технические книги. Другое вышедшее 2-ое издание - это книга MySQL 5.1 Cluster DBA Certification Study Guide. Не заметили никакой особенности на обложке? Да, это книга компании Sun. Кстати, это первая книга, напечатанная новым партнером Сан, - Vervanté. Другими словами, первая книга Сан от Vervanté - это книга про MySQL! |
Мониторинг использования памяти вашим сервером GlassFish
Posted by lativ in GlassFish
Meena опубликовала небольшую заметку о том как включить систему логирования сборщика мусора (GC logging) как в случае кластерного так и DAS экземпляров сервера GlassFish. Подробности в её заметке: Мониторинг роста используемой памяти в GlassFish.
Эдуардо Пеллегри хочет поддержать успехи проекта VisualVM, возможно нам следует пригласить их в одну из следующих программ телевидения аквариума.
NetBeans 6.1 Final - выпущен как раз к JavaOne!
Posted by kostya in NetBeans
|
Как мы уже писали - только что вышла версия NetBeans 6.1. Этот релиз несет в себе как новые возможности, так и улучшения в производительности и стабильности. Что касается возможностей, тут необходимо особо упомянуть поддержку JavaScript - языка, который все любят и ненавидят одновременно (см. сессию Roberto на JavaOne), а так же улучшенную поддежку MySQL, Spring Framework, Hibernate, Axis 2, Sailfin и Jersey (RESTful веб сервисов). |
Так же возвращаются некоторые из фич, потерянных при переходе от 5.5 к 6.0 - например поддержка JavaBeans и JSF CRUD Generator. NetBeans так же предоставляет теперь более более очевидный и удобный способ по совместному использованию библиотек. Были так же модернизированы многие возможности по разработке серверных компонент, например поддерживается последний релиз GlassFish v2ur2. Улучшения в производительности коснулись времени запуска, code-completion а так же более оптимального использования памяти. Полный список фич и улучшений вы можете найти здесь.
В планах на будущее - поддержка PHP, JavaScript debugger, поддержка Groovy/Grails и многое другое!
Как обычно все варианты для скачивания доступны на этой странице. Поздравляем команду NetBeans с успешным релизом!
Руководство по настройке GlassFish от Scott Oaks
Posted by kostya in GlassFish
|
Scott Oaks - это один из тех замечательных специалистов из Java performance team, которые стояли за недавними достижениями GlassFish по тесту производительности SPECjAppServer ([1], [2]). Scott суммировал весь полученный опыт и опубликовал краткое руководство по настройке GlassFish в своем блоге. Оно включает в себя рекомендации по настройке как JVM, так и сервера приложений. Затрагиваются вопросы выбора алгоритма работы сборщика мусора, настройки acceptor и request-processing нитей веб-контейнера, кеширования выражений на уровне драйвера JDBC и пр. Чтение этой статьи должно послужить для вас хорошей затравкой к изучению сотен страниц подробной документации о настройке производительности, которая доступна для скачивания в соответствующих разделах. |
SOAP/TCP + FI = Быстрые Веб Сервисы!
Posted by kostya in GlassFish
|
Вот хороший пример преимущества многоуровневой архитектуры Metro: используйте эффективный алгоритм кодирования (FastInfoset) и протокол, который хорош для множества маленьких пакетов (Stateful SOAP/TCP) - и вы можете получить трехкратное преимущество над простой пересылкой XML по HTTP. Смотрите графики для различных тестов: простых, средних и сложных. Остальные подробности в блоге Oleksiys. |
Так же важно отметить, что пеперь благодаря Noemax есть возможность взаимодействия SOAP/TCP c Microsoft's Windows Communication Framework (см. анонс).
Новые возможности в Japex 1.1.1
Posted by kostya in GlassFish
|
Santiago сообщил о выходе Japex 1.1.4. Это средство для разработки micro-benchmark тестов для GlassFish WS и XML. Новая версия добавляет новые возможности, включая CORBA (см. аттрибут japex.singleClassLoader) и симуляция нескольких пользователей (см. japex.runIterationDelay). Быстрое взаиможействие между разработчиками проекта и пользователями - это ключевое преимущество открытой разработки. Проект Japex является в данном случае хорошим примеров. Читайте подробности в блоге Santiago. |
Раскрыты секреты Grizzly
Posted by lativ in GlassFish
Если Вам когда либо приходилось сталкиваться с настройкой производительности в Java, то вы вероятно знаете о некоторых поддерживаемых и возможно и о не поддерживаемых параметрах настройки JVM. Jeanfrancois Arcand: "В Grizzly имеется множество опций настройки, которые вы можете указать в конфигурационном файле Grizzly (большая часть из них фактически параметры виртуальной машины Java (JVM)).
Ниже список основных свойств, по версии alexismp (все применительно к GlassFish v2):
• HTTP сжатие
• Поддержка Comet
• snooping support (настройка логов - излюбленая тема alexismp)
• Асинхронная обработка запросов
• Управление потреблением ресурсов
В случае настройки JVM, как обычно, проблема с большим количеством опций для настройки приводит к необходимости использования методологии и является хорошей причиной попробовать их все на практике. Чем больше возможностей тем больше ответственность.
Вернемся к теме нашего сообщения - Grizzly, на JavaLobby опубликована небольшая статья по поводу недавно вышедшего релиза Grizzly 1.6.1.
Ускоряем вебсервисы через SOAP/TCP протокол
Posted by alexface in GlassFish
|
Архитектура Metro поддерживает множество транспортных протоколов (не только HTTP), а в последний релиз Metro была добавлена поддержка протокола SOAP/TCP (см. также Non Assertion Covenant), разработанного для использования в Intranet и способного повысить производительность системы. Помимо GlassFish v2, Metro 1.0 уже можно использовать на Apache Tomcat, также ожидается его появление и в других контейнерах. По сообщениям от Paul'a, у Noemax уже есть реализация для Windows Communication Framework (заметки Paul'а, Noemax пресс релиз), поэтому вы также можете использовать Metro и на Windows. |
Быстрый запуск GlassFish?
Posted by katya in GlassFish
|
Все хотят высокой производительности, но люди часто забывают определить это понятие. Говоря о производительности, большинство людей имеют в виду результаты тестов производительности (где у GlassFish, кстати, очень хорошие результаты). Однако, разработчики также сильно заинтересованы в небольшом времени запуска. |
Prashanth написал заметку касательно времени запуска. Он обсуждает вещи, необходимые для улучшения (т.е. уменьшения) времени запуска и завершения GlassFish v2 (как на одной машине, так и на кластере). Улучшения разбиты на группы по модулям. Догадываетесь, что именно приводит к наилучшему выигрышу?
Конечно вы вправе ожидать дополнительных улучшений в GlasFish v3, где архитектура ядра поддерживает ленивую загрузку модулей.
JRuby on Rails для приложений уровня предприятия (с неплохой производительностью)
Posted by katya in General
|
Naoto TAKAI (не так давно ставший "ответственным", т.е. обладающим правом вносить изменения в пространство grizzly) пару месяцев назад сделал презентацию на конференции RubyKaigi2007. Слайды доступны здесь. |
В них упоминается Grizzly on Rails (смотрите также заметку "Ruby and jRuby, Mogrel, Goldspike, Grizzly and GlassFish"), GlassFish v3 и приводятся интересные результаты, полученные на тестах Mongrel, GoldSpike and WEBrick. Будучи развернутым поверх удачной технологии, JRuby on Rails похоже вполне готов для приложений уровня предприятий и с точки зрения производительности. Провайдерам сервисов также стоит рассмотреть этот вариант.
Разбираем случай: масштабирование VoIP-компонента с помощью GlassFish
Posted by alexface in GlassFish
|
TransNexus пишет софт для VoIP и биллинга. Недавно они стали сотрудничать с Sun с целью повышения масштабируемости их NexSRS VoIP Peering Server. Объединившаяся команда инженеров определила, что использование однопоточного веб-сервера явилось основной проблемой при масштабировании NexSRS. Чтобы решить эту проблему, было решено перевести пользовательскую часть на GlassFish (и получить всю мощь высокопроизводительного HTTP коннектора Grizzly). |
Результаты превзошли ожидания. Вдобавок к повышению производительности за счет масштабирования (увеличение на 76% на четырехядерной системе) наблюдалось ускорение и на одноядерной системе (на 23%). Подробности можно прочитать в статье на SDN: Making Java Technology Faster Than C with LRWP.
GlassFish v2, 64-bit и VM по умолчанию
Posted by kostya in GlassFish
|
Вот несколько вещей, которые изменились в GlassFish v2, что должно привести к лучшей производительности:
|
• GlassFish v2 так же поддерживает Java 6. Это дает почти немедленную выгоду в производительности и задаром - не надо менять код, перекомпилировать или развертывать его заново. JSP компилятор теперь использует JSR 199, что тоже является одним из достоинств. Результат по SPECjAppServer подтверждает все вышесказанное.
Производительность важна, 54-х кратное увеличение для JavaFX
Posted by katya in General
|
Поддержка работы в режиме интерпретатора - это наиболее распространенный первый шаг при разработке языков, работающих на виртуальной машине Java (JVM). Так, в частности, на данный момент работают и JRuby 1.0, и JavaFX Script (анонсированный на JavaOne в мае). Более продвинутая стадия поддержки языка - поддержка компиляции в байт-код, она доступна для Groovy и JavaScript.
Команды разработчиков
JRuby и
JavaFX
начали работать нак компиляторами,
тесно сотрудничая с экспертами по |
Думаете, а как эта новость связана с GlassFish? Ну, например, можно реализовать JavaFX контейнер для GlassFish v3 или попробовать использовать Phobos и JSR 223 (Scripting for the JavaTM Platform) JavaFX на стороне сервера!
Оцениваем производительность JRuby в GlassFish
Posted by katya in GlassFish
|
В последнее время мы довольно частно рассказываем о различных результатах тестирования производительности (benchmarking). Если вы еще не видели последние результаты SPECjAppServer 2004 с GlassFish v1 и v2, то почитайте (намек: результаты очень хорошие). |
Все это еще раз подтверждает, что производительность GlassFish при использовании традиционных Java EE технологий высока. Но как обстоит дело со скриптовыми языками, такими как Ruby? Vishnu Gopal решил проверить, сравнив работу приложения в среде JRuby/Glassfish и Mongrel/C. И что вы думаете? GlassFish и тут не ударил в грязь лицом. Так например, Vishnu пишет что развертывание (deployment) в GlassFish показывает "в двое быстрое время ответа в половине случаев".