18 Января 2025, 12:39

Apache

Автор Vicpo, 30 Июля 2008, 08:34

« предыдущая тема - следующая тема »

0 Пользователей и 2 Гостей просматривают эту тему.

turbo

23 Февраля 2010, 23:10 #20 Последнее редактирование: 01 Февраля 2011, 12:19 от Zhek@Ch
[size="3"]HTTP-серверу Apache исполнилось 15 лет[/size]

Проект Apache празднует свое 15-летие. 23 февраля 1994 года группа энтузиастов объявила о создании списка рассылки new-httpd в котором предлагалось обсудить продолжение развития проекта NCSA httpd, находящегося в состоянии стагнации из-за переключение внимания авторов на проект "Mozilla". В первые несколько дней после начала обсуждения родилась идея присвоить улучшенному http-серверу имя Apache, также были выработаны три основные принципа формирования нового проекта: полное соответствие стандартам, свободное распространение исходных текстов и гибкая система подключения дополнений.

18 марта 1994 года был выпущен первый тестовый релиз проекта Apache, в декабре 1995 года увидел свет первый стабильный релиз Apache 1.0, в 1999 году вышел один из самых популярных релизов Apache - 1.3.0. К августу 1995 года на базе Apache функционировало уже 658 сайтов, в июне 2000 года число web-сайтов работающих под управлением Apache пересекло отметку 10 миллионов, в ноябре 2001 - 20 миллионов, в ноябре 2003 года - 30 миллионов, в феврале 2005 года - 40 миллионов, в феврале 2010 достигло 112 млн.

В марте 1999 года для курирования проекта была создана некоммерческая организация Apache Software Foundation, на которую были возложены вопросы юридической и финансовой поддержки проекта. Дополнительной целью организации было создание нейтральной и доверительной платформы для разработки развиваемого силами сообщества программного обеспечения. Сообщество Apache перестало быть ориентированным только на создание http-сервера и переросло в движение, объединяющее близкие по духу проекты (лицензия Apache, единые правила разработки, единая культура общения, общая инфраструктура).

За 11 лет с момента основания Apache Software Foundation число развиваемых в рамках Apache проектов увеличилось с 1 до 140. В настоящее время в проекты Apache вносится ежемесячно в среднем 10 тыс. коммитов, в сообществе насчитывается более двух тысяч разработчиков, имеющих право внесения изменений в репозитории исходных текстов (коммитеров). Для http-сервера Apache создано около 500 сторонних модулей.

http://www.opennet.r...shtml?num=25540

Drone

24 Февраля 2010, 14:36 #21 Последнее редактирование: 01 Февраля 2011, 12:20 от Zhek@Ch
Цитата: turbo от 23 Февраля 2010, 23:10[size="3"]HTTP-серверу Apache исполнилось 15 лет[/size]
Может все-таки 16, а не 15?

turbo

24 Февраля 2010, 18:02 #22 Последнее редактирование: 01 Февраля 2011, 12:22 от Zhek@Ch
[size="3"]Распределенная БД Cassandra принята в число основных проектов Apache[/size]

Член организации Apache Software Foundation (ASF) Мэтью Риу (Matthieu Riou) объявил о том, что распределённое хранилище данных Apache Cassandra отныне становится проектом первого уровня (Apache Top-Level Project, TLP), что знаменует окончание периода нахождения проекта в "инкубаторе".

Изначально проект Cassandra был разработан в недрах компании Facebook, открывшего исходные тексты проекта в июле 2008 года. Facebook также принимает участие в разработке некоторых других проектов Apache, включая Thrift, Hive и Apache Hadoop.

Cassandra, высоко масштабируемая распределенная база данных, объединяет в себе полностью распределенную hash-систему Dynamo и модель хранения данных на базе семейства столбцов (ColumnFamily, вложенные хэши), впервые реализованную в Google BigTable. Cassandra относится к категории хранилищ повышенно устойчивых к сбоям: помещаемые в БД данные автоматически реплицируются на несколько узлов распределенной сети или даже равномерно распределяются по нескольким дата-центрам. При сбое узла, его функции на лету подхватываются другими узлами. Добавление новых узлов в кластер Cassandra также производится на лету, без дополнительного ручного вмешательства и переконфигурирования других узлов.

Свежим релизом Cassandra является версия 0.5.0, предлагающая общее улучшенное распараллеливание запросов по сравнению с предыдущими версиями. Cassandra используется рядом крупных компаний, включая Rackspace, Digg, Facebook, Twitter, Cisco, Mahalo, Ooyala и д.р.. Код проекта написан на языке Java и выходит под второй версией лицензии Apache.

http://www.opennet.r...shtml?num=25539

B@F

16 Января 2011, 19:09 #23 Последнее редактирование: 01 Февраля 2011, 12:32 от Zhek@Ch
[size="3"]Вышел первый стабильный релиз Apache Tomcat 7.0[/size]

