Привет, Хабр, это моя первая статья. Меня зовут Константин, я системный инженер в компании ГНИВЦ. Здесь я хотел бы вам рассказать, что такое Envoy и как с его помощью можно упростить жизнь разработчикам и повысить надёжность взаимодействия микросервисов, минуя инфраструктуру для кого-то страшного и непонятного Kubernetes, а используя простой и старомодный Docker. Также эта статья поможет познакомиться с Envoy поближе и узнать, как он шагает в ногу с таким проектом как Istio.
Высокая производительность *
Методы получения высокой производительности систем
Новости
Чем отличается пессимистическая и оптимистическая блокировка в MySQL
Оптимизация ядра WebGPU для перемножения матриц и достижения производительности свыше 1ТФЛОПС
Пишем Surfgrad, высокопроизводительную библиотеку для автоматического дифференцирования выражений при помощи WebGPU.
Я работаю в компании Nomic, и многие из моих коллег заняты созданием больших TSNE-подобных визуализаций, работающих в браузере. При визуализации таких двумерных карт возникает две проблемы: проецировать эти конструкции (напр. TSNE и UMAP) в 2D-координатную систему протекает медленно и требует больших затрат оперативной памяти, особенно по мере того, как вы увеличиваете датасет и пытаетесь визуализировать в браузере миллионы точек данных, не расплавив при этом ноутбук невзначай.
Отобразить в браузере миллионы точек данных, не расплавив компьютер — та ещё задача. Мне доводилось слышать, что многие проблемы с масштабированием удаётся решать при помощи инструмента Deepscatter, разработанного Беном Шмидтом.
Но многие из таких разговоров, которые мне известны, вертятся вокруг Typescript и великолепия WebGPU как такового. Готовя эту статью, я не смог найти ни одной библиотеки для автоматического дифференцирования выражений, которая была бы написана с применением WebGPU. Но было бы упущением не назвать здесь два репозитория с функционально схожим наполнением: webGPT (библиотека на основе трансформеров, приспособлена только для логического вывода) и webgpu-blas (ядра для быстрого перемножения матриц под webGPU). Поэтому, в качестве самообразования и желая получше изучить WebGPU и Typescript, я решил написать Surfgrad, высокопроизводительную библиотеку для автоматического дифференцирования выражений под управлением WebGPU. Она обеспечивает тензорные операции в браузере. Как понятно по названию и по принципу работы, она во многом сделана по примеру tinygrad и micrograd.
Jintide: доступный и недорогой аналог Intel. Проверим?
Китайская компания Montage Technology представила новую линейку процессоров Jintide, которая имеет от 16 до 48 ядер и базируется на архитектуре x86. Если вы вдруг пропустили, этот производитель выпускает процессоры, которые по сути являются «клонами» Intel Xeon, но при этом стоят значительно дешевле.
Мы подумали, а почему бы нам не протестировать эти процессоры в сторонних серверах и найти ответы на простые вопросы:
— Можно ли взять серверы под Intel, но без процессоров — и поставить в них китайские копии, таким образом уменьшив конечную стоимость сервера, но не потеряв в функциональности и производительности?
— Действительно ли они ничем не отличаются от Intel, и если отличаются, то как это сказывается на реальной работе ОС и приложений?
Под катом расскажем об итогах тестирования и поделимся мнением, подходит ли китайское «железо» для высоких нагрузок.
Истории
Действуем на опережение: предотвращаем скрытые угрозы с помощью статистики
Современные киберугрозы становятся все более сложными и изощренными, поэтому для стабильной работы организация уже не может обойтись без новейших методов защиты. Долгое время считалось, что для обеспечения безопасности веб-приложений вполне достаточно использования WAF (Web Application Firewall). Однако стремительный рост числа API и увеличивающееся количество угроз заставили пересмотреть этот подход. Многие компании столкнулись с тем, что они зачастую не имеют полного представления, какие ресурсы используются и насколько они уязвимы, вследствие чего у них недостаточно контроля над своими API.
В ответ на эту проблему команда разработчиков Вебмониторэкс создала средство защиты ПроAPI Структура, которое позволяет инвентаризировать все API, узнать их состав и выявить уязвимости. Важным дополнением нашего решения стала новая функциональность, которая позволяет собирать статистику по роутам и использовать её для раннего обнаружения атак и оперативного реагирования на них. Сегодня я представлю это нововведение.
Чтобы глубже понять, как работает наша новая функция, давайте разберем ключевые термины. При работе с API используются понятия эндпоинт и роут. Первое – это само обращение клиента, запускающее конкретное действие приложения. Например, GET, PATCH, DELETE. Роут же представляет собой URL, то есть имя, по которому API запускает работу эндпоинтов. Примером может служить функция авторизации, соответствующая роуту example.com/login.php. При этом, важно помнить, что один роут может запускать несколько эндпоинтов.
Как написать Raft на чистом Python: основы
Привет, друзья! В этой статье рассмотрим, как реализовать алгоритм Raft на Python.
Raft — это алгоритм распределённого консенсуса, который делает три вещи:
1. Выбирает лидера (тот, кто рулит кластером).
2. Реплицирует данные по всем узлам (чтобы не потерять, если что-то пойдет не так).
3. Гарантирует согласованность данных (никакой битой записи в журнале).
Кэшируем поток данных из Kafka в Tarantool: подробный пример реализации с кодом и результатами
Apache Kafka — популярный распределенный брокер сообщений, который собирает и сохраняет сообщения (данные) со всех источников, а после предоставляет их программам и сервисам-получателям. Благодаря своей производительности и архитектуре инструмент довольно активно используется в проектах, где нужно гонять большие объемы данных. Но даже возможностей Kafka не всегда достаточно — иногда системам нужен буст по скорости и надежности. И получить его можно с помощью кэширования данных в Tarantool.
Меня зовут Никита Молоствов. Я старший программист в команде разработки VK Tech. В этой статье я расскажу о том, как можно наладить взаимодействие Kafka и Tarantool, зачем может понадобиться кэширование потока из Kafka в Tarantool, и дам подробную пошаговую инструкцию, с которой каждый сможет применить мои наработки в собственной системе.
Конвейеризация: универсальный способ повышения пропускной способности
Что общего между стиральной машиной, CPU и микросервисами? Все они выигрывают от «конвейеризации» (англ. pipelining).
В этой статье мы соберем информацию из разных сфер, и увидим, насколько универсален принцип конвейеризации. Получим интуитивное понимание терминов «задержка» (англ. latency) и «пропускная способность» (англ. throughput). А также научимся увеличивать пропускную способность в своих бизнес-процессах, компьютерных системах, и просто в повседневной жизни.
Управление распределенной командой на GitHub – а что, так можно было?
Привет, меня зовут Ася Исакова, и я организационный психолог. Возможно, единственный в мире организационный психолог, который умеет создавать пулл-реквесты на GitHub. Как так вышло? Дело в том, что я 2+ года занималась тем, что выстраивала нормальную работу на удаленке без 8 звонков в день для одной распределенной команды, используя GitHub как основной инструмент. Подробности о том, что это, как это было, что получилось и вдруг вам тоже надо, под катом.
JavaScript. Как сделать невероятно быстрый многопоточный Data Grid на 1 000 000 строк. Часть 1/2: нюансы работы с DOM
Особенности Fast Data Grid:
— Невероятно быстрый
— Многопоточный
— Всего 523 строчки кода
— Нет зависимостей
— Vanilla JavaScript
Попробуйте скролл и поиск по 1 000 000 строк — Fast Data Grid.
В статье перечислю нюансы работы с DOM. Про многопоточность в следующей статье.
Применение аппаратных ускорителей в SDN: как мы добились скорости передачи пакетов на уровне Bare Metal
Каждый, кто имеет дело с более-менее крупной IT-инфраструктурой, знает, что в мире сетей есть две прямо противоположных реальности. В одной — виртуализация с эффективным дроблением ресурсов, но потерей скоростей, в другой — Bare Metal с высокой скоростью и мощностью, но слабой гибкостью в вопросах выделения ресурсов. И если вы уже задались вопросом: «А можно без крайностей?», я инженер R&D-команды Cloud.ru Вадим Михеев, расскажу, как нам удалось достичь скоростей передачи пакетов в SDN на уровне Bare Metal на примере облака OpenStack. А еще посмотрим, какой прирост к скорости передачи пакетов дает технология ASAP².
Статья будет полезна всем обладателям железок NVIDIA Mellanox ConnectX-5/6/7, использующим виртуализацию, ну а остальные смогут посмотреть, какие способы ускорить сеть для своих клиентов мы тестируем и, возможно, вдохновиться.
Throttling в процессорах — инволюция. Зеленые против Красных
Мы привыкли, что производительность процессоров растет с каждой новой моделью. Иначе зачем их покупать? Зеленые технологии в процессорах ранее присутствовали, но легко управлялись через схему питания в Windows. Однако новый кластер серверов от Lenovo сумел неприятно удивить, а после изучения документации возникло много вопросов к архитекторам и архитектуре. И зеленое будущее уже видится не таким приятным.
PostgreSQL — особенности работы с памятью для 1С-систем. Часть 2
Продолжаем исследовать и настраивать память в PostgreSQL. Начало см. здесь.
Будет ешё итретья — заключительная часть, где я постараюсь максимально доступным языком рассказать уже методику выбора настроек. А пока предлагаю набраться терпения и ознакомиться со следующей порцией исследования по выбору настроек оперативной памяти PostgreSQL. Предупреждаю, будет не просто и, наверняка, не каждый доберется до конца.
В первой части были рассмотрены параметры shared_buffers, maintenance_work_mem, autovacuum_work_mem. А сегодня на повестке параметры temp_buffers и work_mem.
Ближайшие события
Об инциденте с NTP-серверами
Недавно на Хабре вышла статья об аномальной нагрузке на публичные NTP‑серверы в рунете. К сожалению, к этой ситуации привела ошибка в прошивке Яндекс Станций.
Как наши Станции синхронизируют время, что спровоцировало инцидент и как мы планируем поступить дальше — обо всём этом расскажем в статье. Хочется верить, что описание ситуации и принятые меры помогут не только нам, но и коллегам по индустрии избежать подобного в будущем.
Темы, доклады, две конфы: история трека для инженеров и исследователей «Под капотом»
И вот, 24 октября прошла уже вторая наша конференция — GoCloud Tech — на этот раз специально для технарей и инженеров. И вновь мы организовывали ресерческий трек, который в этот раз назвали «Под капотом». Что на нем было, какие впечатления остались у участников и слушателей, какая у всего этого предыстория и ценность — читайте в статье. А еще заглядывайте за ссылками на статьи и записи наших докладов.
Катастрофическое падение производительности из-за hyperthreading
Недавно я писал статью - что такое 50% cpu? На системах с hyperthreading 50% cpu по метрикам означает, что большая часть ресурсов сервера уже использована. То есть cpu>50% - это уже "желтая зона", и мы ожидаем замедление всего, чего можно. Но я никогда не думал до экспериментов, что падение может быть столь катастрофическим.
Для экспериментов я использую MSSQL. Если вы не связаны с базами, прочитайте первую часть по диагонали до выводов.
Одноплатный компьютер Next SBC с Ryzen 7840HS: мал да удал. Игры, офис и все остальное. Что за девайс?
Крошечный компьютер с большими амбициями — так можно описать NexT-SBC, новый одноплатный ПК, разработанный известным пользователем YouTube под псевдонимом ETA Prime. Этот мини-ПК умещается на ладони, но по характеристикам не уступает полноценным настольным системам.
Созданный на базе 4-нм процессора AMD, NexT-SBC позиционируется как универсальное решение для дома и офиса. Цена устройства составляет $329, что делает его в три раза дешевле флагманского смартфона iPhone 16 Pro.
ИИ-инструменты для аналитиков: теория, кейсы, советы
ИИ давно перестал быть просто забавным развлечением, он позволяет высвободить время от рутины и операционки, что дает сконцентрироваться на уникальных нетипичных задачах, где требуется весь спектр навыков аналитика. В течение пары лет я активно использовал ИИ в работе и искал точки применения, в которых они оптимизируют мою работу. Если раньше на подготовку к интервью и его расшифровку я мог потратить несколько часов или даже целый день, теперь это занимает около получаса. Другой пример – подготовка схем и диаграмм для визуализации проекта. С помощью ChatGPT и PlantUML на подготовку черновика диаграммы у меня уходит минут пять. И таких примеров очень много, о некоторых из них я расскажу подробнее в этой статье.
Развенчан слух, что Китай взломал современную криптографию с помощью квантового компьютера
В октябре 2024 года мировые СМИ стали распространять пугающие новости о том, что китайским учёным якобы удалось взломать современные криптографические шифры военного применения с помощью квантового компьютера D-Wave Advantage (на фото вверху).
Эти новости основаны не на пустых словах, а на научной статье от группы исследователей под руководством д-ра Ван Чао (Wang Chao) из Шанхайского университета. Статья опубликована в сентябре 2024 года в журнале Chinese Journal of Computers. Авторы использовали D-Wave Advantage для успешной атаки на три алгоритма — Present, Gift-64 и Rectangle, которые являются критически важными для расширенного стандарта шифрования (AES), используемого для защиты данных в правительственном, военном и финансовом секторах.
Западные эксперты по криптографии изучили статью и оценили достижения китайских коллег.
Продовольственная безопасность. Часть I
Продовольственная безопасность — элемент национальной безопасности государства. Продовольственная безопасность является одной из главных целей аграрной и экономической политики государства
Продовольственная безопасность РФ
В России основным документом, определяющим совокупность официальных взглядов на цели, задачи и основные направления государственной экономической политики в области обеспечения продовольственной безопасности страны, является Доктрина продовольственной безопасности Российской Федерации, утвержденная указом президента Дмитрия Медведева от 1 февраля 2010 года. В 2019 году в Совете Безопасности РФ начата разработка новой редакции доктрины, которую предполагается принять до конца года.
Россия по итогам 2020 года заняла по уровню продовольственной безопасности 24-е место среди 113 стран, по уровню продовольственной безопасности превзошла Польшу, а доля населения, живущего за глобальной чертой бедности, в России втрое меньше, чем в Польше. Это следует из Глобального индекса продовольственной безопасности, который уже в девятый раз подготовили аналитики The Economist Intelligence Unit при поддержке Corteva Agriscience. В 2020 году Россия почти в два раза улучшила свои позиции в Глобальном индексе продовольственной безопасности - в 2019 году Россия занимала только 42-е место
Вклад авторов
olegbunin 4532.5alizar 2497.3marks 1526.9olegchir 1183.4Kilor 1072.0YuriPanchul 963.5it_man 889.0AloneCoder 810.8Seleditor 705.8alatobol 685.0