Новости для разработчиков
21.01.2011
—
Новости Hi-Tech
- Кристиан Хогсберг (Kristian Hogsberg), занимающийся разработкой легковесного графического сервера Wayland, внес в кодовую базу GTK+ 3.0 изменения, обеспечивающие базовую поддержку Wayland в этом популярном графическом тулките, пишет Софт@Mail.ru. Январский коммит Хогсберга добавляет в GTK+ новый GDK-бэкенд - Wayland. В коде предусмотрена поддержка многих бэкендов (multi-backend), что означает возможность одновременной сборки нескольких GDK-бэкендов в GTK+. В своем блоге Кристиан демонстрирует скриншот с тестовым GTK-приложением, работающим в среде графического сервера Wayland. Причем, благодаря поддержке multi-backend одно и то же приложение было одновременно запущено под X-сервером и под Wayland, что и демонстрируется на скриншоте.
- Представлен релиз Apache Tomcat 7.0.6, контейнера для выполнения JSP-страниц и Java-сервлетов с реализацией полной поддержки спецификации Java Servlet 3.0, пишет Opennet.ru. По приблизительным оценкам, Tomcat используется на 75% сайтов, базирующихся на Java. Tomcat 7 позволяет упростить разработку и развертывание сложных web-приложений на языке Java, предоставляя встроенную поддержку возможностей, которые без Tomcat необходимо было бы реализовывать вручную. Версия 7.0.6 является первым стабильным выпуском в ветке Tomcat 7, прошлые выпуски Tomcat 7.0.x имели статус бета-версий. Из изменений отмечено проведение работы по улучшению производительности в системе управления сессиями, подготовлен новый бинарный вариант поставки для встраивания Tomcat в другие приложения, улучшена работа кода по обнаружению утечек памяти и выявлению ошибок. Из наиболее значительных новшеств, свойственных ветке Tomcat 7, можно отметить поддержку стандартов Servlet 3.0 и JSP 2.2 (JavaServer Pages). В частности, добавлена поддержка стандартного API для асинхронной обработки запросов, расширенные средства для трекинга сессий, класс SessionCookieConfig для конфигурирования "Cookies", новые средства для загрузки файлов; поддержка языка EL 2.2 (Expression Language), предназначенного для организации доступа к Java-компонентам (JavaBeans) из JSP-страниц с целью отделения Java-кода от элементов дизайна; более широкие возможности по обнаружению ошибок в коде на этапе сборки; добавленные специальные средства для анализа распределения памяти и выявления утечек памяти; дополнительные средства контроля доступа. В приложения Manager и Host Manager добавлены дополнительные авторизационные роли, позволяющие разделить права доступа для HTML-интерфейса, текстового интерфейса и JMX-прокси; в Manager и Host Manager добавлен код для защиты web-приложений от CSRF-атак (Сross Site Request Forgery). Реализован метод борьбы с атаками, связанными с фиксацией сессий. Появились механизмы для динамического управления конфигурацией с задействованием ServletContex, также добавлена поддержка разбиения конфигурации на модули и определения конфигурации на основе аннотаций; проведена значительная чистка и рефакторинг кода, в том числе удален код, помеченный ранее как устаревший (Deprecated). Увеличена надежность, расширяемость и безопасность кодовой базы, улучшены средства для интеграции с менеджером безопасности, коннекторами, MBean-регистрации, движком Jasper и менеджерами управления жизненным циклом. Реализована поддержка обработки web-приложений с учетом их версий (версионный контроль); реализован упрощенный интерфейс для встраивания Tomcat в пользовательские приложения; поддержка формирования собственных тестов качества интеграции сервлетов, фильтров и обработчиков соединений через использование базового класса JUnit; возможность интеграции внешних директорий, не входящих в дерево директорий web-приложения, и внешних JAR-архивов, размещенных вне каталога WEB-INF/lib.
- По сообщению того же источника, организация Apache Software Foundation объявила о выходе релиза распределенной БД Cassandra 0.7, относящейся к классу noSQL-систем и рассчитанной на создание высокомасштабируемых и надежных хранилищ огромных массивов данных, представленных в виде хэша. Изначально проект был разработан в недрах Facebook и в 2009 году передан под покровительство фонда Apache. Рабочие промышленные решения на базе Cassandra развернуты для обеспечения сервисов таких компаний, как Cisco, Cloudkick, Reddit, Digg, Rackspace и Twitter. Наиболее крупный кластер серверов, обслуживающих единую БД Cassandra, насчитывает более 400 машин. По утверждению главного разработчика ресурса Reddit, Cassandra обеспечивает возможность практически линейного масштабирования при увеличении объема данных. Например, за год трафик Reddit возрос более чем в три раза, возможности масштабирования Cassandra позволили в прозрачном режиме адаптировать инфраструктуру к возросшей нагрузке путем простого добавления новых серверов. БД Cassandra написана на языке Java и объединяет в себе полностью распределенную hash-систему Dynamo. Cassandra использует модель хранения данных на базе семейства столбцов (ColumnFamily), отличающуюся от систем, подобных memcachedb, которые хранят данные только в связке ключ/значение, возможностью организовать хранение хэшей с несколькими уровнями вложенности. Cassandra относится к категории хранилищ, повышенно устойчивых к сбоям: помещаемые в БД данные автоматически реплицируются на несколько узлов распределенной сети или даже равномерно распределяются по нескольким дата-центрам. При сбое узла его функции на лету подхватываются другими узлами. Добавление новых узлов в кластер Cassandra также производится на лету, без дополнительного ручного вмешательства и переконфигурирования других узлов.
Вадим СТАНКЕВИЧ,
dreamdrusch@tut.by