На выставке CES 2020, которая прошла в минувшем январе, компания Kingston продемонстрировала новые твердотельные накопители формата M.2, получившие имя KC2000. Данные SSD ориентированы на энтузиастов с особыми требованиями к дисковой подсистеме, а также на использование в высокопроизводительных рабочих станциях и вычислительных платформах (HPC). При всём этом, ценники на всю линейку KC2000 остаются на доступном уровне. В чём же секрет успеха?
Рубрика «высокая производительность» - 23
Скорость и надёжность выше, а цена ниже. Новые твердотельные накопители Kingston KC2000
2020-02-11 в 11:00, admin, рубрики: KC2000, ssd-накопители, Блог компании Kingston Technology, высокая производительность, высокая производительнось, Компьютерное железо, Накопители, накопитель, хранение данныхИзмеряем на коленке пропускную способность памяти
2020-02-11 в 9:35, admin, рубрики: ram, Видеокарты, высокая производительность, Компьютерное железо, кэш CPU, ОЗУ, память, пропускная способность, Процессоры, Тестирование IT-системНесколько недель назад в разговоре за обедом коллега пожаловался на какой-то медленный процесс. Он подсчитал количество сгенерированных байт, количество циклов обработки, и в конечном счёте, объём оперативной памяти. Коллега заявил, что современный GPU с пропускной способностью памяти более 500 ГБ/с съел бы его задачу и не подавился.
Мне показалось, что это интересный подход. Лично я раньше не оценивал задачи производительности с такой стороны. Да, я знаю о разнице в производительности процессора и памяти.
Я знаю, как писать код, который активно использует кэш. Знаю примерые цифры задержки. Но этого недостаточно, чтобы сходу оценить пропускную способность памяти.
Читать полностью »
Aсинхронный PHP
2020-02-11 в 7:25, admin, рубрики: amphp, event loop, php, php-fpm, phprussia, promise, ReactPHP, асинхронность, Блог компании Конференции Олега Бунина (Онтико), высокая производительность, Программирование, Разработка веб-сайтовДесять лет назад у нас был классический LAMP-стек: Linux, Apache, MySQL, и PHP, который работал в медленном режиме mod_php. Мир менялся, а с ним и важность скорости. Появился PHP-FPM, который позволил значительно увеличить производительность решений на PHP, а не срочно переписывать на чем-то побыстрее.
Параллельно велась разработка библиотеки ReactPHP с применением концепции Event Loop для обработки сигналов от ОС и представления результатов для асинхронных операций. Развитие идеи ReactPHP — AMPHP. Эта библиотека использует тот же Event Loop, но поддерживает корутины, в отличие от ReactPHP. Они позволяют писать асинхронный код, который выглядит как синхронный. Возможно, это самый актуальный фреймворк для разработки асинхронных приложений на PHP.
Но скорости требуется всё больше и больше, инструментов уже не хватает, поэтому идея асинхронного программирования в PHP — одна из возможностей ускорить обработку запросов и лучше утилизировать ресурсы.
Об этом и поговорит Антон Шабовта (zloyusr) — разработчик в компании Onliner. Опыт больше 10 лет: начинал с десктопных приложений на С/С++, а потом перешел в веб-разработку на PHP. «Домашние» проекты пишет на C# и Python 3, а в PHP экспериментирует с DDD, CQRS, Event Sourcing, Async Multitasking.
Читать полностью »
Массовая оптимизация запросов PostgreSQL. Кирилл Боровиков (Тензор)
2020-02-11 в 6:45, admin, рубрики: auto_explain, dba, explain, explain.tensor.ru, node.js, postgresql, Администрирование баз данных, базы данных, Блог компании Тензор, высокая производительностьВ докладе представлены некоторые подходы, которые позволяют следить за производительностью SQL-запросов, когда их миллионы в сутки, а контролируемых серверов PostgreSQL — сотни.
Какие технические решения позволяют нам эффективно обрабатывать такой объем информации, и как это облегчает жизнь обычного разработчика.
Кому интересен разбор конкретных проблем и разные техники оптимизаций SQL-запросов и решения типовых DBA-задач в PostgreSQL — можно также ознакомиться с серией статей на эту тему.
Читать полностью »
Железо или оптимизация? Badoo, Авито и Мамба — о производительности PHP
2020-02-06 в 12:01, admin, рубрики: php, Блог компании Badoo, бэкенд, высокая производительность, конференции, оптимизация, оптимизация кода, производительностьВопрос производительности PHP-кода для Badoo один из самых важных. От качества PHP-бэкенда напрямую зависят количество ресурсов, которые мы тратим на разработку и эксплуатацию, скорость работы сервиса и впечатление, которое он производит на пользователей.
Поэтому темой третьей встречи сообщества PHP-разработчиков в нашем офисе мы сделали производительность бэкенда и пригласили к обсуждению коллег из Авито и «Мамбы».
Читайте под катом расшифровку дискуссии, в которой мне повезло быть модератором: как устроена инфраструктура трёх компаний, как мы измеряем производительность и на какие метрики ориентируемся, какие инструменты используем, как делаем выбор между железом и оптимизацией.
А 15 февраля приходите на следующий Badoo PHP Meetup: обсудим легаси.
Читать полностью »
Почему Discord переходит с Go на Rust
2020-02-05 в 15:58, admin, рубрики: cassandra, Discord, Go, Rust, асинхронный Rust, владение памятью, высокая производительность, дженерики, Проектирование и рефакторинг, Разработка веб-сайтов, система типов, управление памятью
Rust становится первоклассным языком в самых разных областях. Мы в Discord успешно используем его и на серверной, и на клиентской стороне. Например, на стороне клиента в конвейере кодирования видео для Go Live, а на стороне сервера для функций Elixir NIF (Native Implemented Functions).
Недавно мы резко улучшили производительность одной службы, переписав её с Go на Rust. В этой статье объясним, почему для нас имело смысл переписать службу, как мы это сделали и насколько повысилась производительность.
Читать полностью »
Эволюция обработки вебхуков Facebook: с нуля до 25 000 в секунду
2020-02-05 в 9:42, admin, рубрики: Facebook API, facebook messenger, Lua, nginx, php, PHP Russia, php-fpm, ReactPHP, redis, webhook, Блог компании ManyChat, Блог компании Конференции Олега Бунина (Онтико), вебхуки, высокая производительностьСкорее всего, рассказывать, что такое вебхуки (webhooks) — никому не нужно. Но на всякий случай: вебхуки — это механизм оповещения о событиях во внешней системе. Например, о покупке в интернет-магазине через онлайн-кассу, отправке кода в GitHub-репозиторий или действиях пользователей в чатах. В типичном API нужно постоянно опрашивать сервер, написал ли пользователь что-нибудь в чате. С помощью механизма вебхуков можно «подписаться» на оповещения, и сервер сам отправит HTTP-запрос, когда произойдет событие. Это удобнее и быстрее, чем постоянно запрашивать новые данные на сервере.
ManyChat — это платформа, которая помогает бизнесу общаться со своими клиентами через чаты в мессенджерах. Вебхуки — одна из важных частей ManyChat, потому что именно через них бизнес общается с клиентами. А общаются они много — например, через систему бизнесы отправляют своим клиентам миллиарды сообщений в месяц.
Основная масса сообщений отправляется через Facebook Messenger. У него есть особенность — медленный API. Когда клиент пишет сообщение, чтобы заказать пиццу, Facebook отправляет в ManyChat вебхук. Платформа его обрабатывает, отправляет запрос обратно и пользователь получает сообщение. Из-за медленного API некоторые запросы идут несколько секунд. Но когда платформа долго не отвечает, бизнес теряет клиента, а Facebook может отключить приложение от вебхуков.
Поэтому обработка вебхуков — это одна из главных инженерных задач платформы. Чтобы решить проблему, в ManyChat за три года работы несколько раз меняли архитектуру обработки с простого контроллера в Yii до распределенной системы с «Галактиками». Подробнее об этом под катом расскажет Дмитрий Кушников (cancellarius).
Читать полностью »
64-ядерный Ryzen Threadripper 3990X разгромил в тестах все процессоры Intel, включая Xeon стоимостью $20 000
2020-02-05 в 7:25, admin, рубрики: amd, geekbench, HEDT, miran, Ryzen Threadripper 3990X, SiSoftware, UserBenchmark, бенчмарки, Блог компании Дата-центр «Миран», высокая производительность, дата-центр "Миран", Компьютерное железо, Настольные компьютеры, ПроцессорыЗа несколько дней до начала продаж в базах SiSoftware, GeekBench и UserBenchmark появились бенчмарки 64-ядерного процессора AMD Ryzen Threadripper 3990X. Теперь можно на фактах убедиться, насколько далеко компания AMD вырвалась вперёд в технологической гонке благодаря внедрению микроархитектуры Zen 2. Фактически, у неё сейчас нет конкурентов.
Например, в тесте арифметических операций один 64-ядерный процессор Ryzen Threadripper 3990X показал на 19% лучший результат, чем два 28-ядерных процессора Xeon Platinum 8280, общая стоимость которых превышает $20 000. Аналогичная картина в других тестах.
Читать полностью »
Consul + iptables = :3
2020-02-04 в 8:44, admin, рубрики: befw, consul, firewall, hashicorp, iptables, Netfilter, wargaming, Блог компании Конференции Олега Бунина (Онтико), высокая производительность, информационная безопасность, системное администрированиеВ 2010 году у компании Wargaming было 50 серверов и простая сетевая модель: бэкенд, фронтенд и файрвол. Количество серверов росло, модель усложнялась: стейджинги, изолированные VLAN с ACL, потом VPN с VRF, VLAN c ACL на L2, VRF с ACL на L3. Закружилась голова? Дальше будет веселее.
Когда серверов стало 16 000 работать без слез с таким количеством разнородных сегментов стало невозможно. Поэтому придумали другое решение. Взяли стек Netfilter, добавили к нему Consul как источник данных, получился быстрый распределенный файрвол. Им заменили ACL на роутерах и использовали как внешний и внутренний файрвол. Для динамического управления инструментом разработали систему BEFW, которую применили везде: от управления доступом пользователей в продуктовую сеть до изоляции сегментов сети друг от друга.
Как это все работает и почему вам стоит присмотреться к этой системе, расскажет Иван Агарков (annmuor) — руководитель группы инфраструктурной безопасности подразделения Maintenance в Минском центре разработки компании. Иван — фанат SELinux, любит Perl, пишет код. Как руководитель группы ИБ, регулярно работает с логами, бэкапами и R&D, чтобы защищать Wargaming от хакеров и обеспечивать работу всех игровых серверов в компании.
Читать полностью »