• 搜索:redis

国内镜像 中科大 Docker Hub 源使用

地址 https://docker.mirrors.ustc.edu.cn/ #说明 Docker Hub 镜像缓存 使用说明 注意 由于访问原始站点的网络带宽等条件的限制,导致 Docker Hub, Google Container Registry (gcr.io) 与 Quay Container Registry (quay.io) 的镜像缓存处于基本不可用的状态。故从 2020 年 4 月起,从科大校外对 Docker Hub 镜像缓存的访问会被 302 重定向至其他国内 Docker Hub 镜像源。从 2020 年 8 月 16 日起,从科大校外对 Google Contain

Docker Compose 事半功倍,容器部署更方便简洁

Docker Compose是什么 Docker Compose 是一个工具,这个工具可以通过一个 yml 文件定义多容器的 Docker 应用. 通过一条命令就可以根据 yml 文件的定义去创建或者管理多个容器. 什么是yml文件 YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式, YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读,容易和脚本语言交互. 如何定义yml文件 新建 docker-compose.yml 文件 version: '3.7' services: mongodb: contain

Docker 容器之间互访的几种形式

容器之间为什么要互访 docker容器与容器之间是隔离状态,不能互相访问,但如果有些依赖关系的服务要如何访问对方呢? 介绍三种方法来解决容器互访问题. 虚拟IP访问 安装docker时,docker会默认创建一个内部的桥接网络docker0,每创建一个容器分配一个虚拟网卡,容器之间可以根据ip互相访问。 运行一个centos镜像, 查看ip地址得到:192.168.32.2 首先通过 docker ps 查看当前电脑上运行的容器实例 $ docker ps CONTAINER ID IMAGE COMMAND CREATE

docker 安装 redis 让宿主机访问

docker 安装 redis 拉取镜像 docker pull redis 宿主机创建映射目录 创建目录 sudo mkdir -p docker/redis/redis01/conf sudo mkdir -p docker/redis/redis01/data conf 目录放redis.conf 配置文件 data 目录映射redis数据目录 上面文件都要chmod 777 的权限 创建配置文件 在线拉取一个 redis.conf 放入 docker/redis/redis01/conf 目录下 cd docker/redis/redis01/conf wget http:

brew install时一直卡在Updating怎么办

前言 当你通过brew安装软件的时候, 发现一只卡在Updating Updating Homebrew... 这个时候有俩种办法来应对 找国内的源Updating Homebrew brew install 时不要 update 切换国内的源 //替换brew源 cd "$(brew --repo)" git remote set-url origin https://mirrors.ustc.edu.cn/brew.git //替换homebrew-core.git cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" gi

redis 缓存造成穿透怎么办

什么是redis 穿透 前面我们有一篇文章介绍了 redis 下的雪崩已经一些解决办法 redis缓存造成雪崩怎么办,点击查看 今天我们再来看下redis下的穿透是什么? 顾名思义:穿透就是把一个容器或者保护罩击穿. 当一个请求过来,我们会根据参数去匹配redis缓存数据; 如果没有找到缓存结果,我们才会接着去请求DB. 那么问题来了: 当成批的并发请求过来,同时去请求一个 redis 缓存中不存在的数据,会发生什么要的效果? 是不是想到了雪崩? 当缓存不能命中,说明我们要去DB上查找数据,而这个并发直接去打DB,真的有点雪崩的意思. 会出现什么要的效果,我们基本想到了. 为什么会有批量并

redis 如何造成缓存雪崩

什么是redis雪崩 redis 缓存在同一时间失效,导致请求直接从物理数据库中读取数据,而针对一些热门并发数据, 如果在同一时间缓存全部失效,导致并发过来,物理数据库承担不住大并发请求而导致系统崩溃,就是redis雪崩. 什么情景下会出现这种情况 比如微博热搜,app首页数据已经电商秒杀活动商品等等..... 而这些数据一般情况下是定时任务来创建redis缓存; 比如定时任务执行一次,把热门数据缓存起来,并且设置统一生效时间2小时; 而2小时后,正好面临一场秒杀活动; 我们试想一下, 2小时后的缓存全部失效,这时突然一个高并发请求进来,本来redis能抵抗80%并发请求,结果因为全部失效导

node.js 微信开发 定时获取access_token

什么是access_token access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效 [来自微信文档] 当你的多个微信开发相关服务并存时,多个服务各自去获取 access_token ,最后导致其中一些服务会不能正常访问. 所以这种情况下,应该设置一个获取 access_token 的中控服务器. 因为 access_token 的有效期为 2个小时,

