Обновить
32K+
172

Маркетолог

74,3
Рейтинг
168
Подписчики
Отправить сообщение

gRPC в мире PHP: пошаговый гайд по сборке микросервиса на Symfony 8 и RoadRunner

Время на прочтение9 мин
Охват и читатели4.7K

Переход к микросервисной архитектуре неизбежно поднимает вопрос эффективности межсервисного взаимодействия. В PHP традиционный стек на базе PHP-FPM и REST API создает дополнительные накладные расходы: каждый запрос обрабатывается в отдельном процессе, что требует повторной инициализации контейнера зависимостей, загрузки конфигурации и всего контекста приложения. В результате увеличивается latency и снижается пропускная способность сервиса.

В этой статье мы шаг за шагом разработаем высокопроизводительный микросервис на Symfony 7, используя RoadRunner в качестве постоянного приложения-сервера, gRPC для межсервисного взаимодействия и Protocol Buffers для сериализации данных. По итогам вы получите полностью рабочий сервис и поймете, как построить производительную альтернативу классическому стеку PHP-FPM + REST.

Читать далее

Операционные усилители: история, схемы на LM358 и самодельный электрокардиограф

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели9.7K

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

Разберёмся, как ОУ устроены и почему они стали универсальным строительным блоком аналоговой техники. Пройдём путь от ламповых конструкций до копеечных микросхем, соберём несколько схем на недорогом LM358 с однополярным питанием — и в финале сделаем своими руками простейший электрокардиограф и снимем настоящую кардиограмму.

Читать далее

Проект Lean: Можно ли формализовать всю математику на компьютере – и нужно ли?

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели9K

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

Начиная с 1960-х годов исследователи разрабатывают компьютерные программы, называемые системами интерактивного доказательства. Используя такую систему, математик записывает каждую строку доказательства (включая каждое определение) на языке, понятном компьютеру, а затем система проверяет логику. Если хотя бы один шаг не вытекает из предыдущего — если не доказана каждая мелочь вплоть до того, что 1 + 1 = 2, — программа не примет доказательство.

Сейчас учёные надеются формализовать всю математику с помощью системы интерактивного доказательства под названием Lean. Уже создана библиотека, содержащая более 120 000 определений, и проверено четверть миллиона теорем. Несколько математиков поддерживают эту базу данных, обновляя её и проверяя новые данные. (Некоторые из них занимаются этой работой полный рабочий день.) Они уже получили более 10 миллионов долларов финансирования, в основном от миллиардера-финансиста Алекса Герко.

Читать далее

Как быстро восстановить сайты, если нет бэкапов

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели7.3K

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

Пришлось в авральном режиме поднимать хотя бы HTML-версию. Рассказываю, как вытащить сайт из веб-архивов, когда копий нет нигде, — и за несколько часов вернуть его в строй.

Читать далее

Человек, укравший бесконечность: подлинная история Георга Кантора

Уровень сложностиПростой
Время на прочтение21 мин
Охват и читатели13K

В своей работе 1874 года Георг Кантор доказал, что бесконечность не просто существует, но и бывает разных размеров, и навсегда изменил математику. Однако недавно обнаруженные письма свидетельствуют: это был ещё и плагиат.  

Когда Демиан Гус 12 марта прошлого года последовал за Карин Рихтер в её кабинет, первым ему бросился в глаза бюст. Бюст лысого пожилого джентльмена со стоическим лицом стоял на высоком постаменте в углу комнаты. Гус не увидел и следа того тревожного, одинокого человека, который занимал его мысли более года.

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

Именно здесь, в университете Галле в Германии, Кантор 150 лет назад начал свою революцию. Здесь, в 1874 году, он опубликовал одну из важнейших работ в 4000-летней истории математики. Эта работа кристаллизовала концепцию, долгое время считавшуюся математической угрозой, которую следует избегать любой ценой: бесконечность. Она заставила математиков пересмотреть некоторые из их самых давних предположений и потрясла математику до основания. И она дала начало новой области исследований, которая привела к переосмыслению всей науки.

Читать далее

От идеи до MVP: сервис генерации временных ссылок для S3 на FastAPI

Уровень сложностиПростой
Время на прочтение19 мин
Охват и читатели9.2K

