Главная » Архив меток: Высокая производительность

Архив меток: Высокая производительность

Nginx-переменные с njs: просто, безболезненно и через JavaScript

njs — это JavaScript-интерпретатор в легковесном веб-сервере, с помощью которого можно создавать новые nginx-переменные и обработчики стадий запроса. Чем njs хорош? Чего не умеет? И зачем вообще его сделали? На эти и другие вопросы ответит Дмитрий Волынцев (xeioex), разработчик nginx и основной разработчик интерпретатора njs. — Дмитрий, зачем понадобился скриптинг в конфигах nginx? — Первая причина — директива if. Люди, ...

Читать далее »

Почему Moscow Python Conf теперь ++

Собрались мы с Олегом Буниным (olegbunin) и Валентином Домбровским поговорить про то, как к осени вместе подготовим классную конференцию про Python, и записали видео. В частности, ответ на самый главный вопрос, зачем вообще нужны конференции. Под катом наша беседа в текстовом виде. И хочу заметить, не для того, чтобы чему-нибудь научиться – учатся сейчас в интернете (например на Хабре :). Кстати, обсуждение тем открытое, и каждый ...

Читать далее »

[Из песочницы] Linux in RAM: debirf way 2018

Let's see how it can be done in 2018 with versioning and automation. You want to have absolute disk speed? before run this tutorial you must know linux essential difference between bash and sh (debirf writen on sh) how to format usb key (any way) what drivers you need for your hardware (or you can debug it via dmesg|lspci) how ...

Читать далее »

Иван Тулуп: асинхронщина в JS под капотом

А вы знакомы с Иваном Тулупом? Скорее всего да, просто вы еще не знаете, что это за человек, и что о состоянии его сердечно-сосудистой системы нужно очень заботиться. С удовольствием делимся с вами расшифровкой этого познавательного выступления. Об этом и о том, как работает асинхронщина в JS под капотом, как Event Loop работает в браузерах и в Node.js, есть ли какие-то различия и, может быть, похожие вещи рассказал Михаил Башуров (SaitoNakamura) в своем докладе на РИТ++. NET из Luxoft. О спикере: Михаил Башуров — fullstack ...

Читать далее »

[Перевод] Переопределение Equals и GetHashCode. А оно надо?

Если вы знакомы с C#, то, скорее всего, знаете, что необходимо всегда переопределять Equals, а также GetHashCode, чтобы избежать снижения производительности. Но что будет, если этого не сделать? Сегодня сравним производительность при двух вариантах настройки и рассмотрим инструменты, помогающие избегать ошибок. Насколько серьезна эта проблема? Не каждая потенциальная проблема с производительностью влияет на время выполнения приложения. Метод Enum.HasFlag не очень ...

Читать далее »

Лучшие англоязычные доклады с HighLoad++ 2017

В продолжение "разбора полетов" с HighLoad++ 2017 мы подготовили небольшой обзор пяти лучших (по мнению участников конференции) англоязычных докладов. Наивысших оценок удостоились темы, касающиеся использования ProxySQL (в ТОП-5 попало целых два доклада об этом инструменте), тестирования приложений в публичном облаке Amazon, а также принципы логгирования в масштабах, когда это становится проблемой, и мониторинг Apache Kafka. Полный список из 150 докладов ...

Читать далее »

Kotlin performance on Android

Поговорим сегодня о производительности Kotlin на Android в production. Посмотрим под капот, реализуем хитрые оптимизаци, сравним байт-код. Наконец, серьезно подойдем к сравнению и замерим бенчмарки. Эта статья основана на докладе Александра Смирнова на AppsConf 2017 и поможет разобраться, можно ли написать код на Kotlin, который не будет уступать Java по скорости. О спикере: Александр Смирнов CTO в компании PapaJobs, ведет видеоблог «Android в лицах», а также является одним из организаторов сообщества Mosdroid.Начнем с ваших ожиданий. Или быстрее? Как ...

Читать далее »

[Из песочницы] From 0.01 TFlops HPL to ASC’18 Application Innovation

Продолжаем серию статей об участии команды из Санкт-Петербургского Государственного Университета (мы называем себя EnterTildeDot) на крупнейших в мире студенческих суперкомпьютерных соревнованиях. Привет, Хабр! Ну что ж, давайте посмотрим на секрет достижения рекорда и антирекорда производительности вычислительной системы. В этой статье мы рассмотрим путь на ASC’18 на примере одного участника команды, уделив особое внимание визитной карточке соревнований и современных суперкомпьютеров в ...

Читать далее »

Запуск кластера RabbitMQ в Kubernetes

При микросервисной организации приложения существенная работа ложится на механизмы интеграционной связи микросервисов. Причем эта интеграция должна быть отказоустойчива, с высокой степенью доступности. В наших решениях мы используем интеграцию и с помощью Kafka, и с помощью gRPC, и с помощью RabbitMQ. В этой статье мы поделимся нашим опытом кластеризации RabbitMQ, ноды которого размещены в Kubernetes. 7 его кластеризация в K8S была ...

Читать далее »

Ни GA, ни ЯМ. Как мы сделали собственный кликстрим

Благодаря этому можем узнать кучу необходимых вещей: нажимают ли на сердечки больше, чем на звёздочки, в какие часы пишут более развёрнутые описания, в каких регионах чаще промахиваются по зелёным кнопкам. Мы собираем более двух миллиардов аналитических событий в сутки. Расскажу о технической стороне кликстрима в Авито: устройство событий, их отправка и доставка, аналитика, отчёты. Систему сбора и анализа событий можно ...

Читать далее »