linux下查询端口是否被占用,杀掉进程关闭端口占用

概述 首先你必须知道,端口不是独立存在的,它是依附于进程的; 某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了; 下次若某个进程再次开启,则相应的端口也再次开启; 而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口. 查询端口 比如我们要查询 6379 端口 netstat -anp | grep 6379 [root@centos76 ~]# netstat -anp | grep 6379 tcp 0 0 172.16.60.111:6379 0.0.0.0:* LISTEN 2195/red

通过 find 这终端查找文件

find命令搜索文件 find命令非常高效,并且使用简单. find命令来自unix,OS X和Linux系统同样支持该命令. find命令格式: ** find 文件路径 参数** 这用户目录下查找 查找文件名中包含 redis.conf 的文件 find ~ -name "redis.conf*" -name 是指定参数 redis.conf* *号匹配任意字符,说明以 redis.conf 开头的文件 指定文件目录下查找 在特定的文件夹中寻找特定的文件,比如 这 / 目录下查找 redis.conf开头的文件 find ~ -name "redis.conf*" m

centOS6.5 快速安装部署 gitLab

在程序开发过程中 git 已经成为最受欢迎的代码托管工具,从此工具上衍生出来了大名鼎鼎的开源平台 github . 它给我们代码管理带来方便快捷,但是在 github 上,只有开源的公开项目才可以免费试用,如果公司的私有项目,必须付费购买,而且价格还不低.所以今天这篇文章和大家分享下在 centOS 6.5 环境下,傻瓜式,简洁快速部署安装 gitlab 服务. 什么是gitlab GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注

redis 如何处理客户端连接

redis如何处理客户端连接 redis 连接建立 Redis Redis 通过监听一个 TCP 端口或者 Unix socket 的方式来接收来自客户端的连接,当一个连接建立后,Redis 内部会进行以下一些操作: 首先,客户端 socket 会被设置为非阻塞模式,因为 Redis 在网络事件处理上采用的是非阻塞多路复用模型。 然后为这个socket 设置 TCP_NODELAY 属性,禁用 Nagle 算法 然后创建一个 readable 的文件事件用于监听这个客户端 socket 的数据发送 当客户端连接被初始化后, 会查看目前的连接数,然后对比配置好的 maxclients

mac 下的 tree 命令 终端展示你的目录树结构

在 linux 下你可以很方便的使用 tree 命令来查看当前目录下的目录树机构. 但是在 mac 下,至少你需要安装一个工具. 开始,我从网上找到了一个shell 命令打印 tree 结构的方法. find . -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g' 你可以在你的终端下,直接输入上面的shell 命令来查看当前目录的结构树 如何把它变成一个 命令,直接使用呢 我们想到了 alias 指定别名的方法 alias tree="find . -print | sed -e 's;[^/]*/;|____;g;s;___

node.js 下定制你的 config 配置文件

在任何一个项目中都缺少不了配置文件 具有下面的特点: 数据量不大,信息需要长期保存,容易维护 当然你也可以在数据库中建一张表,去存放这些信息,一点错都没有,但是,是不是有点牛刀杀鸡的感觉 今天和大家分享的是配置文件的定制,根据你的运行环境不同动态配置一张灵活的 config 配置文件. 之前的一篇博文 根据 ENV 环境变量不同加载不同的配置文件 这一篇可以说是上一篇的子章节,上一篇说的太笼统, 这一次针对一个点,然后铺开说一个功能 我的博客全部用绝对路径 为什么? 因为总有些人直接过来 copy 我的文章,然后不加出处,不署名,这是别人辛辛苦苦的劳动果实,作为一个I

Redis 配置文件 redis.conf 项目详解

Redis.conf 配置文件详解 # [Redis](http://yijiebuyi.com/category/redis.html) 配置文件 # 当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写) # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g => 1000000000 bytes # 1gb => 1024*1024*1024 bytes # # 内存

node.js 下使用 redis 作为缓存介质

之前有一篇介绍node.js 下,轻量级缓存应用模块 node-cache点击访问.今天介绍使用 redis 作为缓存介质.首先,我们需要一个 node.js 下可以访问 redis 的中间件,就是 node_redisgithub地址:https://github.com/NodeRedis/node_redis安装:npminstall--saveredis然后我们封装一个缓存类:varredis=require('redis'); varconfig=require('../config'); ///////////////////////////////

node-cache 模块 node.js 轻量级缓存管理使用及源码分析

