habrahabr
5G-A: Китай запускает мобильную сеть нового поколения. Рекорды скорости и качества связи

Китай впереди планеты всей в плане сотовых сетей. Пока многие страны только осваивают 5G, China Telecom запустила первую в мире коммерческую сеть 5G-A (5G-Advanced) с пиковой скоростью до 10 Гбит/с, что примерно в 10 раз быстрее обычного 5G и сравнимо с проводными 10-гигабитными сетями. Запустили новинку 17 мая 2025 года, в День электросвязи и информационного общества. Что такое 5G-A, как она работает и где можно использовать? Сейчас разберемся. Что такое 5G-A и зачем она нужна 5G-A — эволю…

  • суббота, 31 мая 2025 г. в 00:00:16
habrahabr
Как оптимизировать PostgreSQL и не лишиться сна: разбор для разработчиков

Когда вы разворачиваете веб-приложение, чаще всего у вас веб-сервер, бэкенд, база данных и авторизация оказываются на одном сервере. Первые пользователи, обычно тестировщики и менеджер, счастливы — все летает. Но потом приложение выходит в продакшн и начинается боль. Запросы тормозят и отвечают по пять секунд, CPU не загружен даже на треть, веб-сервер швыряет 504 Gateway Timeout и т. д. И вот вы сидите ночью и чините прод, потому что PostgreSQL — не просто «табличка с данными», а сложный инстр…

  • суббота, 31 мая 2025 г. в 00:00:15
habrahabr
Атака клонов или темная сторона Open Source

В далёкой-далёкой стране под названием «Open Source»...Когда-то мы просто хотели сделать VPN, который можно будет легко развернуть на своем сервере, без сбора логов, централизации и слежки. В 2020 году, на хакатоне Demhack, организованном цифровыми правозащитниками из Роскомсвободы, родилась идея создать VPN-сервис, который станет независимым и неуязвимым к блокировкам. Так появился Amnezia VPN – бесплатное open-source решение, позволяющее каждому настроить VPN на собственном сервере с использо…

  • суббота, 31 мая 2025 г. в 00:00:14
habrahabr
Автоматический HTTPS для ленивых: ACME + Angie один раз и навсегда

Приветствую, дорогой читатель!С момента появления в нашем любимом веб-сервере Angie замечательной функции ACME-челленджа через DNS прошло уже достаточно времени, чтобы оценить все преимущества этого решения. Эта поистине революционная фича подарила нам долгожданную возможность получать wildcard-сертификаты буквально в несколько кликов.Однако, как это часто бывает с новыми технологиями, до сих пор у многих пользователей, особенно только начинающих свое знакомство с Angie, возникают вполне законо…

  • суббота, 31 мая 2025 г. в 00:00:12
habrahabr
Сначала лягте, потом читайте: как перестать уставать на работе

В нынешнем ритме жизни усталость — особенно в IT-сфере — стала не просто нормой, а обыденностью. Мы существуем в режиме постоянной нагрузки: новые задачи, встречи, дедлайны, нескончаемый поток информации. При этом от нас все так же ждут продуктивности, собранности и идеального самочувствия. Но как быть, когда внутренние ресурсы заканчиваются, а мотивация исчезает? Почему перерывы не помогают, отдых не восстанавливает, а тайм-менеджмент превращается в еще одну обязанность?Меня зовут Валерия Зелё…

  • суббота, 31 мая 2025 г. в 00:00:12
golang
Архитектурный паттерн для централизованной обработки ошибок в хендлерах на Go

В данной статье представлен авторский подход к унификации и централизации механизма обработки ошибок в HTTP-обработчиках веб-сервисов, разработанных на языке Go. Статья подробно рассматривает ограничения традиционных методов обработки ошибок, ведущие к дублированию кода и снижению поддерживаемости. Предлагается новый архитектурный паттерн, включающий использование специализированной сигнатуры функций-обработчиков, кастомного типа ошибки HTTPError для инкапсуляции статуса ответа, сообщения для к…

  • суббота, 31 мая 2025 г. в 00:00:09
golang
Template Method в Go без наследования

Привет, Хабр!В статье рассмотрим, как реализовать Template Method-паттерн в Go без наследования, зачем он вообще нужен.Что делает Template Method и зачем он в бизнес-логикеКлассическая формулировка: «Определяет скелет алгоритма в базовом классе, перекладывая реализацию отдельных шагов на наследников». В CRUD-жизни разработчика это:Жёсткий инвариант — шаги алгоритма должны идти именно в таком порядке: например, валидировать > рассчитать > сгенерировать PDF.Гибкие детали — как конкретно вал…

  • суббота, 31 мая 2025 г. в 00:00:08
golang
Функции и методы в Go

Go — язык, который ценится за простоту и чёткость. Однако даже при минимальном синтаксисе здесь есть нюансы. Особенно это касается работы с функциями и методами. В этой небольшой статье хочу поделиться личными наблюдениями и выводами по нескольким ключевым темам: выбор типа получателя, использование именованных параметров результата, распространённые ошибки при возврате nil, проблемы с файлами в качестве входных данных и поведение defer.Получатель значения или указателя?Одна из первых вещей, к…

  • суббота, 31 мая 2025 г. в 00:00:08
javascript
Тестовые идентификаторы: как и где расставлять правильно

ВступлениеВы вообще в курсе, что такое CSS и XPath селекторы? Ну конечно в курсе — раз уж кликнули на эту статью, наверняка пережили хотя бы один из тех унылых споров в духе «а что лучше: CSS или XPath?» Спойлер: ни то, ни другое. Все эти разговоры — просто шум, рожденный из некомпетентности. Вот эти бесконечные обсуждения — «а XPath может по тексту», «а CSS быстрее», «а вот тут индекс нужен»... Да какая, к чёрту, разница, когда можно просто использовать тестовые идентификаторы?Серьёзно. Если у…

  • суббота, 31 мая 2025 г. в 00:00:06