一.前言 1.哨兵的介绍 sentinal,中文名是哨兵 哨兵是redis集群架构中非常重要的一个组件,主要功能如下 ()集群监控,负责监控redis master和slave进程是否正常工作 ()消息通知,如果某个redis实例有故障,那么哨兵负责发送消息作为报警通知给管理员 ()故障转移,如果master node挂掉了,会自动转移到slave node上 ()配置中心,如果故障转移发生了,通知client客户端新的master地址 哨兵本身也是分布式的,作为一个哨兵集群去运行,互相协同工作…
Redis官网:https://redis.io/ Redis中文网:http://www.redis.cn/ Redis 是一个开源的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询. Redis 内置了 复制(…
Redis启动后的杂项基础知识 1.单进进程 单进程模型来处理客户端的请求.对读写等事件的响应是通过对epoll函数的包装来做到的.Redis的实际处理速度完全依靠主进程的执行效率       Epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux 下多路复用IO接口select/ poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率. 2.默认16个数据库,类似数组下表从零开始,初始默认使用零号库 3.可以通过select 切…
概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次性地将一个block,常见的块的大小是128KB/256KB,全部擦除为1,也就是里面的内容全部都是0xFF了,由于是一下子就擦除了,相对来说,擦除用的时间很短,可以用一闪而过来形容,所以,叫做Flash Memory.所以一般将Flash翻译为 (快速)闪存. NAND Flash 在嵌入式系统中…
1. Redis 是什么 Redis是一个开源的使用ANSI C语言编写的基于内存的key/value存储系统,与memcache类似,但它支持的value类型更多,包括:字符串(string).链表(list).集合(set).有序集合(sorted set)和hash tablehttp://blog.nosqlfan.com/html/2235.html等,这些数据类型支持push/pop.add/remove.交集并集差集及其他更丰富的操作,且这些操作均是原子性的. 按照分布式领域的CA…
1.redis的不同之处 Redis拥有其他数据库不具备的数据结构,又拥有内存存储(这使得redis的速度非常快),远程操作(使得redis可以与多个客户端和服务器进行连接).持久化(使得服务器可以在重启的时候仍然保持重启之前的数据)和可扩展(通过主从复制和分片). Redis结构类型:STRING.LIST.SET.HASH.ZSET(有序集合) STRING:可以存贮字符串.整数.浮点数 LIST:一个链表,每个节点都包含一个字符串 SET:包含字符串的无序收集容器,每个字符串都是独一无二的…
一.什么是配额(quota)管理 简单的讲就是控制用户资源的数量.在openstack里,管理员为每一个工程(project)分配的资源都是有一定限制的,这些资源包括实例(instance).cpu.内存.存储空间等等,不能让一个工程无限制的使用资源,所以配额管理针对的单位是工程(project).先来个感性的认识,看一下dashboard里的一个工程的overview: 管理员给这个工程的资源配额是最多创建10个实例,最多使用20个vcpu,最多使用5G的内存==,只要达到某一个资源的使用上限…
1.js没有块级作用域 if (true) { var color = “blue”; } alert(color); //”blue” for (var i=0; i < 10; i++){ doSomething(i); } alert(i); 2,变量定义 全局变量 变量定义:var和没有var function add(num1, num2) { var sum = num1 + num2; return sum; } alert(sum); //causes an error sinc…
目录 一丶学习目标 二丶关机重启命令 三丶 查看或配置网卡信息 1.网卡与IP地址介绍 2.命令介绍 一丶学习目标 关机/重启 shutdown 查看或配置网卡信息 ifconfig ping 远程登录和复制文件 ssh scp 二丶关机重启命令 序号 命令 对应英文 作用 01 shutdown 选项 时间 shutdown 关机/重新启动 shutdown 命令可以 安全 关闭 或者 重新启动系统 选项 含义 -r 重新启动 -c 取消关机 提示: 不指定选项和参数,默认表示 1 分钟之后…
如果事先不知道数组的具体长度,则需要动态分配内存.下面是例子. #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { // 如果预先不知道需要存储的文本长度,则需要定义一个指针,后续再根据需求来分配内存 char *str; // 在内存中动态地分配num个长度为size的连续空间,并将每一个字节都初始化为0 str = * sizeof(char)); // 或 str = ca…
卷(volumes)是 Docker 容器生产和使用持久化数据的首选机制.绑定挂载(bind mounts)依赖于主机的目录结构,卷(volumes)完全由 Docker 管理.卷与绑定挂载相比有几个优势: 卷比绑定挂载更容易备份或迁移. 您可以使用 Docker CLI 命令或 Docker API 来管理卷. 卷可以在 Linux 和 Windows 容器上工作. 卷可以更安全地在多个容器之间共享. 卷驱动程序允许您在远程主机或云提供商上存储卷.加密卷的内容或添加其他功能. 新卷的内容可以由…
一.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive 1.单体应用:开发速度慢.启动时间长.依赖庞大.等等 2.微服务:易开发.理解和维护.独立的部署和启动等等 不足:分布式系统(分布式事务问题).需要管理多个服务(服务治理) 二.微服务基础知识简介 微服务核心知识 :网关.服务发现注册.配置中心.链路追踪.负载均衡器.熔断 1.网关:路由转发 + 过滤器 /api/v1/pruduct/       商品服务 /api/v1…
目录 Redis持久化 RDB快照(snapshot) AOF(append-only file) AOF重写 Redis 4.0 混合持久化 Redis数据备份策略: Redis主从架构 Redis主从工作原理 Redis哨兵高可用架构 Redis持久化 RDB快照(snapshot) 在默认情况下, Redis 将内存数据库快照保存在名字为 dump.rdb的二进制文件中. 你可以对 Redis 进行设置,让它在 "N 秒内数据集至少有 M个改动" 这一条件被满足时,自动保存一次数…
Redis 学习方式: 上手就用 基本的理论先学习,然后将知识融汇贯通 nosql讲解 为什么要用Nosql 现在都是大数据时代 大数据一般的数据库无法进行分析处理了 至少要会Springboot+SpringCloud 压力一定会越来越大,适者生存 1.单机MySQL的年代 90年代,一个基本的网站访问量一般不会太大,单个数据库完全足够,那个时候,更多的去使用静态网页,HTML,服务器根本没有太大的压力 思考一下,这种情况下:整个网站的瓶颈是什么? 1.数据量如果太大,一个机器放不下了 2.数…
转载原文:http://www.cnblogs.com/jinshengzhi/articles/5225718.html 一.MySql+Memcached架构的问题 Memcached采用客户端-服务器的架构,客户端和服务器端的通讯使用自定义的协议标准,只要满足协议格式要求,客户端Library可以用任何语言实现. Memcached服务器使用基于Slab的内存管理方式,有利于减少内存碎片和频繁分配销毁内存所带来的开销.各个Slab按需动态分配一个page的内存(和4Kpage的概念不同,这…
消息队列及常见消息队列介绍 2017-10-10 09:35操作系统/客户端/人脸识别 一.消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要进行控制的时候,差不多就是需要使用消息队列的时候. 消息队列主要解决了应用耦合.异步处理.流量削锋等问题. 当前使用较多的消息队列有RabbitMQ.RocketMQ.ActiveMQ.Kafka.ZeroMQ.MetaMq等,而部分数据库如Re…
一.redis主从复制原理 redis主从同步策略:slave刚加入集群会触发一次全量同步(全量复制).全量同步之后,进行增量复制.slave优先是增量同步,如果增量同步失败会尝试从master节点进行全量复制.全量复制:slave初始化阶段 如上图 slave服务器首先连接master节点,发送SYNC命令. master节点收到SYNC命令开始指令BGSAVE(延迟写,读正常)命令生成RDB(快照)文件,在此期间master的写请求会被缓存. RDB生成,master会将该RDB发送给所有的…
复制粘贴自: https://www.cnblogs.com/kevingrace/p/9004460.html 请点击此链接查看原文. 仅供本人学习参考, 如有侵权, 请联系删除, 多谢! Redis哨兵模式(sentinel)学习总结及部署记录(主从复制.读写分离.主从切换) Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍Sentinel(哨兵)是用于监控…
一主一从,往主节点去写,在从节点去读,可以读到,主从架构就搭建成功了 1.启用复制,部署slave node wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz tar -xzvf tcl8.6.1-src.tar.gz cd /usr/local/tcl8.6.1/unix/ ./configure make && make install 使用redis-3.2.8.tar.gz tar -zxvf redis-3…
导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首先要感谢一个人三太子敖丙 ,就是他的文章让我发现,原来Redis的知识如此的多姿多彩.恩恩,他的文章,我是期期都看 Redis篇,因为时间和篇幅的原因,并没有一次性写完,于是乎,分成了上下两篇,没有看过上半部分的小伙伴可以去看一下~ 索引中一些易忽视的点 Redis基础知识两篇就满足(一) Redi…
导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第一篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首先要感谢一个人三太子敖丙 ,就是他的文章让我发现,原来Redis的知识如此的多姿多彩.恩恩,他的文章,我是期期都看 这是这篇文章的思维导图,因为用的是免费版的软件,所以有不少水印,需要原版的可以问我要 Redis篇,因为时间和篇幅的原因,并没有一次性写完,于是乎,分成了上下两篇,没有看过上半部分的小…
Megento 架构基础知识概述 Magento整合了面向对象的基于PHP的应用程序的核心架构原则.这些一般原则的综合讨论既有在线的,也有印刷形式.以下讨论主要关注这些主题如何直接应用于Magento: Magento技术堆栈 Magento查看模型 可扩展性 模块化 事件驱动的体系结构 安全 架构图: Magento架构从不同的角度根据您的角色和学习Magento更多信息的目的,有几种不同的方式可以查看Magento体系结构. 例如,想要创建新模块或者可能定制现有模块的开发人员将希望通过Mag…
使用Code First建模自引用关系笔记   原文链接 一.Has方法: A.HasRequired(a => a.B); HasOptional:前者包含后者一个实例或者为null HasRequired:前者(A)包含后者(B)一个不为null的实例 HasMany:前者包含后者实例的集合 二.With方法: A.HasRequired(a => a.B); WithOptional:后者(B)可以包含前者(A)一个实例或者null WithRequired:后者包含前者一个不为null…
文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 一些补充知识 项目结构及入口 除了大学那些玩具,一个真正的项目,都是由大量源代码文件组成一个工程.在Java里,一个 java…
Redis--(主从复制.哨兵模式.集群)的部署及搭建 重点: 主从复制:主从复制是高可用redis的基础,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复. 哨兵和集群都是在主从复制基础上实现高可用的. 缺点:故障恢复无法自动化,写操作无法负载均衡,存储能力受到单机的限制. 哨兵:在主从复制的基础上,哨兵实现了自动化的故障恢复. 缺点:写操作无法负载均衡,存储能力受到单机的限制,哨兵无法对从节点进行自动故障转移,在读写分离的场景下,从节点故障会导致读服务不可用,需要对…
看到一张redis的基础知识思维导图,比较清晰, 但是没有标明来源,希望知道的给个地址,我也好说明来源 图大小有1M多.在博客上看比较模糊,可以先下载下来查看,或者在浏览器新标签中打开图片查看,就比较清晰了. 不多说了,上图:…
Redis知识补充 在上一篇博客<Redis基础认识及常用命令使用(一)--技术流ken>中已经介绍了redis的一些基础知识,以及常用命令的使用,本篇博客将补充一些基础知识以及redis持久化和备份. 一. 启用redis的认证功能 第一步:登录redis并创建几个字符串,并退出 [root@ken ~]# redis-cli > set name zhangsan OK > set addr jiangsu OK > OK > MGET name addr tel…
一.软件开发的架构 涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:qq.微信.网盘.优酷这一类是属于需要安装的桌面应用 第二种是web类:比如百度.知乎.博客园等使用浏览器访问就可以直接使用的应用 这些应用的本质其实都是两个程序之间的通讯.而这两个分类又对应了两个软件开发的架构 C/S架构: C/S即:Client与Server ,中文意思:客户端与服务器端架构,这种架构也是从用户层面(也可以是物理层面)来划分的. 这里的客户端一般泛指客户端应用程序EXE,程序需要先安装后,才…
介绍 Redis Sentinel集群是由若干Sentinel节点组成的分布式集群,可以实现故障发现.故障自动转移.配置中心和客户端通知. 如下图: Redis Sentinel 故障转移过程: 从这张图中我们能看到主节点挂掉了,原先的主从复制也断开了,客户端和损坏的主节点也断开了.从节点被提升为新的主节点,其它从节点开始和新的主节点建立复制关系.客户端通过新的主节点继续进行交互.Sentinel 会持续监控已经挂掉了主节点,待它恢复后,集群会调整为下面这张图. 一.部署redis哨兵集群 官方…
WDS部署基础知识:使用WDS捕获与应用映像(使用WDS定制系统和应用) Win7部署基础知识(8):使用WDS捕获与应用映像  一.添加映像组 使用WDS捕获映像时,会将映像加载到WDS服务器的映像组中.在本实验中,我们事先创建一个映像组. 二.添加启动映像 本实验中,我们从win7安装光盘取得一个启动映像. 将win7安装光盘插入光驱中,将光盘source文件夹中的boot.wim映像添加进来. 三.添加捕获映像 1.创建捕获映像 首先,利用上一步添加的启动映像制作一个捕获映像.以后将使用这…