Представлен релиз Apache Tomcat 7.0.6, контейнера для выполнения JSP-страниц и Java-сервлетов с реализацией полной поддержки спецификации Java Servlet 3.0. По приблизительным оценкам 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.
Поправьте, если я ошибаюсь, буду тока рад.

Zhek@Ch

02 Февраля 2011, 12:18 #24 Последнее редактирование: 02 Февраля 2011, 12:18 от Zhek@Ch
[size="3"]Yahoo закрывает собственный Hadoop-дистрибутив и фокусирует внимание на Apache Hadoop [/size]

Компания Yahoo заявила о прекращении развития собственного варианта платформы для организации распределенных вычислений Hadoop и переходе к формированию кодовой базы, единой с проектом Apache Hadoop. Следует отметить, что Hadoop-дистрибутив Yahoo, как и Apache Hadoop, распространялся под лицензией Apache и был доступен для свободного использования. Тем не менее, руководство Yahoo пришло к решению о необходимости уменьшения фрагментации Hadoop-систем и переходу к более тесному взаимодействию с сообществом Apache, в рамках которого все силы будут брошены на развитие единого продукта.

Hadoop-дистрибутив Yahoo используется в самом большом из существующих Hadoop кластеров (Hadoop кластеру Yahoo принадлежит мировой рекорд скорости сортировки большого объема данных) и отличается более жесткими требованиями к всестороннему тестированию перед использованием в промышленной эксплуатации, а также содержит ряд дополнений, оптимизированных для обеспечения работы поискового движка. Со временем степень расхождения кодовых баз Yahoo Hadoop и Apache Hadoop нарастала, что в конечном итоге заставило задуматься о необходимости нахождения компромиссного решения, способного вновь направить расходящиеся потоки в единое русло.

После принятия подобного решения руководством Yahoo, возникла новая задача - организация передачи Apache Hadoop созданных в Yahoo наработок, в которых вложено несколько человеко-лет труда. В настоящее время в Yahoo поддерживается две ветки Hadoop - стабильная и экспериментальная. Стабильная ветка непосредственно используется на кластере Yahoo, состоящем из 40 тысяч узлов, а в экспериментальной ветке обкатываются новые возможности. В настоящее время, экспериментальная ветка позволяет организовывать больше хранилищ в рамках одного кластера, содержит новый фреймворк для обработки метрик и поддерживает несколько новых техник оптимизации выполнения небольших заданий.

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

Hadoop является свободной платформой для организации распределенной обработки больших объемов данных (петабайты) с использованием парадигмы map/reduce, при которой задача делится на множество более мелких обособленных фрагментов, каждый из которых может быть запущен на отдельном узле кластера. В состав Hadoop входит также реализация распределенной файловой системы Hadoop Distributed Filesystem (HDFS), автоматически обеспечивающей резервирование данных и оптимизированной для работы MapReduce-приложений. Для упрощения доступа к данным в Hadoop хранилище разработана БД HBase и SQL-подобный язык Pig, который является своего рода SQL для MapReduce, запросы которого могут быть распараллелены и обработаны несколькими Hadoop-платформами.


Zhek@Ch

21 Февраля 2011, 11:24 #25 Последнее редактирование: 21 Февраля 2011, 11:25 от Zhek@Ch
[size="3"]Новое поколение MapReduce в Apache Hadoop[/size]
 
В большом бизнесе использование нескольких больших кластеров с финансовой точки зрения более эффективно, чем много маленьких. Чем больше машин в кластере, тем большими наборами данных он может оперировать, больше задач могут выполняться одновременно. Реализация MapReduce в Apache Hadoop столкнулась с потолком масштабируемости на уровне около 4000 машин в кластере. Разрабатывается следующее поколение Apaсhe Hadoop MapReduce, в котором появится общий планировщик ресурсов и отдельный мастер для каждой отдельной задачи, управляющий выполнением программного кода. Так как простой оборудования по техническим причинам обходится дорого на таком масштабе, высокий уровень доступности проектируется с самого начала, равно как и безопасность и многозадачность, необходимые для поддержки одновременного использования большого кластера многими пользователями. Новая архитектура также будет более инновационной, гибкой и эффективной с точки зрения использования вычислительных ресурсов.

>>> Подробности


Rubik

25 Февраля 2011, 07:17 #26 Последнее редактирование: 25 Февраля 2011, 08:15 от Zhek@Ch
[size="3"]Проект Chemistry переведен в разряд первичных проектов Apache [/size]

Организация Apache Software Foundation объявила об успешном завершении проверки в "инкубаторе" и принятии в число первичных проектов, развиваемых под эгидой Apache, проекта Apache Chemistry. Перевод Apache Chemistry в разряд первичных означает, что продукт и развивающее его сообщество подтвердили способность следования принципам разработки Apache и теперь готовы для самостоятельного существования, не требующего дополнительного надзора. В дальнейшем для управления разработкой и координации подготовки релизов будет выбран комитет, состоящий из активных участников проекта.