В современных веб-приложениях хранение файлов часто отдают специализированным объектным хранилищам, таким как S3. Это удобно, масштабируемо и надежно. Однако здесь возникает классическая проблема проектирования: как обеспечить безопасный доступ к файлам, когда архитектура требует, чтобы хранилище было приватным, а бизнес-логика прав доступа — централизованной? Оставлять S3-бакет публичным — плохая практика, а проксировать каждый запрос на скачивание через бэкенд-сервис — значит, превратить его в «бутылочное горлышко», которое неизбежно захлебнется при росте трафика.

В этой статье я познакомлю вас с реализацией бэкенд-сервиса, который решает эту проблему элегантно: S3 отвечает за хранение и отправку данных, а мое приложение — за проверку прав и генерацию одноразовых, короткоживущих ключей доступа (Pre-signed URL). Я разберу архитектуру решения, покажу, как настроить безопасное разграничение доступа между публичными и приватными объектами, а также продемонстрирую механизм, который позволяет клиентам скачивать файлы напрямую из хранилища, минуя сервер приложения.

Материал будет полезен бэкенд-разработчикам, системным архитекторам и DevOps-инженерам, которые сталкиваются с задачами организации безопасного хранения и выдачи файлов, ищут способы снижения нагрузки на API своего сервиса и стремятся построить надежную систему разграничения прав доступа с использованием современных объектных хранилищ.

Читать далее

Оптимизация под Pagespeed: работа с изображениями как с наиболее частой и весомой проблемой сайтов

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели7.2K

Разработчики часто сталкиваются с проблемой: сайт успешно протестировали на мастере, выкатили на прод, провели контрольное тестирование — вроде всё хорошо. Сайт работает пару месяцев — и вдруг приходит задача от SEO «увеличить скорость загрузки сайта» или «исправить просевшее количество баллов в PageSpeed». Причём ничего принципиально нового не добавляли, просто наполняли контентом.

Начинаем разбираться — и выясняется, что есть общая проблема, которая почти всегда повторяется. А именно — изображения. В статье расскажем, что с ними делать — как оказывается, проблема распространённая и до сих пор актуальная.

Читать далее

Жесты вместо горячих клавиш: подключаем ИИ к веб-камере

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели8.1K

Наткнулся на старую веб-камеру, которая валялась без дела. Дешевый вариант с посредственным качеством. С такой камерой не стать звездой онлифанс. Но выкидывать жалко. Пришла в голову мысль — почему не соорудить управление жестами для компьютера?

Полноценное управление компьютером, как в фильмах с Томом Крузом, пока остаётся фантастикой: руки затекают, случайные движения превращаются в случайные команды. А вот привязать к жестам пару действий — выключить звук, свернуть окна, прокрутить ленту — реально и за один вечер. Понадобится старая веб-камера, Python и готовые модели Google. В статье — пошаговая сборка, разбор кода и инструкция, как обучить модель реагировать на жесты.

Читать далее

Тестируем выделенный L40S и vGPU на 16 ГБ по производительности (llama.cpp, ComfyUI)

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели8.9K

Сегодня в интернете какой только нет информации об искусственном интеллекте или его применении в разных сферах. Можно сказать, что он уже плотно вошел в обычную жизнь — многие используют ИИ в повседневной работе (и не только), а компании всё чаще внедряют нейросети для автоматизации процессов и борьбы с рутиной. Тем более, что LLM стали заметно умнее и позволяют решать самые разные задачи: проводить быстрый анализ новых направлений, искать решения типовых проблем, генерировать изображения, видео и так далее.

В мае этого года мы расширили линейку VDS с GPU и запустили тарифы с виртуальными видеокартами (vGPU). Поскольку цена на тарифы с физической (GPU Passthrough) и виртуальной картами отличается, решили сравнить их между собой. Основная цель тестирования — понять, насколько vGPU уступают в реальных задачах, а где разница не так критична, чтобы помочь своим клиентам с выбором. 

В этой статье представляем результаты нашего тестирования, которые могут пригодиться для реализации ИИ-инструментов — как нашим клиентам, так и всем, кому интересна эта тема.

Читать далее

Стало жарко: изучаем элемент Пельтье и строим холодильник

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели13K

Дело идёт к жаркому лету, и становятся актуальными различные способы охлаждения продуктов, приборов да и воздуха в комнате. Конечно, можно использовать обычные компрессионные холодильники и кондиционеры, работающие от сети. Но есть ли другие способы получить холод?

