- сильно оптимизировали работу фреймворка и обогнали основных конкурентов в бенчмарках высокопроизводительных фреймворков;
- значительно упростили конфигурирование;
- обзавелись
install
, докер-образами, Yandex Cloud-образом и DEB-пакетами; - обросли новой функциональностью, включая серверные мидлвари для HTTP, и YDB-драйвером;
- перешли на новую ежемесячную схему релизов и упростили версионирование.
Рубрика «redis» - 2
userver 2.0 — большой релиз фреймворка для IO-bound программ
2024-05-16 в 8:02, admin, рубрики: c++, c++17, coroutine, coroutines, dynamic changes, github, json, logs, mongo, mongodb, mysql, postgres, postgresql, prometheus, prometheus grafana, python, python3, redis, sql, synchronization, userver, yaml, Yandex, ydb, опенсорс яндекса, осьминоги, открытый кодКак компании зарабатывают на опенсорсе, а потом выкидывают его
2024-05-13 в 9:00, admin, рубрики: amazon, apache 2.0, Berkeley Software Distribution, BSD, bsl, Business Source License, elasticsearch, hashicorp, KeyDB, Mozilla Public License, mpl, opensearch, OpenTF, opentofu, Redict, redis, Redis Enterprise Cloud, ruvds_статьи, Server Side Public License, SSPL, terraform, Valkey
Эти компании сначала при помощи сообщества разрабатывают опенсорсный софт или берут готовый, строят на нём прибыльный бизнес, зарабатывают миллионы. А потом меняют лицензию, оставляя контрибуторов, пользователей и партнёров в недоумении, что им делать. Такова бизнес-модель некоторых современных компаний вроде Redis Labs.
Но ещё хуже поступают крупные облачные провайдеры. Они просто используют готовые решения, вообще не занимаясь разработкой и убивая бизнес «паразитов», описанных выше. Здесь вообще паразиты в квадрате.
И весь этот террариум кормится опенсорсом.
Читать полностью »
Домашний кластер разработчика
2024-02-13 в 7:01, admin, рубрики: cluster, db, docker, docker-compose, mariadb, minio, redis, s3, stack, ЛанитСколько проектов можно разрабатывать одновременно? Вопрос звучит неоднозначно. С одной стороны, на процесс влияет человеческий фактор, с другой – технические ограничения.
Если в работе используется Docker, то запуск нескольких проектов одновременно может превратиться в жонглирование контейнерами. Под таким словосочетанием я имею в виду постоянное отключение и подключение контейнеров, изменения портов, чтобы не было конфликтов, а также имена контейнеров, потому что внутри контейнера иногда необходимо выполнить скрипты.
userver 1.0 — релиз фреймворка для IO-bound программ
2023-09-21 в 9:00, admin, рубрики: c++, c++17, coroutine, coroutines, dynamic changes, github, json, logs, mongo, mongodb, mysql, postgres, postgresql, prometheus, prometheus grafana, python, python3, redis, sql, synchronization, userver, yaml, Yandex, открытый кодПоэтому мы вышли из беты и сделали релиз!
Что нового в релизе? Зачем вообще нужен userver и какие существуют технологии для обеспечения надёжной работы серверных приложений? Можно ли воспользоваться крутыми C++ классами из userver, не используя при этом корутины? Какие дальнейшие планы? Ответы на все эти вопросы ждут вас под катом.
Читать полностью »
KeyDB и Redis: в поисках серебряной пули — in-memory replicated DB (Replicated IMDB)
2023-07-21 в 8:24, admin, рубрики: devops, KeyDB, kuber, kubernetes, node.js, nosql, redis, Администрирование баз данных, базы данных, Блог компании Флант, хранилище данныхНа кластерах клиентов, которые мы обслуживаем, есть как «одноголовые» инсталляции Redis (обычно для кэшей, которые не страшно потерять), так и более отказоустойчивые решения — Redis Sentinel или Redis Cluster. По нашему опыту, во всех трех вариантах можно безболезненно переключиться с Redis на KeyDB и получить прирост производительности. Точнее, избавиться от бутылочного горлышка Redis в одно ядро. Хотя в новых версиях Redis(r) появилась обработка I/O в отдельных тредах, иногда этого бывает недостаточно.
Lua: маленький язык, который смог
2023-05-29 в 19:27, admin, рубрики: Lua, redis, для души, для начинающих, изучение языков, Программирование, разработка, Софт, языки программированияLua — это, пожалуй, мой любимый "маленький язык", с низкой когнитивной нагрузкой и простотой в изучении и использовании. Он встроен во многое ПО, такое как Redis, NGINX через OpenResty и Wireshark (прим. перевод.: и многие другие). Он также используется в качестве скриптового языка в таких играх, как World of Warcraft и Roblox через Luau (прим. перевод.: Читать полностью »
Наша новая удачная попытка бесшовной замены Redis на KeyDB
2022-11-25 в 6:20, admin, рубрики: devops, KeyDB, kubernetes, redis, Администрирование баз данных, Блог компании ФлантМы уже как-то рассказывали о базе данных KeyDB — форке Redis, разработка которого началась в 2019 году. Проект распространяется под свободной лицензией BSD, и у него уже почти 6k звезд на GitHub. Авторы в свое время столкнулись с проблемами производительности оригинала и пошли хардкорным путём: взяли всё в свои руки и привнесли много нового как в части многопоточности, так и в других областях.
В статье делимся еще одним положительным опытом замены Redis на KeyDB.
Разбираемся с Redis
2022-09-05 в 9:25, admin, рубрики: redis, Администрирование баз данных, Блог компании Wunder Fund, разработка, Разработка веб-сайтов, хранение данныхЭтот материал представляет собой глубокое исследование всего, что связано с Redis. В частности — речь пойдёт о различных способах организации хранилищ Redis, о постоянном хранении данных, о форках процессов.

Что такое Redis?
Redis (Remote Dictionary Service) — это опенсорсный сервер баз данных типа ключ-значение.
Использование Redis для работы с геоданными
2022-07-30 в 12:36, admin, рубрики: data engineering, geospatial, nosql, redis, web, геоданные, геопозиция, хранение данных, хранилища данныхРабота с геопространственными данными заведомо сложная задача, хотя бы потому что широта и долгота это числа с плавающей запятой и они должны быть очень высокоточными. К тому же, казалось бы, широта и долгота могут быть представлены в виде сетки, но на самом деле нет, не могут, просто потому что Земля не плоская, а математика - это сложная наука.
Например, чтобы определить расстояние большого круга между двумя точками сферы, исходя из их широты и долготы используется формула гаверсинуса, которая выглядит так:
Яндекс выложил в опенсорс бету фреймворка userver
2022-07-29 в 7:55, admin, рубрики: c++, c++17, coroutine, coroutines, dynamic changes, github, json, logs, mongo, mongodb, open source, postgres, postgresql, python, python3, redis, sql, synchronization, userver, yaml, Yandex, Блог компании Яндекс, высокая производительность, открытый кодuserver позволяет быстро создавать эффективные микросервисы на языке C++ и уже много лет активно используется в Яндекс Go, Еде, Лавке, Доставке, Маркете, финтехе и других проектах. Вот из каких требований мы исходили в процессе разработки:
- Простота. Стажёр или студент, приходя к нам, может уже через неделю написать и отправить в продакшен новый микросервис.
- Надёжность. Многие ошибки, в том числе и связанные с многопоточностью, можно поймать на этапе компиляции. Кроме того, фреймворк даёт подсказки по исправлению проблем.
- Полнота. В userver есть всё необходимое для тестирования, работы с разными базами данных, кеширования, логирования, трейсинга, распределённых блокировок, работы с JSON, BSON, YAML, изменения параметров сервиса на лету и так далее.
Сейчас я расскажу о том, как возникла идея userver, как фреймворк развивался, в каких задачах его сейчас используют и почему именно выход в опенсорс был логичным следующим шагом. А затем приведу пример написания нового микросервиса.
Читать полностью »