Apache Chemistry представляет собой открытую реализацию стандарта CMIS, (Content Management Interoperability Services), определяющего средства для обмена разнородной информации между системами управления контентом предприятия (ECM - Enterprise Content Management) и внешними приложениями. Для управления данными в CMIS определен SQL-подобный язык запросов CQL (CMIS Query Language), ориентированный на работу с неструктурированными данными. API, поддерживаемый в Apache Chemistry, позволяет создавать приложения, которые могут свободно манипулировать данными в CMIS-ропозиториях таких продуктов, как Alfresco, EMC Documentum, IBM FileNet, Microsoft SharePoint, Nuxeo и OpenText. Из компаний, использующих Apache Chemistry в своих продуктах и сервисах отмечаются Adobe, Alfresco, Metaversant, Nuxeo, OpenText, OpenWGA и SAP.

Apache Chemistry состоит из следующих субпроектов:

  • OpenCMIS - Java-библиотеки с реализацией CMIS-клиента и сервера;
  • cmislib - клиентская CMIS-библиотека для языка Python;
  • phpclient - клиентская CMIS-библиотека для языка PHP;
  • DotCMIS - клиентская CMIS-библиотека для платформы .NET.

Rubik

[size="3"]Выход Apache 2.3.11 ознаменовал переход ветки 2.3 на стадию бета-тестирования [/size]

Увидел свет новый выпуск экспериментальной ветки http-сервера Apache 2.3.11, на базе которой будет сформирована стабильная ветка 2.4. Версия 2.3.11 примечательна переходом на стадию бета-тестирования, на которой наращивание функциональности сменяется стадией выявления и исправления ошибок. В состав ветки 2.3.x вошли новые возможности которые невозможно интегрировать в стабильную ветку 2.2.x в силу большого размера вносимого кода, необходимости значительной переработки подсистем или из-за нарушения совместимости.

Релиз 2.3.11 включает в себя Apache Portable Runtime (APR) 1.4.2 и APR-Util 1.3.10, которые в отличие от прошлых выпусков выделены в отдельный архив "-deps". В Apache 2.3.11 используется расширенный вариант Apache 2.2 API, поэтому для работы в Apache 2.3.x собранных для Apache 2.2.x модулей требуется их пересборка и, возможно, незначительная модификация кода.

