Как стать автором
Обновить
115
0

Пользователь

Отправить сообщение

KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров12K

На кластерах клиентов, которые мы обслуживаем, есть как «одноголовые» инсталляции Redis (обычно для кэшей, которые не страшно потерять), так и более отказоустойчивые решения — Redis Sentinel или Redis Cluster. По нашему опыту, во всех трех вариантах можно безболезненно переключиться с Redis на KeyDB и получить прирост производительности. Точнее, избавиться от бутылочного горлышка Redis в одно ядро. Хотя в новых версиях Redis(r) появилась обработка I/O в отдельных тредах, иногда этого бывает недостаточно.

В то же время, если мы хотим использовать отказоустойчивые решениями вроде Sentinel и Cluster, нам понадобится поддержка этих технологий на уровне библиотеки, которую приложение использует для подключения в Redis. Причем лишь немногие библиотеки умеют читать из реплик Redis — в обоих вариантах (Sentinel и Cluster) чтение, как правило, происходит с мастеров. И запись, естественно, тоже происходит в мастеры. 

В итоге у нас есть несколько реплик довольно дорогого in-memory-хранилища, а в рабочем процессе используется только часть из них. Остальные — на подхвате. Хотя в большинстве кейсов операции с in-memory NoSQL DB — это именно операции чтения.

Однако если посмотреть в сторону KeyDB, то можно увидеть, что там есть киллер-фича — и даже две: я говорю о режимах Active Replica и Multi-Master. Использование этих режимов позволяет получить распределенный отказоустойчивый KeyDB, совместимый с Redis, писать в любую ноду, читать из любой ноды. И все это с точки зрения приложения выглядит как один экземпляр Redis без всяких Sentinel — то есть в коде приложения ничего менять не придется. 

Звучит как фантастика?

Читать далее
Всего голосов 40: ↑40 и ↓0+40
Комментарии21

Мониторинг межсервисного взаимодействия Kubernetes с помощью протокола NetFlow

Время на прочтение7 мин
Количество просмотров7.5K

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

В идеале хотелось бы иметь какую-то карту взаимодействия сервисов в Kubernetes, которая сама автоматически обновляется. Такую карту можно построить с помощью инструментов типа Istio и Cilium. Но иногда можно обойтись и более простыми решениями — например, NetFlow.

Читать далее тут
Всего голосов 36: ↑35 и ↓1+44
Комментарии8

Наша новая удачная попытка бесшовной замены Redis на KeyDB

Время на прочтение5 мин
Количество просмотров15K

Мы уже как-то рассказывали о базе данных KeyDB — форке Redis, разработка которого началась в 2019 году. Проект распространяется под свободной лицензией BSD, и у него уже почти 6k звезд на GitHub. Авторы в свое время столкнулись с проблемами производительности оригинала и пошли хардкорным путём: взяли всё в свои руки и привнесли много нового как в части многопоточности, так и в других областях.

В статье делимся еще одним положительным опытом замены Redis на KeyDB.

Читать далее
Всего голосов 45: ↑45 и ↓0+45
Комментарии19

Платные подписки — зависимость автоподключения от мобильного устройства

Время на прочтение6 мин
Количество просмотров34K
image

Наверное почти каждый сталкивался с ситуацией, когда мобильный оператор подключал какие-то подписки к вашему номеру телефона, но вы точно были уверены, что ничего не подключали. Да и кто в здравом уме подключит, например, «Гороскоп за 9р/сутки» (280р/мес), когда в интернете полно гороскопов на любой вкус, а иногда 280р — это весь бюджет расходов на мобильную связь в месяц?

Часто люди просто отключают подписку, иногда обращаются к оператору и просят вернуть деньги (с разной степенью успеха).

Но от чего же зависит вероятность того, что вам подключат подписку, которую вы не подключали?
Читать дальше →
Всего голосов 64: ↑63 и ↓1+62
Комментарии139

Яндекс блокирует аккаунты, к которым не привязан номер телефона

Время на прочтение5 мин
Количество просмотров176K
Я наверное как те самые мыши, которые «плакали, кололись, но продолжали жрать кактус». Который раз пытаюсь патриотично пользоваться сервисами Яндекса — и который раз это выходит мне боком.

