Linux Forum Казахстан

Общий => Новости => Тема начата: turbo от 08 Апреля 2009, 19:48

Название: Twitter
Отправлено: turbo от 08 Апреля 2009, 19:48
[size="3"]Часть Twitter переводят с языка Ruby на Scala[/size]

В интервью разработчики системы микро-блогов Twitter, одного из самых крупных web-проектов, использующих Ruby on Rails, признались, что начали в прошлом году работу по замене некоторых Ruby компонент на их аналоги, написанные на языке Scala и работающие внутри виртуальной машины JVM. С целью увеличения производительности и реализации более полного контроля над выполнением кода, на Scala переписаны некоторые серверные демоны, обеспечивающие внутренние взаимодействие между составными частями инфраструктуры проекта. В планах, реализовать на Scala все обработчики внешнего и внутреннего API. Тем не менее, создатели Twitter не намерены отказываться от Ruby on Rails в роли бэкенда для генерации выводимого пользователям контента.

В качестве примера переписанного на Scala проекта, можно упомянуть сервер управления очередями сообщений Kestrel.

http://www.opennet.r...shtml?num=21167 (http://www.opennet.ru/opennews/art.shtml?num=21167)
Название: Twitter
Отправлено: turbo от 19 Февраля 2010, 00:49
[size="3"]Проект Twitter представил раздел, посвященный своим открытым разработкам [/size]

В корпоративном разделе популярного сервиса микроблогов Twitter появился специальный раздел, в котором представлены все открытые проекты в создании которых непосредственно принимали участие инженеры Twitter. Представленные на странице разработки разделены по категориям, в зависимости от используемого языка программирования: Ruby, Scala, Java и C/C++. Кроме того, в начале февраля был введен в строй блог engineering.twitter.com в котором начата публикация заметок по внутреннему устройству сервиса и проблемам, с которыми приходится сталкиваться разработчикам.

Некоторые интересные открытые проекты, в разработку которых вовлечен Twitter:

 * mod_memcache_block - модуль для http-сервера apache с реализацией поддержки списков блокировки, хранимых в memcached;
 * scribe - высокомасштабируемый сервер для сбора и агрегации логов;
 * REE (Ruby Enterprise Edition) - вариант реализации языка Ruby 1.8.7, оптимизированного для использования в высоконагруженных проектах, отличается переработанным сборщиком мусора, усовершенствованной системой распределения памяти;
 * murder - система для организации копирования файлов (обновленных версии скриптов, системных файлов и т.п.) на большое число машин, базирующаяся на использовании протокола BitTorrent;
 * cassandra.gem написанный на языке Ruby клиент для распределенной БД Cassandra;
 * zookeeper.gem - Ruby-интерфейс к Zookeeper, серверу для организации блокировок в распределенных проектах;
 * memcached.gem - Ruby-интерфейс к libmemcached;
 * Участие в Java-проектах Hadoop, Pig и Cassandra;
 * cachet - HTTP-прокси для акселерации отдачи контента сайтами;
 * kestrel - система для надежной организации слабо упорядоченных очередей сообщений;
 * scala-json - тулкит для работы с данными в формате JSON на языке Scala.

PS. Напомню, что новости OpenNet в реальном режиме времени транслируются в ленте twitter.com/opennetru, а сформировать сообщение на основе текущей новости можно нажав на значок под текстом новости. В случае возникновения желания добавить поддержку быстрой трансляции новостей OpenNet в другие социальные сервисы необходимо написать об этом в комментариях или отправить заявку через данную форму.

http://www.opennet.r...shtml?num=25477 (http://www.opennet.ru/opennews/art.shtml?num=25477)
Название: Twitter
Отправлено: Zhek@Ch от 07 Августа 2011, 01:20
[size="3"]Twitter заявил о скором открытии кода системы Storm [/size]

Разработчики сервиса Twitter заявили (http://engineering.twitter.com/2011/08/storm-is-coming-more-details-and-plans.html) о решении открыть исходные тексты системы Storm, используемой для анализа больших потоков данных. Код планируется открыть 19 сентября во время проведения конференции Strange Loop. Задержка с открытием кода объясняется необходимостью приведения в порядок документации и подготовке серии руководств для быстрого внедрения системы.

Storm представляет собой распределенную и отказоустойчивую систему обработки неструктурированных постоянно обновляемых потоков данных (обработка сложных событий - Complex Event Processing (http://en.wikipedia.org/wiki/Complex_Event_Processing)). Функциональность Storm сравнивается с платформой Hadoop, при этом ключевым отличием является то, что данные обрабатываются в реальном режиме времени. В качестве примера использования Storm приводится анализ непрерывных потоков данных, таких как миллионы лент в Twitter.

В отличие от традиционных аналитических систем реального времени от компаний Oracle, StreamBase и SAP, которые предварительно накапливают данные во внутреннем хранилище, в Storm нет встроенного постоянного хранилища, вместо этого поддерживается использование внешних систем хранения. В случае Storm пользователь определяет аналитический запрос, который начинает применяться к поступающим данным до тех пор, пока запрос не будет отменен (если в Hadoop используются занимающие конечное время MapReduce-работы, то в Storm применяется идея непрерывно выполняемых "топологий"). При этом выполнение анализа может быть распределено на несколько серверов - Storm автоматически распараллеливает работу с потоками на разные узлы кластера.

Изначально проект Storm развивался компанией BackType, которая была куплена (http://blog.backtype.com/2011/07/backtype-has-been-acquired-by-twitter/) Twitter в прошлом месяце. Технология Storm использовалась (http://tech.backtype.com/preview-of-storm-the-hadoop-of-realtime-proce) для обеспечения работы сервиса BackTweets (http://backtweets.com/), предназначенного для анализа отражения определенных событий в микроблогах, путем сопоставления на лету новых твитов и используемых в них ссылок. Например, компания получала возможность оценить, как внешние ссылки или публикуемые в твиттере анонсы, ретранслируются другими участниками. Несмотря на кажущуюся простоту, для непрерывно поступающих потоков задача является достаточно сложной: чтобы определить число уникальных просмотров URL через Twitter нужно посчитать число сообщений с данным URL, сформировать общую выборку из всех читателей (followers) микроблогов в которых упомянут URL и отсеять среди них дубликаты.

Основные особенности Storm:

Области применения:
# opennet.ru (http://www.opennet.ru/opennews/art.shtml?num=31414)