Иногда при разработке highload-продукта возникает ситуация, когда надо обработать не максимально большое количество запросов, а наоборот — ограничить количество запросов в единицу времени. В нашем случае это количество отправляемых push-уведомлений конечным пользователям. Подробнее об алгоритмах rate limiting, их плюсах и минусах — под катом.
Пользователь
Чиним замедление YouTube на уровне роутера
Всех категорический приветствую. Буквально первого августа, прямо в ночь, стал у меня жутко лагать YouTube. Естественно, мне это сильно не понравилось. Ну, что же, давайте разбираться, почему и как это исправить в условиях моей личной сети.
Что случилось?
Хорошо описано произошедшее здесь, на Хабре. Если совсем кратко, своими словами - во время установки SSL соединения в открытом виде домен передается к которому мы подключаемся(так называемое SNI). И если это googlevideo.com то начинают твориться "интересные вещи". Можно проверить это локально коммандами из статьи.
$ curl https://speedtest.selectel.ru/100MB -o/dev/null
История оптимизации Python сервиса: Маленький шаг для человека, гигантский скачок для сервиса
Привет, Хабр, на связи Okko! У нас одна из самых больших медиатек в России, поэтому мы постоянно работаем над развитием алгоритмов поиска и рекомендаций. Новые фичи тестируются с помощью А/Б тестов. Количество фичей неустанно растет, поэтому было решено создать специальную платформу для проведения экспериментов. Она позволила бы удобно их заводить и настраивать, сплитовать трафик в онлайн-режиме и формировать результаты экспериментов.
Мы — команда разработки платформы экспериментов — посвятим цикл рассказов самому важному и сложному компоненту сервиса — сплитовалке трафика. В этой статье расскажем о небольших по сложности, но больших по значению оптимизациях в коде, которые мы сделали, чтобы разогнать нашу платформу до скорости ракеты 🚀
Векторные базы данных: простым языком про устройство и принцип работы
Только изучили один инструмент, как сразу же появились новые? Придется разбираться! В статье мы рассмотрим новый тип баз данных, который отлично подходит для ML задач. Пройдем путь от простого вектора до целой рекомендательной системы, пробежимся по основным фишкам и внутреннему устройству. Поймем, а где вообще использовать этот инструмент и посмотрим на векторные базы данных в деле.
О взаимосвязи между корутинами, потоками и проблемами параллелизма
«Корутины - это легковесные потоки», сколько раз вы слышали эту формулировку? Она что-нибудь вам говорит? Скорее всего не очень много. Если вы хотите узнать больше о том, как на самом деле корутины выполняются в рантайме Android, как они связаны с потоками, а также о проблемах параллелизма, которые неизбежны при использовании потоковой модели языка программирования Java, то эта статья для вас.
Так что же такое pod в Kubernetes?
Kubernetes — движок оркестровки контейнеров, созданный для запуска контейнеризированных приложений на множестве узлов, которые обычно называют кластером. В этих публикациях мы используем подход системного моделирования с целью улучшить понимание Kubernetes и его нижележащих концепций. Читающим рекомендуется уже иметь базовое представление о Kubernetes.
Pods (Поды) — базовые строительные блоки Kubernetes, однако даже опытные пользователи Kubernetes не всегда могут объяснить, что же это такое.
Данная публикация предлагает лаконичную мысленную модель, которая проливает свет на определяющие характеристики pod'ов Kubernetes. Ради этой краткости пришлось опустить некоторые другие особенности Pod'ов, такие как liveness и readiness probes, разделение ресурсов (включая появившееся недавно namespace sharing — прим. перев.), работу с сетью.
Kotlin, как работает suspend под капотом
Как компилятор Kotlin преобразует suspend код? Что получается в итоге? Разбираемся в машине состояний suspend кода.
Пишем приложение на Mi Band 7 с сервисной частью
Недавно я купил себе Mi band 7, по началу хотел купить 6-ую версию, пока не узнал, что на 7-ой обновилась операционная система и теперь она поддерживает установку приложений. Да, официально они об этом не заявили, но умельцы уже сделали множество приложений. Они ставят их как циферблаты, и это вполне обычные приложения. Но все эти приложения работают только локально на самом MiBand 7, не имея возможности взаимодействовать ни с телефоном, ни с интернетом. Я углубился в байткод приложения и документации по ZeppOS чтобы найти способ создавать приложения, взаимодействующие с интернетом, в этой статье я опишу свой путь. В итоге у меня получилось сделать запрос в интернет с часов и даже запустить мост для отладки приложений.
Архитектура REST
Введение
В русскоязычной части Интернета присутствует большое количество статей, посвященных веб-службам на основе SOAP и XML-RPC, но почему-то почти ничего нет про вполне заслуживающую внимания (но менее распространенную) архитектуру RESТ.
В данной статье описываются основы этой архитектуры, возможности и примеры её использования.
Information
- Rating
- Does not participate
- Location
- Череповец, Вологодская обл., Россия
- Date of birth
- Registered
- Activity