Из новшеств, ожидаемых в будущей стабильной ветке Apache 2.4, можно отметить:

  • Несколько MPM могут быть сразу собраны в виде динамически загружаемых модулей, которые можно активировать в конфигурации без последующей пересборки;
  • С модуля Event MPM снят гриф экспериментальной разработки. Event MPM основан на коде модуле Worker и реализует гибридную модель обработки соединений, сочетающую многопоточность с пулом ожидающих соединения процессов;
  • Возможность определения через оператор "If" блоков конфигурации, привязанных к отдельным запросам (Per-request configuration). Например, можно использовать If "$req{Host} = ''", внутри выражения можно ссылаться на HTTP-заголовки запроса ($req), заголовки ответа ($resp) и переменные окружения ($env);
  • Реализована поддержка асинхронных операций чтения и записи;
  • Возможность определения через директиву LogLevel разных форматов ведения лога для отдельных модулей и директорий;
  • Возможность указания значения параметра KeepAliveTimeout в миллисекундах;
  • Новые модули:
    • mod_lua - позволяет интегрировать в httpd интерпретатор языка Lua;
    • mod_proxy_fcgi - модуль с поддержкой проксирования протокола FastCGI (поддержка схемы "fcgi:" в директиве "ProxyPass");
    • mod_proxy_scgi - модуль с поддержкой проксирования протокола SCGI (поддержка схемы "scgi:" в директиве "ProxyPass");
    • mod_ratelimit - позволяет организовать ограничение пропускной способности клиентов (например, суммарно для всех можно ограничить общую пропускную способность только для страницы загрузки файлов);
    • mod_remoteip - заменяет значение IP-клиента на содержимое из определенного HTTP-заголовка (например, X-Client-IP или X-Forwarded-For). Обычно модуль используется при работе apache в роли бэкенда;
    • mod_reflector - позволяет возвращать клиенту тело запроса, применив к нему определенный фильтр;
    • mod_reqtimeout - позволяет установить таймаут и минимальную интенсивность потока данных при обработке входящих запросов (например, "RequestReadTimeout body=10,MinRate=1000" ограничивает время загрузки тела запроса 10 секундами, плюс прибавляет по 1 секунде на каждые 1000 байт полученных данных);
    • mod_request - позволяет определить фильтр для обработки и распространения тела запроса;
    • mod_slotmem_shm - система доступа к разделяемой памяти на основе слотов (scoreboard);
    • mod_allowmethods - позволяет ограничить некоторые HTTP-методы не мешая авторизации и аутентификации (например, "AllowMethods GET HEAD OPTIONS");
    • mod_buffer - позволяет организовать буферизацию для входящих и исходящих фильтров.
  • Измененные модули:
    • В mod_ssl добавлена поддержка проверки статуса клиентского сертификата на OCSP серверах. Также добавлена возможность совместного использования данных SSL сессии на нескольких http-серверах, через задействование memcached;
    • В mod_cache добавлена поддержка кэширования HEAD-запросов. Директивы mod_cache теперь можно указывать в привязке к отдельным директориям, а не только для отдельного сервера. Добавлена возможность выводить устаревшие данных из кэша в случае недоступности рабочего бэкенда. В заголовок X-Cache можно подставлять значения HIT/MISS/REVALIDATE;
    • В mod_include в элемент 'include' добавлена поддержка атрибута 'onerror', позволяющего вывести свой документ при ошибке вместо вывода используемого по умолчанию текста ошибки (например, include virtual="/not-exist.html" onerror="/error.html");
    • В mod_proxy значительно увеличена производительность работы директивы ProxyPass в блоках Location и LocationMatch, что значительно быстрее, чем использование традиционного синтаксиса "ProxyPass путь URL";
    • В mod_proxy_balancer расширено число параметров BalancerMembers, которые можно менять через balancer-manager. Добавлена возможность добавления новых параметров BalancerMembers через balancer-manager. Поддержка изменения во время исполнения подмножества параметров директивы Balancer;
    • В модулях mod_cgi, mod_include, mod_isapi и т.п. преобразование заголовков в переменные окружения осуществляется по более строгим правилам, например, блокируются попытки осуществления XSS-атак через подстановку скриптов в заголовки. Все заголовки в которых используются специальные символы теперь молча удаляются. Для проброса некорректных с точки зрения новых правил переменных окружения в устаревшие скрипты предусмотрено несколько обходных путей;
    • В модуле mod_authz_core расширенная логика авторизации может быть задана при помощи Require и связанных директив, таких как RequireAll;
  • Дополнительные компоненты:
    • В поставку Apache включен скрипт fcgistarter, предназначенный для запуска серверных FastCGI процессов.
    • В утилиту htcacheclean - добавлены функции просмотра и удаления отдельных прокэшированных URL и связанных с ними мета-данных;
  • Средства для разработчиков модулей:
    • Интерфейс для кэширование небольших объектов, основанный на ранее созданном для mod_ssl кэше сессионных данных. В качестве хранилища можно использовать цикличный буфер в разделяемой памяти, dbm-базу на диске и memcached;
    • Добавлен парсер выражений общего назначения, API которого основан на ap_expr.h. Код парсера основан на ранее реализованном парсере для mod_include;
    • Добавлен hook check_config для проверки конфигурации на ранней стадии загрузки, позволяя независимо проанализировать параметры определенных директив и при необходимости откорректировать их;
    • Для оценки статуса mod_cache добавлен hook cache_status, вызываемый после принятия решения о кэшировании. Реализация по умолчанию добавляет при ответе опциональные заголовки X-Cache в X-Cache-Detail.

Zhek@Ch

25 Марта 2011, 17:02 #28 Последнее редактирование: 25 Марта 2011, 17:03 от Zhek@Ch
[size="3"]Проекту Apache Hadoop присуждена премия новатор года [/size]

На прошедшей в Лондоне церемонии награждения MediaGuardian Innovation Awards, премия "Новатор года", ежегодно присуждаемая наиболее инновационным продуктам и технологиям, была вручена проекту Apache Hadoop. При вручении премии Apache Hadoop был отождествлен с швейцарским армейским ножом 21 века и назван проектом, обладающим потенциалом, способным полностью изменить лицо медиа-технологий по всему миру. Среди финалистов, уступивших пальму первенства, отмечены проекты WikiLeaks и iPad.

Hadoop является свободной платформой для организации распределенной обработки больших объемов данных (петабайты) с использованием парадигмы map/reduce, при которой задача делится на множество более мелких обособленных фрагментов, каждый из которых может быть запущен на отдельном узле кластера. В состав Hadoop входит также реализация распределенной файловой системы Hadoop Distributed Filesystem (HDFS), автоматически обеспечивающей резервирование данных и оптимизированной для работы MapReduce-приложений. Для упрощения доступа к данным в Hadoop хранилище разработана БД HBase и SQL-подобный язык Pig, который является своего рода SQL для MapReduce, запросы которого могут быть распараллелены и обработаны несколькими Hadoop-платформами.


Rubik

[size="3"]Аутентификация в Apache используя Active Directory и Kerberos [/size]