随着前端越来越重,已经不是当年的一个页面配几个第三方js库实现一些花俏的效果,而是出现了各种各样的框架解决方案.当我们项目实现前后端分离时,甚至一些逻辑处理也会放到前端来处理.所以随随便便打开一个页面上百k应该也是正常,甚至更大的页面在考验的前端.但是伴随成长的后端,尤其数存储方面貌似发展缓慢,总有跟不上的赶脚!想当年我们使用关系型数据库,当达到一个瓶颈时,解决起来是不计后果的,读写分离,拆表拆库,做service中间件,然后给中间件负载均衡等等来减轻前端并发造成的后端数据压力.如今的mongodb 做一个分布式貌似轻轻松松, redis 做一层缓存让你有飞一样的感觉.我们终于谈到了缓存.缓存

分享一个关于redis 的orm框架 node-ron 使用

今天好累....下班去健身房跑步运动,看着这一身肥肉,希望未来的几个月内能有一点改变,健康最重要,大家要多注意身体.开始说正题,成熟的orm框架大部分来自关系型数据库.KV数据库的orm还是比较少的,但是增速很快,支持mongodb的也陆续出来,但是如果你想找一款 redis 的orm真的少的可怜.github地址:https://github.com/wdavidw/node-ron用的人还是不多,作者官网以及测试用例用coffee script 做demo ,实在不感冒.所以我在自己把每个api 测试一把,回头奉上,所以今天的博客注定又是不完整的,现在开始写,争取做一个完整示例来说比较好.

redis 实现事件订阅和发布

redis 中实现了一种消息通信模式, 发布 pub , 订阅 sub .这2个模式看上去是一对一握手状态,其实不然, redis 在实现 消息发布和订阅模块上做了充足的解耦.如何理解:redis 在消息发布的时候,并不是直接发送给所有的消息订阅者,而是发送到了一个频道上 (channel ), 这个频道再做转发,发给所有对这个频道感兴趣的人.发布者可以同时发布多个,订阅者也可以同时订阅多个,并不是一对一的关系.而在整个实现逻辑上和观察者模式非常相似.消息订阅者 sub 就像 观察者.消息发布者 pub 就像一个事件.onmessage 处理函数就像一个事件绑定函数.观察者细致的观察着周围事件

mongoDB启动报错 ERROR: child process failed, exited with error number

上面这个错误是今天下午发现,从github down下一个应用,在应用启动前需要redis 启动服务,mongodb启动服务,所以当启动mongodb的时候悲剧出现了:zhangzhi@moke:~$mongod--dbpath=/data/club--port=27017--fork--logpath=/var/log/mongodb/mongodb.log abouttoforkchildprocess,waitinguntilserverisreadyforconnections. forkedprocess:43110 alloutputgoingto:/var/log/mongodb

利用redis 有序集合,轻松搞定排行榜

redis 在nosql阵营可谓是红的发紫,它比其他nosql产品支持的存储类型比较丰富,而且存储方式比较灵活,试用的成本也不高.本文简单描述下 redis 下如何实现一个排行榜,缘由是redis 支持一种 有序集合 zset 类型,zset 是set 类型的一个扩展,比原有的类型多了一个顺序属性.此属性在每次插入数据时会自动调整顺序值,保证value值按照一定顺序连续排列.我们首先插入一些测试数据.zhangzhi@moke:~$redis-cli-h192.168.1.175-p6377我用客户端连接上了 192.168.1.175 服务器的 6377 端口.192.168.1.175:6

redis-cli 命令总结

Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用。在编程时,比如使用Redis 的Java语言包,这些命令都有对应的方法。下面将Redis提供的命令做一总结。官网命令列表:http://redis.io/commands(英文)1、连接操作相关的命令quit:关闭连接(connection)auth:简单密码认证2、对value操作的命令exists(key):确认一个key是否存在del(key):删除一个keytype(key):返回值的类型keys(pattern):返回满足给定pattern的所有keyrandomk

mac 下安装运行 redis

mac 上安装 redis 首先必须保证mac 已经安装 xcode.因为make时要用到Xcode 的command Tools .(1)下载 redis http://redis.googlecode.com/files/redis-2.8.7.tar.gz解压到当前目录.(2)你也可以在终端下载:curl-Ohttp://redis.googlecode.com/files/redis-2.8.7.tar.gz sudotar-zxfredis-2.8.7.tar.gz(3)修改文件夹名,编译mvredis-2.8.7redis cdredis/ sudomake sudomaketes

回到顶部