通过 docker 部署 redis,启动 docker 时需要依赖 containerd。其实跟 redis 关系不大,主要是 docker 依赖于 containerd。安装完成 docker 启动后可能会遇到如下错误:
./containerd: symbol lookup error: ./containerd: undefined symbol: seccomp_version
1
./containerd: symbol lookup error: ./containerd: undefined symbol: seccomp_version
缺少对应版本的 libseccomp, 有两种可能:
系统没有安装 libseccomp
系统安...
php安装redis扩展,可以通过源码编译,也可以通过pecl来快速安装,本文介绍通过pecl安装redis扩展。
安装前准备:
yum -y install libzstd-devel
pecl install lzf
pecl install zstd
查看redis扩展的版本,通过
pecl search redis 可以看到redis扩展的最新版本是5.3.1
[root@67 ~]# /usr/local/php/bin/pecl search redis
Retrieving data...0%
Matched packages, channel pecl.php.net:
=======================================
Package Stable/(Latest) Local
redis 5.3.1 (stable) PHP extension for interfacing with Redis
...
Redis客户端和服务器端通信使用名为 RESP (REdis Serialization Protocol) 的协议。虽然这个协议是专门为Redis设计的,它也可以用在其它 client-server 通信模式的软件上。
RESP 是下面条件的折中:
实现起来简单。解析速度快。有可读性。
RESP 能序列化不同的数据类型,例如整型(integers)、字符串(strings)、数组(arrays)。额外还有特殊的错误类型。请求从客户端以字符串数组的形式发送到redis服务器,这些字符串表示要执行的命令的参数。Redis用特定于命令的数据类型回复。
RESP 是二进制安全的,并且不需要...
1. redis查看当前所有的key
KEYS *
1
KEYS *
2. 查看当前redis的配置信息
CONFIG GET *
1
CONFIG GET *
3. MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the er...
一个程序投产线上使用基本不会停下来,一旦业务需求改变或者增加需求,需要修改配置文件时,往往需要停机修改配置后重新启动服务。
这个过程进程少还可以接受,如果停一次机要很长时间而且需要授权更新,这个是难以接受的方法。
想了几个办法
1.放到内存,例如redis这种字典,这样可以动态修改redis的值来实现动态更新,问题是如何保证redis出问题不影响原程序呢?
重redis里读到map,如果需要的配置不在,到内存里去读,这样只能增加配置,想要删除配置好像不理想。
2.定时load配置文件,
3.通过信号load,
2.和3.不好协调多个进程服...
memcache官方定义
Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
redis官方定义
Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.
版权相同
它们都是使用的bsd协议,使用它的项目可以用于商业用户,不必发布二次修改的代码,...
redis是一个内存数据库,比memcache支持更丰富的value类型,新浪微博就使用redis来做缓存。
redis的源码安装
wget http://download.redis.io/redis-stable.tar.gz
tar -zxvf redis-stable.tar.gz
cd redis-stable
make
make test
make install
123456
wget http://download.redis.io/redis-stable.tar.gztar -zxvf redis-stable.tar.gzcd redis-stablemakemake testmake install
1.make时可能会报如下错误:
...