Джонатан Карди написал .NET-библиотеку StackRedis.L1 с открытым исходным кодом, которая позволяет создавать кэш первого уровня для Redis. Иными словами, используя библиотеку StackExchange.Redis в .NET-приложении, вы можете подключить к ней StackRedis.L1 для ускорения работы за счет локального кэширования данных в оперативной памяти. Это позволяет избежать лишних обращений к Redis в тех случаях, когда данные не подвергались изменениям. Библиотека доступна на GitHub и NuGet.
В этой статье рассказывается о том, как и почему она была создана.
Рубрика «redis» - 9
Создание in-memory кэша первого уровня для .NET-клиентов StackExchange.Redis
2016-05-23 в 10:57, admin, рубрики: .net, in-memory, redis, Блог компании Plarium, клиент, Клиентская оптимизация, кэш, оптимизация, Программирование, Серверная оптимизацияКак найти ближайшее кафе, достопримечательность, свободное такси глазами программиста
2016-05-23 в 10:43, admin, рубрики: geo, mongodb, postgresql, redis, Геоинформационные сервисыСервисы, решающие какие-либо задачи в контексте нашего местоположения достаточно прочно вошли в нашу жизнь. Большинство смартфонов может при наличии доступа в интернет вызвать нам такси, рассчитать, через сколько приедет автобус, проложить маршрут с учетом пробок и различных предпочтений пользователя или показать друзей поблизости. Задачки вроде поиска ближайших кафе или достопримечательностей стали для них тривиальны и обычно могут быть решены вообще без доступа ко всемирной паутине. В данной статье я хочу рассмотреть некоторые инструменты для решения подобных задач и сравнить их производительность между собой.
Читать полностью »
Boomstarter в облаке — кто помогает запускать новые проекты?
2016-04-08 в 8:57, admin, рубрики: boomstarter, Microsoft Azure, nginx, open source, postgresql, redis, ruby on rails, Блог компании Microsoft, космос, краудфандингПривет!
Сегодня с нами Руслан Тугушев, основатель компании Boomstarter, уже 3.5 года разрабатывающей краудфандинговую платформу и консультирующей авторов проектов, как привлекать деньги на свои деньги. На момент марта 2016 года проекты привлекли уже больше 210 миллионов рублей, и Руслан рассказывает, как Microsoft Azure поддерживает платформу возможностями уже инфраструктурными. Как раз недавно Бумстартер помог собрать космическому проекту «Маяк» без семи тысяч два миллиона рублей — самый успешный проект о космосе за всю историю Boomstarter! Под катом — подробности.
Немного о сокетах, redis и битых яйцах
2016-04-01 в 13:03, admin, рубрики: AF_INET, AF_UNIX, nosql, redis, системное администрирование, сокеты, метки: AF_INET, AF_UNIX Работать в пятницу после обеда первого апреля не хочется — вдруг ещё техника выкинет какую-нибудь шутку. Потому решил о чем-либо написать.
Не так давно на просторах хабра в одной статье огульно охаяли сразу Unix-сокеты, mysql, php и redis. Говорить обо всём в одной статье не будем, остановимся на сокетах и немного на redis.
Итак вопрос: что быстрее Unix- или TCP-сокеты?
Вопрос который не стоит и выеденного яйца, однако, постоянно муссируемый и писать не стал бы если б не опрос в той самой статье, согласно которому едва-ли не половина респондентов считает, что лучше/надёжнее/стабильнее использовать TCP-сокеты.
Тем, кто и так выбирает AF_UNIX, можно дальше не читать.
Читать полностью »
Dive into Centrifugo
2016-03-30 в 9:59, admin, рубрики: centrifuge, centrifugo, Go, open source, redis, sockjs, WebSocket, Блог компании Mail.Ru Group, Веб-разработка, метки: centrifuge, centrifugo, real-time В предыдущей статье о Центрифуге я рассказывал, что сервер был переписан с Python на Go (код Centrifugo на github, описание на opensource.mail.ru). C тех пор прошло несколько месяцев, за это время Центрифуга успела получить версию 1.0.0 и даже уйти немного дальше (последняя версия на момент этого поста — 1.4.2).
В этой статье нас ждет быстрый старт работы с Центрифугой, примеры реального использования, размышления о месте и предназначении Центрифуги в реалиях 2016 года, описание некоторых архитектурных особенностей/возможностей реал-тайм-сервера и примеры кода на Go, отвечающие за реализацию главных фич. Welcome aboard!
Читать полностью »
Redis — что быстрее, UNIX-сокет или TCP? Что стабильнее? + pconnect
2016-03-26 в 17:45, admin, рубрики: highload, nosql, php, pushall, redis, tcp-socket, unix-socket, Блог компании PushAll, уведомления, метки: pushall
Мы в PushAll обрабатываем несколько тысяч запросов в секунду для получения статистики доставки и открытия уведомлений и для передачи контента оповещений. Обычная БД вроде MySQL не справляется с таким потоком запросов и не может так быстро отвечать.
Стараясь все больше операций перенести на быстрые NoSQL хранилища вроде Redis, мы хотим знать как эффективнее его использовать и не будет ли у нас проблем с большим количеством соединений.
Также для работы мы используем форки PHP и нам было интересно, а как поведет себя Redis, если мы будем делать несколько тысяч соединений в одновременно в нескольких потоках. Мы решили поделиться с сообществом нашими тестами.
Читать полностью »
Мартовские релизы официальных расширений Yii 2.0
2016-03-18 в 22:21, admin, рубрики: apidoc, Bootstrap, codeception, debug, elasticsearch, gii, jqueryui, redis, smarty, swiftmailer, yii, yii frameworkКоманда PHP фреймворка Yii выпустила релизы некоторых официальных расширений.
Расширения были отделены от ядра фреймворка довольно давно, но так как времени на каждый релиз уходило достаточно много, выпускались расширения вместе с релизами фреймворка. Теперь, когда процесс релиза автоматизирован и для расширений, выпускать их по мере надобности будет гораздо проще.
В этот раз вышли обновления для:
- Генератора документации API (yii2-apidoc) 2.0.5, CHANGELOG.
- Bootstrap (yii2-bootstrap) 2.0.6, CHANGELOG.
- Интеграции с Codeception (yii2-codeception) 2.0.5, CHANGELOG.
- Отладочной панели (yii2-debug) 2.0.6, CHANGELOG.
- Elasticsearch (yii2-elasticsearch) 2.0.4, CHANGELOG.
- Генератора кода Gii (yii2-gii) 2.0.5, CHANGELOG.
- jQuery UI (yii2-jui) 2.0.5, CHANGELOG.
- Redis (yii2-redis) 2.0.5, CHANGELOG.
- SwiftMailer (yii2-swiftmailer) 2.0.5, CHANGELOG.
- Smarty (yii2-smarty) 2.0.5, CHANGELOG.
Все эти релизы содержат довольно большое количество как исправлений, так и улучшений. Далее рассмотрим самое интересное.
Читать полностью »
Примеры реализации Pub-Sub: Azure Topics, EventHub, ZeroMQ, microServiceBus, etc
2016-03-01 в 0:17, admin, рубрики: .net, azure, Azure EventHub, azure service bus, Azure Topics, biztalk, microservicebus, Microsoft Azure, node.js, pub/sub, RabbitMQ, redis, Анализ и проектирование систем, Программирование, метки: pub/sub Основная идея Pub-Sub довольно простая: "publish–subscribe is a messaging pattern where senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers, but instead characterize published messages into classes without knowledge of which subscribers, if any, there may be. Similarly, subscribers express interest in one or more classes and only receive messages that are of interest, without knowledge of which publishers, if any, there are." В свободном переводе это может звучать так: "Издатель-подписчик (англ. publisher-subscriber или англ. pub/sub) — поведенческий шаблон проектирования передачи сообщений, в котором отправители сообщений, именуемые издателями (англ. publishers), напрямую не привязаны программным кодом отправки сообщений к подписчикам (англ. subscribers). Вместо этого сообщения делятся на классы и не содержат сведений о своих подписчиках, если таковые есть. Аналогичным образом подписчики имеют дело с одним или несколькими классами сообщений, абстрагируясь от конкретных издателей."
Читать полностью »
Сервисная технология на основе REST + RPC API делаем в турбо режиме
2016-02-08 в 10:22, admin, рубрики: php, redis, rest api, RPC, yii frameworkМы привыкли почему-то разделять REST и RPC, мне кажется это разделение искусственным. Просто REST строже и ограничен в методах, и это не всегда оправдано в сложном приложении.
Сделаем простую основу для написания сервисно-ориентированной архитектуры. Как стек технологий используем славный Yii2, быстрый Nginx и молниеносный Redis. Почему именно так, станет ясно позднее.
Для управления сущностями на примитивном уровне СREATE, UPDATE, DELETE, GET нам вполне достаточно Rest техники которая заложена в Yii2.
Для облегчения работы в сцепке Nginx + Redis, нам придется использовать немного нестандартный подход, то есть полностью передать как параметры: класс, метод и другие нужные параметры. Для валидации этой компании используем наипростейшую форму Yii2 Model (для экономии места проигнорируем code style):
Читать полностью »
nopCommerce CMS на ASP.NET MVC: обзор функционала новой версии
2016-02-05 в 7:35, admin, рубрики: #isvcloudstory, ASP.NET, asp.net mvc, azure, blobs, cms, Microsoft Azure, nopcommerce, redis, Блог компании Microsoft, Веб-разработка, кэшированиеnopCommerce – это движок для создания интернет-магазинов с открытым исходным кодом и написанный на ASP.NET MVC. Разрабатывается проект нашими соотечественниками из города Ярославль, и на сегодняйшний день на его основе работает более 20,000 сайтов, включая такие бренды как Volvo, Turkish Airlines, Reebok.

Несколько дней назад вышла новая версия продукта 3.70, в которой разработчики добавли полную поддержку Windows Azure. В предыдущих версий владельцы магазинов могли использовать только один instance в Azure, теперь же была добавлена поддержка нескольких. Следовательно, по сути этот функционал можно использовать на веб фермах. Это открываем нам отличные возможности для масштабирования приложения.
Предположим, что вы уже скачали (http://www.nopcommerce.com/downloads.aspx) и установили (http://docs.nopcommerce.com/display/nc/Installing+nopCommerce) nopCommerce в Azure. Итак, что же было сделано для поддержки Azure, и как все это настроить и включить:
Читать полностью »