Оставим в стороне охлаждение бутылок в проточной воде, обёртывание их мокрым полотенцем с выставлением на ветер, а также заблуждение насчет охлаждения молока при помощи лягушек. Что если нужно охладить банку напитка прямо на рабочем столе? Или, наоборот, микрокомпьютер, мощный транзистор выходного каскада усилителя? Обычные компрессионные холодильники использовать можно, но из-за размеров на рабочий стол их не поставить.

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

Читать далее

Онлайн-переезд EVPN-VXLAN-фабрики между дата-центрами: euNetworks → QupraDC без остановки сервиса

Время на прочтение15 мин
Охват и читатели8.9K

Наш сетевой инженер Рене написал статью в двух частях о том, как грамотно запустить небольшую площадку с минимальным количеством железа, а потом организовать её бесшовный переезд между дата-центрами. Часть вторая.

Меня зовут Рене, я сетевой инженер в FirstVDS. В первой части я рассказывал, как мы запускали небольшую европейскую площадку в Амстердаме: один Leaf, один Spine, routed host networking для гипервизоров, EVPN-VXLAN как сервисная плоскость, DDoS в отдельном VRF, OOBM и Flow-коллектор.

Эта часть — уже не про стартовый дизайн, а про его проверку реальностью. Дата-центр euNetworks закрывается, оборудование нужно перевозить, клиентскую нагрузку останавливать нельзя, адресацию менять нельзя, продажи новых услуг останавливать тоже нельзя.

Читать далее

Маленькая EVPN-VXLAN-фабрика без тупика: как мы запускали площадку в Амстердаме

Время на прочтение12 мин
Охват и читатели9.2K

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

Меня зовут Рене, я сетевой инженер в FirstVDS. Я работаю из Иркутска и люблю строить сетевые фабрики на базе EVPN-VXLAN — не в теории, не в лабе, а на практике в жёстком продакшене, где важнее не красивый референс-дизайн, а то, насколько решение готово к авариям, миграциям нагрузки, физическому переезду и неожиданным вводным от бизнеса.

Это первая часть истории про нашу европейскую точку присутствия в Амстердаме. Здесь речь не про сам переезд между дата-центрами, а про стартовый сетевой дизайн: как запустить небольшую площадку с минимальным количеством железа, но не построить тупиковую схему, которую потом придётся переделывать.

Читать далее

Неожиданная встреча: теория графов вновь помогла решить проблему в анализе Фурье

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели11K

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

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

Читать далее

eBPF для начинающих: практическое введение

Время на прочтение11 мин
Охват и читатели10K

Современные инструменты мониторинга (Prometheus, Grafana, профилировщики) обеспечивают хорошую видимость состояния приложения, но имеют ограничения при анализе низкоуровневых проблем. Технология eBPF (Extended Berkeley Packet Filter) позволяет преодолеть этот барьер, предоставляя безопасный доступ к событиям ядра Linux. 

Статья — это практическое введение в eBPF: попробуем готовые команды для наблюдаемости, сети и безопасности, разберём, как программа попадает в ядро и взаимодействует с user-space через maps и helpers, почему верификатор отклоняет «опасный» код и чем отличаются BCC, libbpf и bpftrace. В конце — короткий обзор того, как eBPF используют Cilium, Falco и Pixie.

Материал будет полезен программистам, DevOps-инженерам, SRE-специалистам и всем, кто интересуется Linux.

Читать далее

Авторизация в Go без боли: как Casbin заменяет километры if-проверок

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели11K

Пока в приложении две роли и три проверки, авторизация умещается в if user.Role == "admin". Но стоит добавить пару ресурсов, ролей и исключений — и условные проверки начинают расползаться по хендлерам, дублироваться и жить своей жизнью.

В этой статье разберём, как навести порядок с помощью Casbin: вынесем правила доступа из кода в конфиг, пройдём путь от простого ACL до RBAC с иерархией ролей, соберём HTTP-сервер на Go с авторизационной middleware и обсудим грабли, на которые легко наступить по дороге.

Читать далее

Ускорение запросов в PostgreSQL: три рычага оптимизации и практический разбор

Уровень сложностиПростой
Время на прочтение20 мин
Охват и читатели12K

