chg: Use UNIX sockets instead of local TCP
parent
c2b92c56eb
commit
8180d1e0f3
|
@ -2,18 +2,17 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from redis import Redis
|
|
||||||
from redis import StrictRedis
|
from redis import StrictRedis
|
||||||
from .libs.helpers import shutdown_requested, set_running, unset_running
|
from .libs.helpers import shutdown_requested, set_running, unset_running, get_socket_path
|
||||||
|
|
||||||
|
|
||||||
class DatabaseInsert():
|
class DatabaseInsert():
|
||||||
|
|
||||||
def __init__(self, loglevel: int=logging.DEBUG):
|
def __init__(self, loglevel: int=logging.DEBUG):
|
||||||
self.__init_logger(loglevel)
|
self.__init_logger(loglevel)
|
||||||
self.ardb_storage = StrictRedis(host='localhost', port=16579, decode_responses=True)
|
self.ardb_storage = StrictRedis(unix_socket_path=get_socket_path('storage'), decode_responses=True)
|
||||||
self.redis_sanitized = Redis(host='localhost', port=6580, db=0, decode_responses=True)
|
self.redis_sanitized = StrictRedis(unix_socket_path=get_socket_path('prepare'), db=0, decode_responses=True)
|
||||||
self.ris_cache = Redis(host='localhost', port=6581, db=0, decode_responses=True)
|
self.ris_cache = StrictRedis(unix_socket_path=get_socket_path('ris'), db=0, decode_responses=True)
|
||||||
self.logger.debug('Starting import')
|
self.logger.debug('Starting import')
|
||||||
|
|
||||||
def __init_logger(self, loglevel):
|
def __init_logger(self, loglevel):
|
||||||
|
|
|
@ -37,23 +37,43 @@ def safe_create_dir(to_create: Path):
|
||||||
|
|
||||||
|
|
||||||
def set_running(name: str):
|
def set_running(name: str):
|
||||||
r = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
r = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
r.hset('running', name, 1)
|
r.hset('running', name, 1)
|
||||||
|
|
||||||
|
|
||||||
def unset_running(name: str):
|
def unset_running(name: str):
|
||||||
r = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
r = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
r.hdel('running', name)
|
r.hdel('running', name)
|
||||||
|
|
||||||
|
|
||||||
def is_running():
|
def is_running():
|
||||||
r = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
r = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
return r.hgetall('running')
|
return r.hgetall('running')
|
||||||
|
|
||||||
|
|
||||||
|
def get_socket_path(name: str):
|
||||||
|
mapping = {
|
||||||
|
'ris': Path('cache', 'ris.sock'),
|
||||||
|
'prefixes': Path('cache', 'prefixes.sock'),
|
||||||
|
'storage': Path('storage', 'storage.sock'),
|
||||||
|
'intake': Path('temp', 'intake.sock'),
|
||||||
|
'prepare': Path('temp', 'prepare.sock'),
|
||||||
|
}
|
||||||
|
return str(get_homedir() / mapping[name])
|
||||||
|
|
||||||
|
|
||||||
|
def check_running(name: str):
|
||||||
|
socket_path = get_socket_path(name)
|
||||||
|
try:
|
||||||
|
r = StrictRedis(unix_socket_path=socket_path)
|
||||||
|
return r.ping()
|
||||||
|
except ConnectionError:
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
def shutdown_requested():
|
def shutdown_requested():
|
||||||
try:
|
try:
|
||||||
r = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
r = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
return r.exists('shutdown')
|
return r.exists('shutdown')
|
||||||
except ConnectionRefusedError:
|
except ConnectionRefusedError:
|
||||||
return True
|
return True
|
||||||
|
|
|
@ -2,17 +2,18 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from redis import StrictRedis
|
from redis import StrictRedis
|
||||||
|
from .libs.helpers import get_socket_path
|
||||||
|
|
||||||
|
|
||||||
class Monitor():
|
class Monitor():
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.intake = StrictRedis(host='localhost', port=6579, db=0, decode_responses=True)
|
self.intake = StrictRedis(unix_socket_path=get_socket_path('intake'), db=0, decode_responses=True)
|
||||||
self.sanitize = StrictRedis(host='localhost', port=6580, db=0, decode_responses=True)
|
self.sanitize = StrictRedis(unix_socket_path=get_socket_path('prepare'), db=0, decode_responses=True)
|
||||||
self.ris_cache = StrictRedis(host='localhost', port=6581, db=0, decode_responses=True)
|
self.ris_cache = StrictRedis(unix_socket_path=get_socket_path('ris'), db=0, decode_responses=True)
|
||||||
self.prefix_cache = StrictRedis(host='localhost', port=6582, db=0, decode_responses=True)
|
self.prefix_cache = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=0, decode_responses=True)
|
||||||
self.running = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
self.running = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
self.storage = StrictRedis(host='localhost', port=16579, decode_responses=True)
|
self.storage = StrictRedis(unix_socket_path=get_socket_path('storage'), decode_responses=True)
|
||||||
|
|
||||||
def get_runinng(self):
|
def get_runinng(self):
|
||||||
return self.running.hgetall('running')
|
return self.running.hgetall('running')
|
||||||
|
|
|
@ -6,7 +6,7 @@ from pathlib import Path
|
||||||
import logging
|
import logging
|
||||||
import json
|
import json
|
||||||
import re
|
import re
|
||||||
from redis import Redis
|
from redis import StrictRedis
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
import importlib
|
import importlib
|
||||||
|
@ -14,7 +14,7 @@ import importlib
|
||||||
from typing import List
|
from typing import List
|
||||||
import types
|
import types
|
||||||
|
|
||||||
from .libs.helpers import safe_create_dir, set_running, unset_running
|
from .libs.helpers import safe_create_dir, set_running, unset_running, get_socket_path
|
||||||
|
|
||||||
|
|
||||||
class RawFilesParser():
|
class RawFilesParser():
|
||||||
|
@ -31,7 +31,7 @@ class RawFilesParser():
|
||||||
self.directory = storage_directory / self.vendor / self.listname
|
self.directory = storage_directory / self.vendor / self.listname
|
||||||
safe_create_dir(self.directory)
|
safe_create_dir(self.directory)
|
||||||
self.__init_logger(loglevel)
|
self.__init_logger(loglevel)
|
||||||
self.redis_intake = Redis(host='localhost', port=6579, db=0)
|
self.redis_intake = StrictRedis(unix_socket_path=get_socket_path('intake'), db=0)
|
||||||
self.logger.debug('Starting intake on {}'.format(self.source))
|
self.logger.debug('Starting intake on {}'.format(self.source))
|
||||||
|
|
||||||
def __init_logger(self, loglevel):
|
def __init_logger(self, loglevel):
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from redis import Redis
|
from redis import StrictRedis
|
||||||
from ipaddress import ip_network
|
from ipaddress import ip_network
|
||||||
import requests
|
import requests
|
||||||
import gzip
|
import gzip
|
||||||
|
@ -10,7 +10,7 @@ from io import BytesIO
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
import re
|
import re
|
||||||
import time
|
import time
|
||||||
from .libs.helpers import set_running, unset_running
|
from .libs.helpers import set_running, unset_running, get_socket_path
|
||||||
|
|
||||||
|
|
||||||
# Dataset source: Routeviews Prefix to AS mappings Dataset for IPv4 and IPv6
|
# Dataset source: Routeviews Prefix to AS mappings Dataset for IPv4 and IPv6
|
||||||
|
@ -21,7 +21,7 @@ class PrefixDatabase():
|
||||||
|
|
||||||
def __init__(self, loglevel: int=logging.DEBUG):
|
def __init__(self, loglevel: int=logging.DEBUG):
|
||||||
self.__init_logger(loglevel)
|
self.__init_logger(loglevel)
|
||||||
self.prefix_cache = Redis(host='localhost', port=6582, db=0, decode_responses=True)
|
self.prefix_cache = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=0, decode_responses=True)
|
||||||
self.ipv6_url = 'http://data.caida.org/datasets/routing/routeviews6-prefix2as/{}'
|
self.ipv6_url = 'http://data.caida.org/datasets/routing/routeviews6-prefix2as/{}'
|
||||||
self.ipv4_url = 'http://data.caida.org/datasets/routing/routeviews-prefix2as/{}'
|
self.ipv4_url = 'http://data.caida.org/datasets/routing/routeviews-prefix2as/{}'
|
||||||
|
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
from redis import Redis
|
from redis import StrictRedis
|
||||||
|
|
||||||
import time
|
import time
|
||||||
import pytricia
|
import pytricia
|
||||||
import ipaddress
|
import ipaddress
|
||||||
from .libs.helpers import shutdown_requested, set_running, unset_running
|
from .libs.helpers import shutdown_requested, set_running, unset_running, get_socket_path
|
||||||
|
|
||||||
|
|
||||||
class RISPrefixLookup():
|
class RISPrefixLookup():
|
||||||
|
@ -15,8 +15,8 @@ class RISPrefixLookup():
|
||||||
def __init__(self, loglevel: int=logging.DEBUG):
|
def __init__(self, loglevel: int=logging.DEBUG):
|
||||||
self.__init_logger(loglevel)
|
self.__init_logger(loglevel)
|
||||||
self.logger.info('Starting RIS Prefix fetcher')
|
self.logger.info('Starting RIS Prefix fetcher')
|
||||||
self.prefix_db = Redis(host='localhost', port=6582, db=0, decode_responses=True)
|
self.prefix_db = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=0, decode_responses=True)
|
||||||
self.longest_prefix_matching = Redis(host='localhost', port=6581, db=0, decode_responses=True)
|
self.longest_prefix_matching = StrictRedis(unix_socket_path=get_socket_path('ris'), db=0, decode_responses=True)
|
||||||
self.tree_v4 = pytricia.PyTricia()
|
self.tree_v4 = pytricia.PyTricia()
|
||||||
self.tree_v6 = pytricia.PyTricia(128)
|
self.tree_v6 = pytricia.PyTricia(128)
|
||||||
self.init_tree()
|
self.init_tree()
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
from dateutil import parser
|
from dateutil import parser
|
||||||
import logging
|
import logging
|
||||||
from redis import StrictRedis
|
from redis import StrictRedis
|
||||||
from .libs.helpers import shutdown_requested, set_running, unset_running
|
from .libs.helpers import shutdown_requested, set_running, unset_running, get_socket_path
|
||||||
|
|
||||||
import ipaddress
|
import ipaddress
|
||||||
|
|
||||||
|
@ -13,9 +13,9 @@ class Sanitizer():
|
||||||
|
|
||||||
def __init__(self, loglevel: int=logging.DEBUG):
|
def __init__(self, loglevel: int=logging.DEBUG):
|
||||||
self.__init_logger(loglevel)
|
self.__init_logger(loglevel)
|
||||||
self.redis_intake = StrictRedis(host='localhost', port=6579, db=0, decode_responses=True)
|
self.redis_intake = StrictRedis(unix_socket_path=get_socket_path('intake'), db=0, decode_responses=True)
|
||||||
self.redis_sanitized = StrictRedis(host='localhost', port=6580, db=0, decode_responses=True)
|
self.redis_sanitized = StrictRedis(unix_socket_path=get_socket_path('prepare'), db=0, decode_responses=True)
|
||||||
self.ris_cache = StrictRedis(host='localhost', port=6581, db=0, decode_responses=True)
|
self.ris_cache = StrictRedis(unix_socket_path=get_socket_path('ris'), db=0, decode_responses=True)
|
||||||
self.logger.debug('Starting import')
|
self.logger.debug('Starting import')
|
||||||
|
|
||||||
def __init_logger(self, loglevel):
|
def __init_logger(self, loglevel):
|
||||||
|
|
|
@ -1,12 +1,10 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from bgpranking.libs.helpers import get_homedir
|
from bgpranking.libs.helpers import get_homedir, check_running
|
||||||
from subprocess import Popen
|
from subprocess import Popen
|
||||||
import time
|
import time
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from redis import Redis
|
|
||||||
from redis.exceptions import ConnectionError
|
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
|
@ -14,7 +12,7 @@ import argparse
|
||||||
def launch_cache(storage_directory: Path=None):
|
def launch_cache(storage_directory: Path=None):
|
||||||
if not storage_directory:
|
if not storage_directory:
|
||||||
storage_directory = get_homedir()
|
storage_directory = get_homedir()
|
||||||
if not check_running('127.0.0.1', 6581) and not check_running('127.0.0.1', 6582):
|
if not check_running('ris') and not check_running('prefixes'):
|
||||||
Popen(["./run_redis.sh"], cwd=(storage_directory / 'cache'))
|
Popen(["./run_redis.sh"], cwd=(storage_directory / 'cache'))
|
||||||
|
|
||||||
|
|
||||||
|
@ -27,7 +25,7 @@ def shutdown_cache(storage_directory: Path=None):
|
||||||
def launch_temp(storage_directory: Path=None):
|
def launch_temp(storage_directory: Path=None):
|
||||||
if not storage_directory:
|
if not storage_directory:
|
||||||
storage_directory = get_homedir()
|
storage_directory = get_homedir()
|
||||||
if not check_running('127.0.0.1', 6579) and not check_running('127.0.0.1', 6580):
|
if not check_running('intake') and not check_running('prepare'):
|
||||||
Popen(["./run_redis.sh"], cwd=(storage_directory / 'temp'))
|
Popen(["./run_redis.sh"], cwd=(storage_directory / 'temp'))
|
||||||
|
|
||||||
|
|
||||||
|
@ -40,7 +38,7 @@ def shutdown_temp(storage_directory: Path=None):
|
||||||
def launch_storage(storage_directory: Path=None):
|
def launch_storage(storage_directory: Path=None):
|
||||||
if not storage_directory:
|
if not storage_directory:
|
||||||
storage_directory = get_homedir()
|
storage_directory = get_homedir()
|
||||||
if not check_running('127.0.0.1', 16579):
|
if not check_running('storage'):
|
||||||
Popen(["./run_ardb.sh"], cwd=(storage_directory / 'storage'))
|
Popen(["./run_ardb.sh"], cwd=(storage_directory / 'storage'))
|
||||||
|
|
||||||
|
|
||||||
|
@ -50,14 +48,6 @@ def shutdown_storage(storage_directory: Path=None):
|
||||||
Popen(["./shutdown_ardb.sh"], cwd=(storage_directory / 'storage'))
|
Popen(["./shutdown_ardb.sh"], cwd=(storage_directory / 'storage'))
|
||||||
|
|
||||||
|
|
||||||
def check_running(host, port):
|
|
||||||
try:
|
|
||||||
r = Redis(host=host, port=port)
|
|
||||||
return r.ping()
|
|
||||||
except ConnectionError:
|
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
def launch_all():
|
def launch_all():
|
||||||
launch_cache()
|
launch_cache()
|
||||||
launch_temp()
|
launch_temp()
|
||||||
|
@ -65,26 +55,25 @@ def launch_all():
|
||||||
|
|
||||||
|
|
||||||
def check_all(stop=False):
|
def check_all(stop=False):
|
||||||
backends = [['127.0.0.1', 6579, False], ['127.0.0.1', 6580, False],
|
backends = [['ris', False], ['prefixes', False], ['storage', False],
|
||||||
['127.0.0.1', 6581, False], ['127.0.0.1', 6582, False],
|
['intake', False], ['prepare', False]]
|
||||||
['127.0.0.1', 16579, False]]
|
|
||||||
while True:
|
while True:
|
||||||
for b in backends:
|
for b in backends:
|
||||||
try:
|
try:
|
||||||
b[2] = check_running(b[0], b[1])
|
b[1] = check_running(b[0])
|
||||||
except Exception:
|
except Exception:
|
||||||
b[2] = False
|
b[1] = False
|
||||||
if stop:
|
if stop:
|
||||||
if not any(b[2] for b in backends):
|
if not any(b[1] for b in backends):
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
if all(b[2] for b in backends):
|
if all(b[1] for b in backends):
|
||||||
break
|
break
|
||||||
for b in backends:
|
for b in backends:
|
||||||
if not stop and not b[2]:
|
if not stop and not b[1]:
|
||||||
print('Waiting on {}:{}'.format(b[0], b[1]))
|
print('Waiting on {}'.format(b[0]))
|
||||||
if stop and b[2]:
|
if stop and b[1]:
|
||||||
print('Waiting on {}:{}'.format(b[0], b[1]))
|
print('Waiting on {}'.format(b[0]))
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from bgpranking.libs.helpers import is_running
|
from bgpranking.libs.helpers import is_running, get_socket_path
|
||||||
import time
|
import time
|
||||||
from redis import StrictRedis
|
from redis import StrictRedis
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
r = StrictRedis(host='localhost', port=6582, db=1, decode_responses=True)
|
r = StrictRedis(unix_socket_path=get_socket_path('prefixes'), db=1, decode_responses=True)
|
||||||
r.set('shutdown', 1)
|
r.set('shutdown', 1)
|
||||||
while True:
|
while True:
|
||||||
running = is_running()
|
running = is_running()
|
||||||
|
|
|
@ -89,7 +89,7 @@ protected-mode yes
|
||||||
|
|
||||||
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
||||||
# If port 0 is specified Redis will not listen on a TCP socket.
|
# If port 0 is specified Redis will not listen on a TCP socket.
|
||||||
port 6582
|
port 0
|
||||||
|
|
||||||
# TCP listen() backlog.
|
# TCP listen() backlog.
|
||||||
#
|
#
|
||||||
|
@ -106,8 +106,8 @@ tcp-backlog 511
|
||||||
# incoming connections. There is no default, so Redis will not listen
|
# incoming connections. There is no default, so Redis will not listen
|
||||||
# on a unix socket when not specified.
|
# on a unix socket when not specified.
|
||||||
#
|
#
|
||||||
# unixsocket /tmp/redis.sock
|
unixsocket prefixes.sock
|
||||||
# unixsocketperm 700
|
unixsocketperm 700
|
||||||
|
|
||||||
# Close the connection after a client is idle for N seconds (0 to disable)
|
# Close the connection after a client is idle for N seconds (0 to disable)
|
||||||
timeout 0
|
timeout 0
|
||||||
|
@ -168,7 +168,7 @@ loglevel notice
|
||||||
# Specify the log file name. Also the empty string can be used to force
|
# Specify the log file name. Also the empty string can be used to force
|
||||||
# Redis to log on the standard output. Note that if you use standard
|
# Redis to log on the standard output. Note that if you use standard
|
||||||
# output for logging but daemonize, logs will be sent to /dev/null
|
# output for logging but daemonize, logs will be sent to /dev/null
|
||||||
logfile "ranking.log"
|
logfile "prefixes.log"
|
||||||
|
|
||||||
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
|
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
|
||||||
# and optionally update the other syslog parameters to suit your needs.
|
# and optionally update the other syslog parameters to suit your needs.
|
|
@ -89,7 +89,7 @@ protected-mode yes
|
||||||
|
|
||||||
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
||||||
# If port 0 is specified Redis will not listen on a TCP socket.
|
# If port 0 is specified Redis will not listen on a TCP socket.
|
||||||
port 6581
|
port 0
|
||||||
|
|
||||||
# TCP listen() backlog.
|
# TCP listen() backlog.
|
||||||
#
|
#
|
||||||
|
@ -106,8 +106,8 @@ tcp-backlog 511
|
||||||
# incoming connections. There is no default, so Redis will not listen
|
# incoming connections. There is no default, so Redis will not listen
|
||||||
# on a unix socket when not specified.
|
# on a unix socket when not specified.
|
||||||
#
|
#
|
||||||
# unixsocket /tmp/redis.sock
|
unixsocket ris.sock
|
||||||
# unixsocketperm 700
|
unixsocketperm 700
|
||||||
|
|
||||||
# Close the connection after a client is idle for N seconds (0 to disable)
|
# Close the connection after a client is idle for N seconds (0 to disable)
|
||||||
timeout 0
|
timeout 0
|
|
@ -3,5 +3,5 @@
|
||||||
set -e
|
set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
../../redis/src/redis-server ./6581.conf
|
../../redis/src/redis-server ./ris.conf
|
||||||
../../redis/src/redis-server ./6582.conf
|
../../redis/src/redis-server ./prefixes.conf
|
||||||
|
|
|
@ -3,5 +3,5 @@
|
||||||
# set -e
|
# set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
../../redis/src/redis-cli -p 6581 shutdown
|
../../redis/src/redis-cli -s ./ris.sock shutdown
|
||||||
../../redis/src/redis-cli -p 6582 shutdown
|
../../redis/src/redis-cli -s ./prefixes.sock shutdown
|
||||||
|
|
|
@ -26,13 +26,13 @@ pidfile ${ARDB_HOME}/ardb.pid
|
||||||
thread-pool-size 4
|
thread-pool-size 4
|
||||||
|
|
||||||
#Accept connections on the specified host&port/unix socket, default is 0.0.0.0:16379.
|
#Accept connections on the specified host&port/unix socket, default is 0.0.0.0:16379.
|
||||||
server[0].listen 0.0.0.0:16579
|
#server[0].listen 0.0.0.0:16579
|
||||||
# If current qps exceed the limit, Ardb would return an error.
|
# If current qps exceed the limit, Ardb would return an error.
|
||||||
#server[0].qps-limit 1000
|
#server[0].qps-limit 1000
|
||||||
|
|
||||||
#listen on unix socket
|
#listen on unix socket
|
||||||
#server[1].listen /tmp/ardb.sock
|
server[0].listen storage.sock
|
||||||
#server[1].unixsocketperm 755
|
server[0].unixsocketperm 755
|
||||||
#server[1].qps-limit 1000
|
#server[1].qps-limit 1000
|
||||||
|
|
||||||
# 'qps-limit-per-host' used to limit the request per second from same host
|
# 'qps-limit-per-host' used to limit the request per second from same host
|
||||||
|
|
|
@ -3,4 +3,4 @@
|
||||||
set -e
|
set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
../../redis/src/redis-cli -p 16579 shutdown save
|
../../redis/src/redis-cli -s ./storage.sock shutdown save
|
||||||
|
|
|
@ -89,7 +89,7 @@ protected-mode yes
|
||||||
|
|
||||||
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
||||||
# If port 0 is specified Redis will not listen on a TCP socket.
|
# If port 0 is specified Redis will not listen on a TCP socket.
|
||||||
port 6579
|
port 0
|
||||||
|
|
||||||
# TCP listen() backlog.
|
# TCP listen() backlog.
|
||||||
#
|
#
|
||||||
|
@ -106,8 +106,8 @@ tcp-backlog 511
|
||||||
# incoming connections. There is no default, so Redis will not listen
|
# incoming connections. There is no default, so Redis will not listen
|
||||||
# on a unix socket when not specified.
|
# on a unix socket when not specified.
|
||||||
#
|
#
|
||||||
# unixsocket /tmp/redis.sock
|
unixsocket intake.sock
|
||||||
# unixsocketperm 700
|
unixsocketperm 700
|
||||||
|
|
||||||
# Close the connection after a client is idle for N seconds (0 to disable)
|
# Close the connection after a client is idle for N seconds (0 to disable)
|
||||||
timeout 0
|
timeout 0
|
|
@ -89,7 +89,7 @@ protected-mode yes
|
||||||
|
|
||||||
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
# Accept connections on the specified port, default is 6379 (IANA #815344).
|
||||||
# If port 0 is specified Redis will not listen on a TCP socket.
|
# If port 0 is specified Redis will not listen on a TCP socket.
|
||||||
port 6580
|
port 0
|
||||||
|
|
||||||
# TCP listen() backlog.
|
# TCP listen() backlog.
|
||||||
#
|
#
|
||||||
|
@ -106,8 +106,8 @@ tcp-backlog 511
|
||||||
# incoming connections. There is no default, so Redis will not listen
|
# incoming connections. There is no default, so Redis will not listen
|
||||||
# on a unix socket when not specified.
|
# on a unix socket when not specified.
|
||||||
#
|
#
|
||||||
# unixsocket /tmp/redis.sock
|
unixsocket prepare.sock
|
||||||
# unixsocketperm 700
|
unixsocketperm 700
|
||||||
|
|
||||||
# Close the connection after a client is idle for N seconds (0 to disable)
|
# Close the connection after a client is idle for N seconds (0 to disable)
|
||||||
timeout 0
|
timeout 0
|
||||||
|
@ -250,7 +250,7 @@ rdbcompression yes
|
||||||
rdbchecksum yes
|
rdbchecksum yes
|
||||||
|
|
||||||
# The filename where to dump the DB
|
# The filename where to dump the DB
|
||||||
dbfilename pre_insert.rdb
|
dbfilename prepare.rdb
|
||||||
|
|
||||||
# The working directory.
|
# The working directory.
|
||||||
#
|
#
|
|
@ -3,5 +3,5 @@
|
||||||
set -e
|
set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
../../redis/src/redis-server ./6579.conf
|
../../redis/src/redis-server ./intake.conf
|
||||||
../../redis/src/redis-server ./6580.conf
|
../../redis/src/redis-server ./prepare.conf
|
||||||
|
|
|
@ -3,5 +3,5 @@
|
||||||
# set -e
|
# set -e
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
../../redis/src/redis-cli -p 6579 shutdown
|
../../redis/src/redis-cli -s ./intake.sock shutdown
|
||||||
../../redis/src/redis-cli -p 6580 shutdown
|
../../redis/src/redis-cli -s ./prepare.sock shutdown
|
||||||
|
|
Loading…
Reference in New Issue