
Futriix
Проект Futriix основан на базе проекта KeyDB
Futriix's (команды futriix по большей части совпадают с командами KeyDB)
Изучить полную документацию
Краткая документация проекта Futriix
О проекте
Rfut - Это модуль, написанный на языке Rust, обеспечивающий создание кластера для субд Futriix. Futriix является резидентной субд, т.е. хранящей свои данные в оперативной памяти, с их периодическим сохранением на внутренний носитель: HDD (жёсткий диск) или SSD-накопитель.
Лицензия
Проект распространяется под 3-пунктной лицензией BSD. Подробнсти смотрите в файле COPYING.txt
.
Основные термины
- База Данных(БД) -массив информация, хранящийся, например, на флешке, в файле, на кластере
- Система Управления Базами Данных(СУБД) - Это программа для внесения изменений в базу данных и поиска по ней
- Резидентная СУБД - субд, хранящая все свои данные в оперативной памяти, с периодическим сохранением на HDD или SSD
- Инстанс - запущенный экземляр базы данных
- Узел (хост,нода) - физический сервер
- Кластер - группа компьютеров, объединённых высокоскоростными каналами связи и представляющая с точки зрения пользователя единый аппаратный ресурс
- Команды, выполняемые с привилегиями суперпользователя (root), отмечены символом приглашения «#»
- Команды, выполняемые с правами обычного пользователя(user), отмечены символом приглашения «$»
- FutBot - интеллектуальный помощник в мессенджере Телеграмм, помогающий осущесвлять быстрый поиск по документации проекта
Подготовка
Для операционных систем семейства Debian выполните следующие шаги:
-
Устанавливаем язык программирования C/C++, соопутствующие утилиты (autoconf и другие)
# apt update # apt upgrade # apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev cmake git hugepages
Для операционных систем семейства Red Hat (Fedora, Aurora) выполните следующие шаги:
-
Устанавливаем язык программирования C/C++, соопутствующие утилиты (autoconf и другие)
# dnf update # dnf install -y jemalloc-devel g++ libuuid-devel libatomic openssl-devel curl-devel cmake git hugepages
-
Устанавливаем язык программирования Golang по инструкции с официального сайта
Для операционной системы Alpine выполните следующие шаги:
-
Устанавливаем язык программирования C/C++, соопутствующие утилиты (autoconf и другие)
# apk update # apk add --no-cache coreutils gcc linux-headers make musl-dev util-linux-dev openssl-dev curl-dev g++ bash git perl libunwind-dev
-
Устанавливаем язык программирования Golang по инструкции с официального сайта
Компиляция
- Копируем репозиторий
$ git clone https://source.futriix.ru/gvsafronov/rfut
- Переходим в каталог с исходном кодом src
$ cd rfut/
- Компилируем Futriix с помощью утилиты Make
$ cargo build
Warning
Rfut также может быть скомпилирован для следующих операционных систем:
Linux
,OSX
,Open Indiana
,FreeBSD
, но сборка для этих операционных систем не проводилась!!!
Вклад
Вклады — это то, что делает сообщество открытого исходного кода таким замечательным местом для обучения, вдохновения и творчества. Любой ваш вклад очень ценится.
Если у вас есть предложение, которое могло бы улучшить ситуацию, создайте форк репозитория и создайте запрос на включение. Также можно просто открыть задачу с тегом «улучшение».
- Форкните проект
- Создайте свою ветку функций (
git checkout -b Feature/AmazingFeature
) - Зафиксируйте свои изменения (git commit -m 'Add some AmazingFeature'`)
- Отправьте в ветку (
git push main Feature/AmazingFeature
) - Откройте запрос на включение
Контакты
Григорий Сафронов - E-mail
Ссылка на Интеллектуальный помощник - FutBot
(К началу)