LINUX.ORG.RU

Сообщения twosev

 

Вышел Ruby Enterprise Edition 1.8.7-20090928

Группа Open Source

Ruby Enterprise Edition - это сервер-ориентированный дистрибутив официального интерпретатора Ruby, включающий в себя также различные дополнительные улучшения. Несмотря на то, что он появился совсем недавно, нынешняя версия по сравнению с предыдущей содержит довольно много улучшений.

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

  • в качестве основы используется Ruby 1.8.7-p174 (предыдущий REE был основан на Ruby 1.8.6);
  • интегрирован набор патчей MBARI от Брента Романа (Brent Roman):
    • более эффективный сборщик мусора (как результат сокращено потребление памяти и увеличена скорость работы приложений);
    • вместо применяемого в Ruby неэффективного (линейный по временной сложности) алгоритма переключения контекстов между потоками и процедурами продолжения используется алгоритм, сложность которого ограничена сверху величиной O(1);
    • в классы Method, UnboundMethod и Proc добавлены методы __file__ и __line__, что упрощает проверку больших кусков кода, в которых активно используется метапрограммирование. Эти методы описаны в REE manual;
  • опционально интегрирован патч от Джо Дамато и Амана Гупта (Joe Damato & Aman Gupta), реализующий переключение контекстов без копирования (zero-copy context switching), что в некоторых ситуациях позволяет ускорить работу потоков примерно в 10 раз (поскольку сейчас у данного патча имеются проблемы с работой на 64-битных платформах, zero-copy context switching отключено по умолчанию, и для его включения необходимо при установке REE указать опцию --fast-threading).

Прочие небольшие изменения:

  • в процессе сборки REE использовалась оптимизация размера получаемого бинарника (опция -Os);
  • аллокатор tmalloc теперь версии 1.3;
  • RubyGems 1.3.5;
  • Debian-пакеты устанавливают файлы в /usr/local (то есть теперь не нужно устраивать шаманство с бубном^Wпеременной $PATH, чтобы заставить его работать по-человечески).

Данный релиз проходил бета-тестирование в Twitter, в результате чего, как сообщается, производительность ресурса возросла примерно на 30%. Тем не менее, бета-тестирование еще не завершено. В настоящий момент ожидаются результаты тестирования от 37signals и Novell.

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

 ree, ,

twosev
()

RSS подписка на новые темы