В этот раз заблокировали доступ к почте под предлогом «подозрения на взлом». А в реальности — потому что при регистрации не указал номер телефона, что вообще-то не возбраняется, но как всегда есть НО…

Небольшой разбор ситуации под катом.
Читать дальше →
Всего голосов 246: ↑234 и ↓12+222
Комментарии733

Доработка модуля шлагбаума Doorhan GSM для управления через интернет

Время на прочтение9 мин
Количество просмотров27K


Недавно было решено установить в многоквартирном доме шлагбаум с управлением через GSM. Причины и необходимость этого решения остаются за рамками статьи, я же хочу написать про то, как «на коленке» сделал интерфейс для управления модулем через Интернет. И даже немного с блэкджеком, управлением базой автомобилей с мобильного телефона и фотографиями моментов въезда с уличной камеры. Возможно кто-то захочет внедрить у себя.

Предупрежу, что в статье не описано готовое решение «из коробки», а скорее proof of concept.
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии22

Билайн, зачем ты лезешь в мой HTTPS?

Время на прочтение3 мин
Количество просмотров104K
Приехал я на выходные на дачу, пожарил шашлычок, натопил баньку, да сел в интернете посидеть немножко. А интернет мой неожиданно стал выглядеть вот так (надеюсь продавец мерса на меня не обидится, но скриншот сохранился вот такой только):

Сначала я грешил на скорость 3G, браузер, ОС и т.д. и т.п., но как оказалось все не то.

А проблема в том, что HTTPS-сайты через 3G модем Билайн вдруг практически перестали открываться. Все уже привыкли к «фокусам» Билайна с вмешательством в HTTP и добавлением своего кода на страницы, со «сливом» данных пользователей для активации платных подписок кликом на сайте и.т.д. А теперь тренировка с HTTPS?
Читать дальше →
Всего голосов 113: ↑110 и ↓3+107
Комментарии133

Оплата на счет Яндекс.Денег картой VISA/MasterCard или как заблокировать произвольный кошелек

Время на прочтение5 мин
Количество просмотров87K


Без малого год назад запустил у себя на сайте прием платежей на счет в Яндекс.Деньгах с банковских карт VISA/MasterCard. Без проблем не обошлось, но, в итоге, все заработало.

Недавно, примерно 9 февраля, на на один из кошельков в Яндекс.Деньгах внезапно перестали приходить переводы, сделанные картой. При этом переводы, сделанные Яндекс.Деньгами продолжали исправно приходить.

В чем причина, кто виноват, и как можно (попробовать) заблокировать любой счет в Яндекс.Деньгах для приема средств через VISA/MasterCard — попробуем разобраться под катом
Читать дальше →
Всего голосов 68: ↑61 и ↓7+54
Комментарии65

Некорректная работа API Яндекс.Денег при приеме платежей картой

Время на прочтение4 мин
Количество просмотров24K
В прошлые выходные раздался звонок мобильного телефона. Номер незнакомый. Снимаю трубку.
На противоположном конце линии девушка сообщает, что она представляет компанию Яндекс, и что мне высылали электронное письмо с информацией о новом сервисе: теперь можно принимать на сайте платежи не только Яндекс.Деньгами, но и банковскими картами VISA/MasterCard с помощью формы от Яндекса. Я ответил, что письмо не получал (может попало в спам?), но информация интересная, и я обязательно подробнее ознакомлюсь с новыми возможностями сервиса.
Читать дальше →
Всего голосов 42: ↑35 и ↓7+28
Комментарии52

Девятилетняя оптимизация маршрутизатора

Время на прочтение16 мин
Количество просмотров42K
Хочу рассказать историю жизни сервера в кампусной сети Новосибирского университета, которая началась в далеком 2004 году, а так же этапы его оптимизации и даунгрейдинга.
Многие вещи в статье покажутся общеизвестными хотя бы по той причине, что речь пойдет о событиях почти десятилетней давности, хотя на тот момент это были передовые технологии. По той же причине кое что вообще потеряло актуальность, но далеко не все, так как сервер до сих пор живет и обслуживает сетку из 1000 машин.
Читать дальше →
Всего голосов 74: ↑74 и ↓0+74
Комментарии22

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность