redis README

The project's README from github.com/tporadowski/redis. As one markdown file: README.md.

Redis 5.0.14 for Windows

You can find the release of Redis 5.0.14 for Windows on releases page. Please test it and report any issues, thanks in advance!

Redis 4.0.14 for Windows

You can find the release of Redis 4.0.14 for Windows on releases page. Please test it and report any issues, thanks in advance!

DISCLAIMER

At the moment win-4.0.14 branch provides a stable port of Redis 4.0.14 for Windows x64 and win-5.0 branch provides a stable port of Redis 5.0.14 for Windows x64, both merged with archived port of win-3.2.100 version from MS Open Tech team. Since the latter is no longer maintained - the sources were merged by hand, projects updated to Visual Studio 2019 (v16.2.5) and any findings (mostly via unit tests) were fixed.

You can find the original description of what this fork provides, how it evolved, what are its requirements, etc. on Wiki: https://github.com/tporadowski/redis/wiki/Old-MSOpenTech-redis-README.md

Building from source code

In order to build this project from source code you need to have:

  1. Visual Studio 2019 (i.e. Community Edition, version 16.2.5 or newer) with "C/C++ features" enabled,
  2. Windows SDK 10,
  3. Git Bash for Windows or Cygwin with Git - after cloning this repository you need to run src/mkreleasehdr.sh script that creates src/release.h with some information taken from Git; optionally you can create that file by hand.

Dependencies

This project depends on jemalloc memory allocator, which is slightly customized in regard to calls to VirtualAlloc and VirtualFree WinAPI functions. They are being replaced with calls to AllocHeapBlock/PurgePages and FreeHeapBlock from src/Win32_Interop/Win32_QFork.cpp in order to keep track which memory regions are to be made available to child processes (for saving RDB/AOF).

Changes to jemalloc that provide those customizations are being maintained in tporadowski/jemalloc repository and are copied over to deps/jemalloc.

redis (tporadowski/redis)

Searching Database…

10.3K ·GitHub
Что это такое?Это неофициальная нативная сборка Redis для Windows x64. Redis — это размещаемая в памяти key-value база данных с сохранением на диск, а этот проект пересобирает её так, чтобы она работала как полноценная программа для Windows.
Это настоящий сервер Redis или какая-то обёртка?Это настоящий сервер Redis, портированный нативно. Вы получаете привычную key-value модель со Strings, Lists, Sets, Sorted Sets, Hashes, Streams и HyperLogLogs — всё хранится в памяти и сохраняется на диск.
Как установить его на Windows?Скачайте готовую сборку со страницы релизов — Redis 5.0.14 или 4.0.14 для Windows x64; там они выложены в виде MSI-установщиков, которые можно запустить напрямую.
Это официальный порт от Microsoft или команды Redis?Нет — порт неофициальный. Он продолжает архивный порт win-3.2.100 от MS Open Tech: исходники были вручную объединены, проекты обновлены до Visual Studio 2019, а найденные проблемы (в основном через юнит-тесты) исправлены.
Есть ли 32-битные сборки, или только x64?Стабильные ветки — это порты для Windows x64: опубликованные релизы Redis 4.0.14 и 5.0.14 собраны именно под x64.
Как автору удалось заставить Redis, написанный на C, нативно работать на Windows?Помимо обновления кода до проектов Visual Studio 2019, в порт входит доработанный аллокатор jemalloc: вызовы Windows VirtualAlloc/VirtualFree заменены на вспомогательные функции AllocHeapBlock/PurgePages и FreeHeapBlock, чтобы порт мог отслеживать, какие области памяти становятся доступными дочерним процессам при сохранении RDB/AOF файлов. Эти изменения jemalloc ведутся в отдельном репозитории и копируются в deps/jemalloc.
Насколько это стабильно — можно положиться?Ветви win-4.0.14 и win-5.0 помечены как стабильные порты, но автор всё равно просит пользователей тестировать релизы и сообщать о проблемах, так что относитесь к этому как к порту, который поддерживает сообщество, и проверяйте его на своей реальной нагрузке.
What are similar projects?redis, dragonfly, dicedb, phpredis, valkey, etcd, redisson, garnet
Size
321.8 MB
Stars
10.3K
Age
8y
Commits · 90 Days