В предыдущих частях серии мы разобрали, как читать планы выполнения через EXPLAIN ANALYZE, и научились автоматически ловить медленные запросы с помощью pg_stat_statements, auto_explain и log_min_duration_statement. Теперь — следующий шаг: что делать с проблемами, которые вы нашли.

В этой части разбираем три рычага оптимизации: статистику планировщика, индексы и рефакторинг SQL‑запросов. На демонстрационном примере покажем, как снизить стоимость запроса почти вдвое — без изменений в инфраструктуре.

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

Читать далее

Как найти медленный запрос в PostgreSQL: три инструмента мониторинга

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели9.4K

EXPLAIN ANALYZE отлично справляется с диагностикой конкретного запроса — но только если вы уже знаете, какой именно запрос виновен. На практике проблемный запрос нужно сначала найти среди тысяч других. Ждать жалоб пользователей или вручную мониторить дашборды — путь, который не масштабируется.

В этой статье разберём три инструмента PostgreSQL для автоматического поиска медленных запросов: pg_stat_statements, auto_explain и log_min_duration_statement. Для каждого — настройка, ключевые параметры и когда что использовать.

Читать далее

От люксметра из детского конструктора до ФЭУ на 3 кВ: всё о приборах для работы со светом

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели9.8K

На выставке самоделок я увидел модель автобуса, который трогался с места, если посветить на его крышу фонариком. Наверху был спрятан маленький фотодиод. Тогда раздобыть такую деталь было целой историей — сейчас это вопрос пары кликов на маркетплейсе.

С тех пор приборы для работы со светом стали неотъемлемой частью электроники: они управляют уличным освещением, считывают сигналы с пультов, обеспечивают гальваническую развязку в медицинском оборудовании, лежат в основе солнечных батарей и волоконно-оптических линий связи. В статье разбираю устройство и принципы работы самых распространённых из них — селеновых фотоэлементов, фоторезисторов, фотодиодов, фототранзисторов, фототиристоров и оптронов, — чтобы вы могли выбрать подходящий для своей задачи. 

Читать далее

Детектор на дне моря поймал необычное нейтрино, которое может раскрыть секреты древних чёрных дыр

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели9.9K

Почти три года назад космическая частица попала в Средиземное море и активировала ещё не достроенный детектор Кубического Километрового Нейтринного Телескопа (KM3NET) у побережья Сицилии. Это было нейтрино — элементарная частица, известная тем, что почти беспрепятственно проходит сквозь любое вещество.

Обсерватория IceCube в Антарктиде, аналогичный детектор, работающий уже более десяти лет, обнаружила сотни космических нейтрино, однако ничего подобного среди них не было. Эта частица примерно в 35 раз мощнее любого ранее зафиксированного нейтрино и она могла вылететь из высокоактивной галактики — блазара — или из фонового источника космических высокоэнергетических частиц, которые, как подозревают учёные, пронизывают весь космос.

Но это не единственные возможности. На следующий день после того, как коллаборация KM3NET сообщила об открытии, физик Дэвид Кайзер поделился с коллегами неожиданной идеей: а что если это мощное нейтрино произошло от взорвавшейся первичной чёрной дыры?

Читать далее

Кризис в физике элементарных частиц: есть ли свет в конце туннеля?

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели18K

Большой Адронный Коллайдер не обнаружил никаких новых физических явлений. Что же делать дальше?

В июле 2012 года физики Большого Адронного Коллайдера (LHC) в Европе с триумфом объявили об открытии бозона Хиггса, долгожданной частицы — основополагающего элемента субатомного мира. Взаимодействие с полем Хиггса наделяет элементарные частицы инертной массой — благодаря этому они замедляются, объединяются в атомы, а те складываются во всё многообразие материального мира. Через пару месяцев я устроилась в только что созданный журнал — будущий Quanta — первым штатным репортёром. Так я оказалась в первом ряду разворачивающейся драмы.

Она развернулась не вокруг частицы Хиггса, к моменту её обнаружения на LHC в существовании бозона Хиггса почти никто не сомневался. Частица Хиггса была последним элементом Стандартной модели физики элементарных частиц — набора уравнений 1970-х годов, описывающих 25 известных элементарных частиц и их взаимодействия.

Но куда важнее оказалось то, чего в данных не нашлось.

Читать далее
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Работает в
Зарегистрирован
Активность