Update README.md
This commit is contained in:
parent
bf45ed0147
commit
2f002e8169
91
README.md
91
README.md
@ -53,7 +53,6 @@
|
||||
</ol>
|
||||
</details>
|
||||
|
||||
|
||||
<!-- ABOUT THE PROJECT -->
|
||||
## О проекте
|
||||
|
||||
@ -84,12 +83,11 @@ Futriix-Мультимодельная СУБД на языке С поддер
|
||||
unix:$ sudo apt install build-essential nasm autotools-dev autoconf libjemalloc-dev tcl tcl-dev uuid-dev libcurl4-openssl-dev git hugepages
|
||||
```
|
||||
|
||||
* Устанавливаем язык программирования Golang по инструкции с [официального сайта](https://go.dev/doc/install)
|
||||
* Устанавливаем язык программирования Golang по инструкции с [официального сайта](https://go.dev/doc/install)
|
||||
|
||||
|
||||
## Компиляция
|
||||
|
||||
|
||||
1. Копируем репозиторий
|
||||
```sh
|
||||
unix:$ git clone https://source.futriix.ru/gvsafronov/Futriix
|
||||
@ -107,56 +105,16 @@ Futriix может быть скомпилирован для следующих
|
||||
|
||||
<p align="right">(<a href="#readme-top">К началу</a>)</p>
|
||||
|
||||
|
||||
## Типовые проблемы
|
||||
|
||||
В данном разделе описаны типовые проблемы, возникающие при эксплуатации субд Futrix.
|
||||
|
||||
|
||||
1. **Описание проблемы:** При запуске инстанса Futriix, появляется следующее сообщение:
|
||||
|
||||
```sh
|
||||
Warning: no config file specified, using the default config. In order to specify a config file use ./futriix-server /path/to/futriix.conf
|
||||
```
|
||||
|
||||
**Решение:**
|
||||
|
||||
При запуске инстанса сервера futriix, указать корректный путь до файла конфигурации, командой ниже:
|
||||
|
||||
```sh
|
||||
unix:$ ./futriix-server /path/to/futriix.conf
|
||||
```
|
||||
|
||||
2. **Описание проблемы:** При запуске инстанса Futriix, появляется следующее сообщение:
|
||||
|
||||
```sh
|
||||
1:12:S 18 Apr 2025 04:47:25.643 # NOTICE: Detuning locks due to high load per core: 97.49%
|
||||
1:12:S 18 Apr 2025 04:47:55.491 # NOTICE: CPU pressure reduced
|
||||
```
|
||||
|
||||
**Решение:**
|
||||
|
||||
Семантика захвата/освобождения не важна для детюнинга. Суть этого сообщения в том, что futriix пытается корректно обработать ситуацию с превышением нагрузки на ЦП. Это штатная ситуация, и она не является ошибкой и не вызывает проблем.
|
||||
|
||||
Futriix использует спинлоки для быстрой синхронизации. Когда нагрузка на ЦП превышает 100% на ядро, ядро может неосознанно предоставить время ЦП заблокированному потоку, который находится в состоянии ожидания, вместо активного потока. Это приводит к значительно большей задержке.
|
||||
|
||||
Когда такая ситуация обнаруживается, Futriix будет крутиться в ожидании меньшего времени, прежде чем приостановить поток. Это приводит к лучшей пропускной способности, когда время ЦП ограничено. Однако «правильным» решением является обеспечение того, чтобы время ЦП не было так ограничено.
|
||||
|
||||
<p align="right">(<a href="#readme-top">К началу</a>)</p>
|
||||
|
||||
|
||||
### Дополнительные параметры компиляции
|
||||
|
||||
Для сборки проекта с поддержкой TLS выпоните команду:
|
||||
|
||||
|
||||
```sh
|
||||
```sh
|
||||
unix:$ make BUILD_TLS=yes
|
||||
```
|
||||
```
|
||||
Для сбоки проекта с поддержкой TLS, в качестве модуля, выполните команду:
|
||||
```sh
|
||||
```sh
|
||||
unix:$ make BUILD_TLS=module
|
||||
```
|
||||
```
|
||||
Для выполнения данной операции вам необходимо библиотека OpenSSL (например,
|
||||
libssl-dev для Debian/Ubuntu).
|
||||
|
||||
@ -164,9 +122,9 @@ libssl-dev для Debian/Ubuntu).
|
||||
|
||||
После компиляции Futriix, рекомендуем запустить утилиту для проверки корректности сборки:
|
||||
|
||||
```sh
|
||||
```sh
|
||||
unix:$ make test
|
||||
```
|
||||
```
|
||||
|
||||
## Исправление проблем сборки с зависимостями или кэшированными параметрами сборки.
|
||||
|
||||
@ -295,6 +253,41 @@ PONG
|
||||
```
|
||||
<p align="right">(<a href="#readme-top">К началу</a>)</p>
|
||||
|
||||
## Типовые проблемы
|
||||
|
||||
В данном разделе описаны типовые проблемы, возникающие при эксплуатации субд Futrix.
|
||||
|
||||
|
||||
1. **Описание проблемы:** При запуске инстанса Futriix, появляется следующее сообщение:
|
||||
|
||||
```sh
|
||||
Warning: no config file specified, using the default config. In order to specify a config file use ./futriix-server /path/to/futriix.conf
|
||||
```
|
||||
|
||||
**Решение:**
|
||||
|
||||
При запуске инстанса сервера futriix, указать корректный путь до файла конфигурации, командой ниже:
|
||||
|
||||
```sh
|
||||
unix:$ ./futriix-server /path/to/futriix.conf
|
||||
```
|
||||
|
||||
2. **Описание проблемы:** При запуске инстанса Futriix, появляется следующее сообщение:
|
||||
|
||||
```sh
|
||||
1:12:S 18 Apr 2025 04:47:25.643 # NOTICE: Detuning locks due to high load per core: 97.49%
|
||||
1:12:S 18 Apr 2025 04:47:55.491 # NOTICE: CPU pressure reduced
|
||||
```
|
||||
|
||||
**Решение:**
|
||||
|
||||
Семантика захвата/освобождения не важна для детюнинга. Суть этого сообщения в том, что futriix пытается корректно обработать ситуацию с превышением нагрузки на ЦП. Это штатная ситуация, и она не является ошибкой и не вызывает проблем.
|
||||
|
||||
Futriix использует спинлоки для быстрой синхронизации. Когда нагрузка на ЦП превышает 100% на ядро, ядро может неосознанно предоставить время ЦП заблокированному потоку, который находится в состоянии ожидания, вместо активного потока. Это приводит к значительно большей задержке.
|
||||
|
||||
Когда такая ситуация обнаруживается, Futriix будет крутиться в ожидании меньшего времени, прежде чем приостановить поток. Это приводит к лучшей пропускной способности, когда время ЦП ограничено. Однако «правильным» решением является обеспечение того, чтобы время ЦП не было так ограничено.
|
||||
|
||||
<p align="right">(<a href="#readme-top">К началу</a>)</p>
|
||||
|
||||
<!-- ROADMAP -->
|
||||
## Дорожная карта
|
||||
|
Loading…
x
Reference in New Issue
Block a user