В статье довольно подробно рассмотрен процесс настройки прозрачной аутентификации пользователей сайта, работающего под управлением http-сервера Apache, используя KDC, реализованный в Microsoft Windows.


Zhek@Ch

13 Мая 2011, 01:39 #30 Последнее редактирование: 13 Мая 2011, 01:39 от Zhek@Ch
[size="3"]Релиз Apache 2.2.18 с устранением DoS-уязвимости в библиотеке APR (libc тоже подвержена проблеме)[/size]

Представлен релиз http-сервера Apache 2.2.18 в котором отмечено 23 исправления и устранение одной уязвимости, которая может быть использована для проведения DoS-атаки на сервер.

Уязвимость вызвана ошибкой в реализации функции apr_fnmatch(), которая входит в состав библиотеки Apache APR (Apache Portable Runtime), используемой модулем mod_autoindex и многими приложениями, разрабатываемыми под покровительством Apache. Передача специально оформленных запросов, сформированных с использованием в пути маски "директория/?P=*?*?*?...и так 4 Кб", приводит к возникновению рекурсивной обработки, во время которой существенно возрастает нагрузка на CPU и в конечном итоге происходит крах из-за переполнения стека.

HTTP-сервер Apache 2.2.18 поставляется с обновленной библиотекой APR 1.4.4, в которой данная уязвимость исправлена. Всем, кто по каким-либо причинам не может обновить библиотеку APR до новой версии, рекомендуется включить опцию IgnoreClient внутри директивы IndexOptions.

Кроме устранения уязвимости в новой версии отмечены исправления ошибок в модулях: mod_proxy, mod_autoindex, mod_cache, mod_dav, mod_win32, mod_ssl, mod_userdir и mod_mem_cache. В утилите htpasswd изменен используемый по умолчанию алгоритм хэширования: с функции crypt() на MD5. Устранены проблемы при сборке с использованием MinGW. В директиву AllowEncodedSlashes добавлена поддержка опции NoDecode, указывающая на то, что не нужно декодировать закодированные в URL слеши. В mod_rewrite добавлена возможность удаления переменных окружения. Добавлена директива Suexec для отключения механизма suEXEC без переименования бинарного файла (в конфигурации достаточно указать Suexec Off).

Дополнение: уязвимости подвержена реализация функции fnmatch из стандартных библиотек (libc) NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris и Android.


Zhek@Ch

22 Мая 2011, 23:47 #31 Последнее редактирование: 22 Мая 2011, 23:47 от Zhek@Ch
[size="3"]Обновление http-сервера Apache 2.2.19 с устранением нарушения ABI-совместимости [/size]

Спустя 10 дней с момента выхода http-сервера Apache 2.2.18 представлен корректирующий выпуск Apache 2.2.19 в котором устранено регрессивное изменение, приведшее к нарушению совместимости на уровне ABI из-за изменения сигнатуры функции ap_unescape_url_keep2f(). В Apache 2.2.19 сигнатура восстановлена из выпуска Apache 2.2.17, а ранее внесенные изменения представлены в виде отдельной новой функции ap_unescape_url_keep2f_ex().


Zhek@Ch

06 Июня 2011, 22:09 #32 Последнее редактирование: 06 Июня 2011, 22:09 от Zhek@Ch
[size="3"]Apache Cassandra 0.8.0[/size]
 
Вышла новая версия распределенной СУБД Apache Cassandra: 0.8.

Основные изменения в этой версии:

  • Язык запросов CQL (Cassandra Query Language) -- SQL-подобный язык, который можно использовать в качестве альтернативы RPC-вызовам. В данный момент готовы драйвера для Java (JDBC), Python (DBAPI2) и Node.js.
  • Распределенные счетчики, реализованные без блокировок.
  • Поддержка шифрования трафика между узлами кластера.
Обновление на эту версию с 0.7 возможно выполнять отдельно по узлам, не останавливая кластер целиком. Так же новый релиз полностью совместим с предыдущим по RPC, нет необходимости обновлять клиентский код если не требуется поддержка новых функций.

>>> Подробности


Zhek@Ch

07 Июня 2011, 23:21 #33 Последнее редактирование: 07 Июня 2011, 23:21 от Zhek@Ch
[size="3"]Релиз БД Apache CouchDB 1.1.0 [/size]
 
Вышел релиз распределенной, документ-ориентированной базы данных Apache CouchDB, относящейся к классу NoSQL-систем. Запросы к CouchDB и индексация данных могут выполняться в соответствии с парадигмой MapReduce, используя для формирования логики выборки данных язык Javascript. Ядро системы написано на языке Erlang, оптимизированного для создания обслуживающих множество параллельных запросов распределенных систем. View-сервер написан на языке Си и базируется на Javascript-движке Mozilla Spidermonkey. Исходные тексты проекта распространяются под лицензией Apache 2.

