Рубрика «высокая производительность» - 166

Физик Гарвардского университета Александр Висснер-Гросс (Alexander Wissner-Gross) в интервью Wired высказал мнение, что через 20-30 лет крупнейшие финансовые компании мира начнут использовать ускорители заряженных частиц и нейтринные детекторы, чтобы передавать данные напрямую через Землю. Хотя скорость нейтрино не больше, чем скорость света, но за счёт сокращения маршрута удастся уменьшить latency на несколько десятков миллисекунд.

Опыты по передаче данных с помощью нейтрино уже были. Как раз весной этого года учёные передали информацию с ускорителя в Фермилаб на нейтринный детектор, расположенный в километре от него. Правда, скорость передачи данных во время эксперимента составила всего 0,1 бита в секунду. Но учёные уверены, что с помощью правильной модуляции могут повысить пропускную способность на один-два порядка.
Читать полностью »

Столкнувшись с существенными потерями производительности на использовании django orm, я стал искать выход из положения, рассматривая разные способы использования orm. Что у меня получилось — смотрите подкатом.

Читать полностью »

В первой части мы познакомились с мечеными указателями и тем, как нам создать целый объект, не выделяя под него отдельной памяти.

NSNumber оказался идеальным кандидатом на то, чтобы применить полученые знания на практике—давайте же попробуем написать нашу собственную реализацию этого класса. За основу мы возьмем MANumber—кастомную реализацию NSNumber, и добавим туда поддержку меченых указателей.
Читать полностью »

Если вы когда-нибудь писали приложение на Objective-C, вы должны быть знакомы с классом NSNumber — оберткой, превращающей число в объект. Классический пример использования — это создание числового массива, заполненного объектами вида [NSNumber numberWithInt:someIntValue];.

Казалось бы, зачем создавать целый объект, выделять под него память, потом ее чистить, если нам нужен обычный маленький int? В Apple тоже так подумали, и потому NSNumber — это зачастую совсем не объект, и за указателем на него скрывается… пустота.

Если вам интересно, как же так получается, и при чем тут меченые указатели — добро пожаловать под кат!
Читать полностью »

Весь поисковый индекс Google размещается в RAM памяти уже как минимум 5 лет. Почему бы не попробовать сделать то же самое и с поисковым индексом для Lucene?

В последнее время, оперативная память стала весьма недорога, поэтому для высоконагруженных ресурсов, вполне резонно ожидать серьезного улучшения производительности за счет размещения поискового индекса целиком в оперативной памяти.

Очевидный вопрос – не попробовать ли нам загрузить весь индекс, в предоставляемый Lucene класс RAMDirectory?
Читать полностью »

Хабрафуршет, это пост на хабре где в первоуровневых комментариях IT-специалисты пишут темы специфичные, в которых они хорошо разбираются(nginx на 100 000 юзеров в день не интересно и описано везде, а nginx на 100 000 000 пользователей в день интересно, настройка bind не интересно, а настройка гео днс для распределенного сервиса интересна), а пользователи в этих комментариях пишут своим вопросы специалистам.
Обсуждение фуршета в qa habrahabr.ru/qa/19034/
Просьба на первом уровне не задавать вопросы, а писать только специалистам об их сфере деятельности.
Читать полностью »

Привет всем!

Вы наверное уже слышали о Карте Интернета. Если нет, то посмотреть на нее можно здесь, а почитать о ней можно в моем предыдущем посте.

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

Работоспособность Карты Интернета поддерживается современными технологиями от интернет-гигантов: отображение карты обеспечивает движок Google Maps от компании Google, обработка веб-запросов осуществляется технологиями .net компании Майкрософт, а хостинг и доставку контента осуществляет платформа Amazon Web Services от компании Амазон. Все три компонента жизненно необходимы для нормальной работы карты.

Далее большая простыня про внутреннюю архитектуру карты: в основном дифирамбы AWS, также будут затронуты вопросы производительности и цены хостинга. Если не боитесь — добро пожаловать под кат.

Читать полностью »

Параллельные программы на PHP

В PHP есть ровно один «нормальный» способ писать приложения, которые используют несколько ядер/процессоров — это fork(). О прикладном использовании системного вызова fork() в языке PHP и расширения pcntl я и расскажу. В качестве примера мы напишем достаточно быструю параллельную реализацию grep (со скоростью работы, аналогичной find . -type f -print0 | xargs -0 -P $NUM_PROCS grep $EXPR).
Читать полностью »

Мы продолжаем цикл рассказов про оборудование и решения Dell для бизнеса: серверы, системы хранения данных, резервное копирование, сетевые устройства и прочее.
Сегодня мы хотим вам рассказать про характеристики и способы применения новейшего поколения систем хранения данных Dell EqualLogic: модных, красивых — а главное, эффективных, производительных и удобных с точки зрения масштабирования.

Дисковые массивы Dell EqualLogic

Внимание, системные администраторы компаний, сталкивающиеся со сложностью хранения больших объемов данных и потребностью обеспечить себе удобный контроль над сетевым хранением информации (нефтегазовая сфера, финансовые учреждения, ИТ-компании) — вам это может быть интересно! Кроме прочего, мы расскажем и том, почему подход Dell удобен с точки зрения развития бизнеса. Ведь никто не покупает железо корпоративного класса на один день, и сколько-нибудь серьезный производитель всегда обязан держать в уме защиту серьезных инвестиций своих клиентов. Читать полностью »

image
В данной статье мне хотелось бы рассказать о самом популярном протоколе, обеспечивающем надежную доставку сообщений мультикаста. Этот протокол называется PGM (pragmatic general multicast). Другие надежные протоколы поверх мультикаста (IP Multicast) такие как LBT-RM (от 29west) и SmartSockets (от TIBCO Software) являются, так или иначе, модификацией или реализацией PGM.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js