ПредишенСледващото

За информация как да инсталирате Redis на Linux като сървър и достъп до него чрез Unix.socket

От Ruta правя
защитен режим / ЮЕсАр / SRC / преразпределяне
CD / ЮЕсАр / SRC / преразпределяне

Ако тестовете са нормални (трябва да бъде написано нещо като това: "! \ O / Всички тестове минаха без грешки"), а след това се движат по

СрН. /redis-2.4.4.tar.gz ./redis-2.4.4.tar.gz

кп SRC / преразпределяне-сървър / ЮЕсАр / местни / хамбар /
кп SRC / преразпределяне-CLI / ЮЕсАр / местни / хамбар /

защитен режим / и т.н. / преразпределяне
защитен режим / Var / преразпределяне

В непосредствена близост до кея е поканен да "ПС UTILS / redis_init_script /etc/init.d/redis_6379", където 6379 - номерът на порта по подразбиране, но аз съм планирал, че Redis ще работи за мен чрез unix.socket,
Ето защо, било то (навсякъде по-долу на пръстите има по същата причина):

ср UTILS / redis_init_script /etc/init.d/redis_0

Сега трябва да редактирате конфигурационния файл:
нано /etc/init.d/redis_0

Всъщност, това е предмет само на редактирането номера на порта (6 низ):
REDISPORT = 6,379 -> REDISPORT = 0
Ако номера на порта не се променя, след което да редактирате и не е необходимо нищо.

Но в моя случай, тъй като аз възнамеряват да се кандидатират репички през UNIX контакт. тя трябва да направи няколко промени:
Добавяне на променлива
UNIXSOCK = / TMP / redis.sock
и изразът "$ CLIEXEC -p $ REDISPORT изключване" в раздела на "стоп" се заменя с "$ CLIEXEC -s $ UNIXSOCK изключване"


Ето какво се случи:

След това, ние трябва да копирате конфигурационния файл:
кп redis.conf /etc/redis/0.conf
И го редактирате:
нано /etc/redis/0.conf
Той се променя, както следва:

#daemonize не
daemonize да

#pidfile /var/run/redis.pid
pidfile /var/run/redis_0.pid

#port 6379
порт 0

За мен, като като не е важно, но само в случай, raskomentil линия
свързват 127.0.0.1

също raskomentil
unixsocket /tmp/redis.sock
unixsocketperm 755

#loglevel многословно
предупреждение loglevel

#logfile стандартния изход
лог /var/log/redis_0.log

#databases 16
бази данни 1

В "SNAPSHOTTING" на раздел можете да промените стратегията на сметището. Направих така:

спести 54 000 10
запишете 3600 5000

реж / Var / преразпределяне / сметища /
dbfilename dump_0.rdb

От мрежата, за да гледате моите репички не, тогава трябва да го репликира с увреждания (раздел "REPLICATION"):

# Slave обслужен-остарелите данни да
роб обслужен-остарелите данни не

Освен това, тъй като, както е посочено в довереник, аз да се съблича репичките не са толкова първичната база данни, и като кеш, е необходимо да се установи maxmemory, които биха репички избегне излапа всички паметта:
# 256 MB
maxmemory 268435456

От инсталиран maxmemory, трябва да инсталирате и maxmemory-политика

# Maxmemory-политика летлив-LRU
maxmemory-политика летлив-TTL

Летливи-TTL избран, защото те не знаят как алгоритъма LRU

Изключването appendfsync
appendfsync не

Всичко това се променя в Config завършена.
За трупи са посочили директорията / реактивна / Redis / сметища. Не трябва да забравяме, да се създаде:

Проверете дали всичко работи. Можете да проверите това, както следва:
стартирането
/etc/init.d/redis_0 старт
след това
преразпределяне-CLI -s /tmp/redis.sock
преразпределяне 127.0.0.1:6379> SET key1 "Тест"
добре
преразпределя 127.0.0.1:6379> GET key1
"Тест"
преразпределяне 127.0.0.1:6379>

Ако всичко върви добре, след това добавете към стартиране:

актуализация-rc.d redis_0 подразбиране

Както вече подготвени за измерване, така че тя няма да зареже на вашия диск, а след това аз го пренебрегнете.
Като цяло, аз виждам решението, както следва:
В /etc/sysctl.conf естествено не правят нищо, но /etc/init.d/redis_0
В началото на секцията, преди да започне репички поддържат ценностна система overcommit_memory
докосване / TMP / overcommit_memory_bfr_redis
коригират 0600 / ТМР / overcommit_memory_bfr_redis
котка / ргос / сис / VM / overcommit_memory> / TMP / overcommit_memory_bfr_redis
Sysctl vm.overcommit_memory = 1
И в раздела за стоп, връщане на стойността на системата:
OCMSYS = $ (котка / TMP / overcommit_memory_bfr_redis)
Sysctl vm.overcommit_memory = $ OCMSYS


PPS overcommit_memory засегне разпределението на паметта на ядрото и да работим OOM Killer. vm.overcommit_memory = 0 - по-сигурен вариант от кой знае някой grohnet OOM Killer, ако паметта ще свърши.
ПЧП Ако TCP сокет доволни, и само трябва да се (може би зададете порт), а след това в директорията на Utils източници имат install_server.sh скрипт, стартирането на които ще направим най-мръсната работа, описана по-горе.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!