Доступ к БД производится при помощи протокола HTTP с использованием RESTful JSON API. В качестве единицы хранения данных выступает документ, имеющий уникальный идентификатор, версию и содержащий произвольный набор именованных полей в формате ключ/значение. Для организации псевдо-структурированного набора данных из произвольных документов (агрегирования и формирования выборок) применяется концепция формирования представлений (view), для определения которых используется язык Javascript. На Javascript также можно определять функции для проверки корректности данных при добавлении новых документов в рамках определенного представления.

CouchDB хранит данные в формате упорядоченного списка и позволяет производить частичную репликацию данных между несколькими БД в режиме «мастер-мастер» с одновременным обнаружением и разрешением конфликтных ситуаций. Каждый сервер хранит свой локальный набор данных, синхронизированный с другими серверами, которые могут переводиться в offline-режим и периодически реплицировать изменения. В частности, данная возможность делает CouchDB привлекательным решением для организации синхронизации настроек программ между разными компьютерами, что уже используется для синхронизации содержимого адресной книги ПК c мобильным телефоном через сервис Ubuntu One. Решения на базе CouchDB внедрены в таких компаниях как BBC, Apple и CERN.

Основные улучшения, добавленные в CouchDB 1.1.0:

  • Нативная поддержка SSL;
  • Поддержка обработки HTTP-заголовков группы "range" для отдачи прикрепленных данных не с начала файла, а с указанной позиции (например, позволяет организовать докачку после обрыва соединения);
  • Добавлена опция конфигурации для включения TCP_NODELAY;
  • Добавлены встроенные фильтры для базы "_changes": "_doc_ids" и "_design";
  • В описании виртуальных хостов теперь допустимо использование масок;
  • Обеспечена более гранулированная поддержка ETag для представлений;
  • Увеличена гибкость системы подмены URL (URL rewriter);
  • Добавлен модуль OS Process для управления фоновыми процессами вне CouchDB;
  • Добавлен обработчик HTTP Proxy;
  • Добавлена база "_replicator" для управления репликацией;
  • Множественные микро-оптимизации для увеличения производительности операций чтения данных;
  • В функцию map добавлена поддержка CommonJS;
  • Добавлена используемая в запросах опция "stale=update_after", дающая возможность обновить представление после возврата состояния "stale=ok";
  • В web-интерфейс Futon добавлена функция изменения пароля.

Zhek@Ch

14 Июня 2011, 23:03 #34 Последнее редактирование: 09 Ноября 2011, 12:49 от Zhek@Ch
[size="3"]Apache Traffic Server 3.0[/size]
 
Вышла новая версия Apache Traffic Server - высокоскоростного кеширующего веб-сервера, который используется перед более "тяжелым" сервером приложений и для отдачи статического контента. Traffic Server был разработан как коммерческий продукт, который Yahoo приобрела вместе с компание разработчиком. В 2009 году проект был передан в opensource. Этот сервер используется для многих проектов Yahoo, включая главную страницу и сервесы почты, спорта и финансов.

Основные изменения:

  • Полная поддержка 64-битной платформы
  • Поддержка IPv6 на клиентской стороне
  • Кластеризация и распределенное кеширование, поддержка WCCP - Web Cache Communication Protocol
  • Поддержка OS X, Solaris и FreeBSD (поддержка Linux была в проекте с самого начала)
В новой версии в 2-3 раза повысилась производительность, в 5 раз снижено время отклика. В тестах производительности удалось достичь 220 тысяч запросов в секунду на одном сервере при отдаче из кеша и около 100 тысяч при проксировании (локальная сеть, http keep-alive)

 >>> Подробности


Zhek@Ch

07 Июля 2011, 07:28 #35 Последнее редактирование: 07 Июля 2011, 07:28 от Zhek@Ch
[size="3"]Вышел Apache Solr 3.3[/size]
 
Основные изменения:

  • Наконец-то одно из самых долгожданный изменений: grouping (бывший collapsing) - позволяет показывать только один или несколько первых документов из группы. Группировать можно по полю или произвольному запросу. Подробнее
  • Новая реализация автодополнения, более быстрая и с меньшим потребением памяти
  • KStemFilterFactory, улучшенная реализация менее агрессивного стеммера английского языка
  • Исправления ошибок и улучшения из Apache Lucene 3.3
Solr, на сегодняшний день, один из самых функциональных поисковых движков с открытыми исходниками. Поддерживает полнотекстовый поиск, фильтрацию результатов поиска, фасеты, группировку результатов, геопоиск, hit highlighting, репликацию и многое другое.

>>> Changes 3.3


hedgeven

26 Августа 2011, 08:44 #36 Последнее редактирование: 26 Августа 2011, 08:46 от hedgeven
[size="3"]Легко эксплуатируемая DoS-уязвимость в HTTP-сервере Apache (дополнено) [/size]

