摘要:
Redis没有直接使用C语言传统的字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。Reids自己构建的sds要比默认的c字符串性能更好,也更安全。 阅读全文
摘要:
在Go语言并发编程中,用一个goroutine来处理一个任务,而它又会创建多个goroutine来负责不同子任务的场景非常常见。如下图 这些场景中,往往会需要在API边界之间以及过程之间传递截止时间、取消信号或与其它请求相关的数据 谁是性能卡点呢?得通知它们任务取消了。 这时候就可以使用Contex 阅读全文
摘要:
名词解释 根目录说明 tree -L 1 . ├── bin -> usr/bin # 英语binary的缩写,表示”二进制文件“,bin目录包含了会被所有用户使用的可执行程序 ├── boot # 英语boot表示”启动“,boot目录包含与Linux启动密切相关的文件 ├── dev # 英语d 阅读全文
摘要:
安装Redis客户端 Go语言中使用第三方库https://github.com/go-redis/redis连接Redis数据库并进行操作。使用以下命令下载并安装: go get github.com/go-redis/redis/v8 注:导入时指定了版本v8,忽略版本是一个常见错误 连接red 阅读全文
摘要:
现在开发前后端分离变得越来越流行了,后端只提供接口返回json格式的数据,即使是错误信息也要以json格式来返回,然而目前无论是Laravel框架还是ThinkPHP框架,都只提供了返回json数据的方法,对异常的处理并不是以json格式来返回给我们,所以这里就需要我们自己来改写。 首先我们在app 阅读全文
摘要:
安装依赖 yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel socat 安装Erlang Erlang RPM包下载地址:htt 阅读全文
摘要:
队列(Queue)又称先进先出表(First In First Out),即先进入队列的元素,先从队列中取出。加入元素的一头叫“队头”,取出元素的一头叫“队尾”。利用消息队列可以很好地异步处理数据传送和存储,当你频繁地向数据库中插入数据、频繁地向搜索引擎提交数据,就可采取消息队列来异步插入。另外,还 阅读全文
摘要:
REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP。如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP(在Nginx中可以使用proxy_set_header X-Forwarded-For $remote_addr;来解决)。 HTTP_CLIENT_IP 是代理 阅读全文
摘要:
安装依赖 在Linux下编译,需要gcc、make、cmake、autoconf、libtool、libevent等工具,在Linux联网状态下我们可以使用yum命令来安装锁需要的依赖 yum -y install gcc gcc-c++ make cmake autoconf libtool li 阅读全文
摘要:
复制的4中常见架构有一主多从复制架构、多级复制架构、双主(Dual Master)复制架构和多源(Multi-Source)复制架构。 一主多从复制架构 在主库读取请求压力非常大的场景下,可以通过配置一主多从复制架构实现读写分离,把大量的对实时性要求不是特别高的读请求通过负载均衡分部到多个从库上(对 阅读全文