В http-сервере Apache найдена опасная уязвимость, позволяющая вызвать отказ в обслуживании через исчерпание всей доступной памяти. Опасность уязвимости усугубляется тем, что для её осуществления уже доступен готовый эксплоит, позволяющий совершить атаку с одной машины с генерацией минимального трафика. При отсутствии отдельных лимитов на размер выделяемой Apache памяти, после выполнения эксплоита наблюдается полное исчерпание памяти с уходом в бесконечный своппинг без возможности зайти в консоль. Проблема вызвана ошибкой в реализации поддержки загрузки части файла по указанному диапазону (например, после обрыва соединения можно запросить загрузку начиная с определенной позиции). Ошибка связана с тем, что при обработке запроса, содержащего большое число диапазонов (например, "Range:bytes=0-,5-1,5-2,5-3,...,5-1000") в сочетании с использованием gzip-сжатия отдаваемого контента, расходуется слишком много памяти. Например, если в заголовке Range передана тысяча диапазонов, то Apache пытается отдельно сжать каждый диапазон. Так как каждая операция сжатия требует достаточно много памяти (даже для сжатия одного байта выделяется буфер для сжатия блока), в сумме легко исчерпать всю доступную память. Для осуществления удачной атаки достаточно отправить около 50 подобных запросов с составным Range на сервер.

Проблема присутствует в Apache 2.2.x, включая последний релиз 2.2.19. Исправление пока доступно в виде патча. Также имеется несколько способов временной защиты, не требующих пересборки Apache. Например, можно принудительно очищать заголовок Range при помощи mod_header ("RequestHeader unset Range") или блокировать длинные последовательности Range через mod_rewrite:

[color="#461b7e"] # Вариант 1:
RewriteEngine On
RewriteCond %{HTTP:Range} bytes=0-[0-9]+, [NC,OR]
RewriteCond %{HTTP:Range} bytes=([0-9-],){4,} [NC,OR]
RewriteCond %{HTTP:Range} bytes=[0-9,-]+,0-(,|$) [NC]
RewriteRule .? http://%{SERVER_NAME}/ [NS,L,F]

# Вариант 2:
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(HEAD|GET) [NC]
RewriteCond %{HTTP:Range} ([0-9]*-[0-9]*)(\s*,\s*[0-9]*-[0-9]*)+
RewriteRule .* - [F]

# Вариант 3:
RewriteEngine On
RewriteCond %{HTTP:Range} bytes=0-.* [NC]
RewriteRule .? http://%{SERVER_NAME}/ [R=302,L]

[/color]Интересно, что о теоретической возможности совершения подобной атаки Михаил Залевски (Michal Zalewski), известный польский эксперт в области компьютерной безопасности в настоящее время работающий в Google, сообщал еще 4 года назад, но проблема по каким-то причинам не была воспринята всерьез и исправления не были внесены.

Дополнение: Разработчики Apache опубликовали официальный отчет о наличии уязвимости, в котором указали на то, что в сети зарегистрирована волна DoS-атак, базирующихся на использовании рассмотренной уязвимости. Обновление для веток Apache 2.0.x 2.2.x с исправлением уязвимости планируется выпустить в течение 48 часов. Ветка Apache 1.3.x также подвержена проблеме, но исправление для неё выпущено не будет, так как поддержка данной ветки прекращена. Администраторам рекомендуется срочно применить обходные пути защиты, среди которых указаны:

  • Использование SetEnvIf для Apache 2.0 и 2.2: [color="#461b7e"]
# Удаляем заголовок Range, если в нем более 5 диапазонов
SetEnvIf Range (,.*?){5,} bad-range=1
RequestHeader unset Range env=bad-range
# помещаем в лог попытки атаки
CustomLog logs/range-CVE-2011-3192.log common env=bad-range
[/color]
  • Использование mod_rewrite для Apache 1.3 и 2.x: [color="#461b7e"]
RewriteEngine on
RewriteCond %{HTTP:range} !(^bytes=[^,]+(,[^,]+){0,4}$|^$)
RewriteRule .* - [F]
[/color]
  • Ограничение максимального размера поля через директиву "LimitRequestFieldSize 200", где 200 - размер параметров в байтах. Внимание, данный параметр действует для всех полей, что может привести к проблемам, например, при использование больших cookie.
  • Использование mod_headers для полного запрещения заголовка Range - "RequestHeader unset Range". Данный метод может привести к неработоспособности некоторых приложений, таких как программы для загрузки файлов, PDF-просмотрщики и проигрыватели потокового видео;
  • Использование специального модуля mod_rangecnt (готовые сборки для некоторых редких платформ), контролирующего число диапазонов внутри директивы Range.
Jah will give us everything...

Zhek@Ch

18 Октября 2011, 23:26 #37 Последнее редактирование: 18 Октября 2011, 23:26 от Zhek@Ch
[size="3"]Релиз БД Apache Cassandra 1.0 [/size]

Организация Apache Software Foundation анонсировала релиз распределенной БД Apache Cassandra 1.0, относящейся к классу noSQL-систем и рассчитанной на создание высокомасштабируемых и надежных хранилищ огромных массивов данных, представленных в виде хэша. Изначально проект был разработан в недрах Facebook и в 2009 году передан под покровительство фонда Apache. Промышленные решения на базе Cassandra развернуты для обеспечения сервисов таких компаний, как Cisco, IBM, Cloudkick, Reddit, Digg, Rackspace и Twitter. Наиболее крупный кластер серверов, обслуживающих единую БД Cassandra, размер данных в которой превышает 300 Тб, насчитывает более 400 машин.

БД Cassandra написана на языке Java и объединяет в себе полностью распределенную hash-систему Dynamo, обеспечивающую практически линейную масштабируемость при увеличении объема данных. Cassandra использует модель хранения данных на базе семейства столбцов (ColumnFamily), отличающуюся от систем подобных memcachedb, которые хранят данные только в связке ключ/значение, возможностью организовать хранение хэшей с несколькими уровнями вложенности. Cassandra относится к категории хранилищ повышенно устойчивых к сбоям: помещаемые в БД данные автоматически реплицируются на несколько узлов распределенной сети или даже равномерно распределяются по нескольким дата-центрам. При сбое узла, его функции на лету подхватываются другими узлами. Добавление новых узлов в кластер и обновление версии Cassandra производится на лету, без дополнительного ручного вмешательства и переконфигурирования других узлов.

Для упрощения взаимодействия с БД поддерживается язык формирования структурированных запросов CQL (Cassandra Query Language), на первый взгляд напоминающий SQL, но существенно урезанный по функциональности. Например, можно выполнять только простейшие запросы SELECT с выборкой по определенному условию, но без поддержки сортировки и группировки. Добавление и обновление данных производится через единое выражение UPDATE, операция INSERT отсутствует (если записи нет, при выполнении UPDATE она создается). Из возможностей можно отметить поддержку пространств имен и семейств столбцов, создание индексов через выражение "CREATE INDEX". Драйверы с поддержкой CQL подготовлены для языков Python, Java (JDBC/DBAPI2) и Javascript (Node.js).

Ключевые новшества Cassandra 1.0:

  • Поддержка хранения файлов с данными (SSTables) в сжатом виде с добавлением контрольных сумм для слежения за сохранением целостности сжатых блоков;
  • Улучшение системы управления памятью, включая новые виды кэшей и реализацию системы автоматического тюнига, что позволяет минимизировать остановки в процессе работы сборщика мусора и обеспечить более предсказуемую производительность;
  • Улучшение средств обслуживания дискового пространства: более надежное слежение за размером лога коммитов и обеспечение безотлагательного удаления устаревших файлов с данными;
  • Новая, поддерживающая разделения на уровни, стратегия упаковки данных, основанная на идеях LevelDB и позволяющая обеспечить более предсказуемый размер файлов на диске и однородную производительность. Особенность нового алгоритма в том, что для упаковки необходимо наличие нескольких мегабайт свободного места, а не до 50% как раньше;
  • Возможность использования нескольких нитей в процессе одной операции упаковки (multithreaded_compaction);
  • Добавлена поддержка нового типа данных "decimal";
  • Реализация сервиса для платформы Windows.

Zhek@Ch

03 Ноября 2011, 23:11 #38 Последнее редактирование: 03 Ноября 2011, 23:12 от Zhek@Ch
[size="3"]Вышла Apache Commons Compress 1.3[/size]
 
Вчера вышла новая 1.3 версия Apache Commons Compress. Основные изменения: полная поддержка ZIP64 (расширение формата ZIP для архивов более 4GB) и изменение минимально необходимой версии JRE с 1.4 до 5.0. Помимо zip Apache Commons Compress поддерживает множество других форматов, таких как tar, gzip, bzip2, cpio, ar.

ZIP64, в стандартных библиотеках JRE, поддерживается лишь в Java 7.

 >>> Подробности


Zhek@Ch

09 Ноября 2011, 12:49 #39 Последнее редактирование: 09 Ноября 2011, 12:49 от Zhek@Ch
[size="3"]Проект Apache Harmony закрыт[/size]
 
Участники проекта Apache Harmony, opensource реализации Java, проголосовали о закрытии проекта -- его исходные тексты перенесены в репозитарий Apache Attic.

Проект так и не получил от Oracle эталонные тесты Technology Compatibility Kit, необходимые для сертификации и защиты от патентных угроз. Кроме того, при выпуске Java 7 были приняты правила, согласно которым не допускаются свободные альтернативные реализации Java.

Основной спонсор проекта, IBM, переключился на OpenJDK в прошлом году, компания Google также перестала участвовать в проекте из-за судебного процесса о использовании технологий Java в Android.

 >>> Подробности