当前位置: 首页 > news >正文

期货直播室网站建设wordpress 点击数筛选

期货直播室网站建设,wordpress 点击数筛选,简述主要的电子商务网站有哪些,北京软件技术有限公司目录 一、单机安装Redis。 二、Redis主从集群。 2.1.集群结构 2.2.准备实例和配置 2.3.启动 2.4.开启主从关系 2.5.测试 三、搭建哨兵集群。 3.1.集群结构 3.2.准备实例和配置 3.3.启动 3.4.测试 四、搭建分片集群。 4.1.集群结构 4.2.准备实例和配置 4.3.启动…目录 一、单机安装Redis。 二、Redis主从集群。 2.1.集群结构 2.2.准备实例和配置 2.3.启动 2.4.开启主从关系 2.5.测试 三、搭建哨兵集群。 3.1.集群结构 3.2.准备实例和配置 3.3.启动 3.4.测试 四、搭建分片集群。 4.1.集群结构 4.2.准备实例和配置 4.3.启动 4.4.创建集群 4.5.测试 五、单点redis的问题。 六、Redis持久化。 1RDB持久化。 2 AOF持久化。 3RDB和AOF的对比。 七、Redis主从。 1搭建主从架构。 2 主从数据同步原理。 2.1全量同步 2.2增量同步 2.3优化redis主从集群 2.4总结 八、Redis哨兵。 1哨兵的作用和原理。 2搭建哨兵集群。 3RedisTemplate的哨兵模式。 九、Redis分片集群。 1搭建分片集群。 2散列插槽。 3集群伸缩。 4故障转移。 4.1 自动故障转移。 4.2手动故障转移。  5RedisTemplate访问分片集群。 一、单机安装Redis。 首先需要安装Redis所需要的依赖 yum install -y gcc tcl 然后将Redis安装包上传到虚拟机的任意目录 例如我放到了/tmp目录 解压缩 tar -xvf redis-6.2.4.tar.gz 解压后 进入redis目录 cd redis-6.2.4 运行编译命令 Make 工具在执行编译时会根据 Makefile 文件中的规则来确定编译的位置。Makefile 文件是一个文本文件其中包含了一系列的规则和指令用于描述编译的过程。redis-6.2.4里面有Makefile文件所以可以使用make指令编译 在 Linux 操作系统中通常的软件安装方式是源代码编译安装 make make install 如果没有出错应该就安装成功了。 然后修改redis.conf文件中的一些配置 # 绑定地址默认是127.0.0.1会导致只能在本地访问。修改为0.0.0.0则可以在任意IP访问 bind 0.0.0.0 # 数据库数量设置为1 databases 1 启动Redis redis-server redis.conf 远程连接linux系统然后允许redis的客户端redis-cli。 redis-cli 停止redis服务 redis-cli客户端中 shutdown 的作用是向 Redis 服务器发送关闭命令用于优雅地停止 Redis 服务器的运行。 $ redis-cli 127.0.0.1:6379 shutdown 关闭redis服务的时候会默认先执行RDB持久化然后再关闭服务。 二、Redis主从集群。 2.1.集群结构 我们搭建的主从集群结构如图 共包含三个节点一个主节点两个从节点。 这里我们会在同一台虚拟机中开启3个redis实例模拟主从集群信息如下 IPPORT角色192.168.150.1017001master192.168.150.1017002slave192.168.150.1017003slave 2.2.准备实例和配置 要在同一台虚拟机开启3个实例必须准备三份不同的配置文件和目录配置文件所在目录也就是工作目录。 1创建目录 我们创建三个文件夹名字分别叫7001、7002、7003 # 进入/tmp目录 cd /tmp # 创建目录 mkdir 7001 7002 7003 如图 2恢复原始配置这里是单机安装改动的所以才需要改回来 修改redis-6.2.4/redis.conf文件将其中的持久化模式改为默认的RDB模式AOF保持关闭状态。 # 开启RDB # save save 3600 1 save 300 100 save 60 10000# 关闭AOF appendonly no 3拷贝配置文件到每个实例目录 然后将redis-6.2.4/redis.conf文件拷贝到三个目录中在/tmp目录执行下列命令 # 方式一逐个拷贝 cp redis-6.2.4/redis.conf 7001 cp redis-6.2.4/redis.conf 7002 cp redis-6.2.4/redis.conf 7003 # 方式二管道组合命令一键拷贝 echo 7001 7002 7003 | xargs -t -n 1 cp redis-6.2.4/redis.conf 4修改每个实例的端口、工作目录 修改每个文件夹内的配置文件将端口分别修改为7001、7002、7003将rdb文件保存位置都修改为自己所在目录在/tmp目录执行下列命令s是替换g是全局即符合的全部修改。s/6379/7001/g表示将文件中所有的6379替换为7001而s/dir .//dir /tmp/7001//g表示将文件中所有的dir ./替换为dir /tmp/7001/。 sed -i -e s/6379/7001/g -e s/dir .\//dir \/tmp\/7001\//g 7001/redis.conf sed -i -e s/6379/7002/g -e s/dir .\//dir \/tmp\/7002\//g 7002/redis.conf sed -i -e s/6379/7003/g -e s/dir .\//dir \/tmp\/7003\//g 7003/redis.conf 5修改每个实例的声明IPIP地址是按自己主机改 虚拟机本身有多个IP为了避免将来混乱我们需要在redis.conf文件中指定每一个实例的绑定ip信息格式如下 # redis实例的声明 IP replica-announce-ip 192.168.150.101 每个目录都要改我们一键完成修改在/tmp目录执行下列命令IP地址是按自己主机改 # 逐一执行 sed -i 1a replica-announce-ip 192.168.150.101 7001/redis.conf sed -i 1a replica-announce-ip 192.168.150.101 7002/redis.conf sed -i 1a replica-announce-ip 192.168.150.101 7003/redis.conf# 或者一键修改 printf %s\n 7001 7002 7003 | xargs -I{} -t sed -i 1a replica-announce-ip 192.168.150.101 {}/redis.conf 2.3.启动 为了方便查看日志我们打开3个ssh窗口分别启动3个redis实例启动命令 # 第1个 redis-server 7001/redis.conf # 第2个 redis-server 7002/redis.conf # 第3个 redis-server 7003/redis.conf 启动后 如果要一键停止可以运行下面命令 printf %s\n 7001 7002 7003 | xargs -I{} -t redis-cli -p {} shutdown 2.4.开启主从关系 现在三个实例还没有任何关系要配置主从可以使用replicaof 或者slaveof5.0以前命令。 有临时和永久两种模式 修改配置文件永久生效 在redis.conf中添加一行配置slaveof masterip masterport 使用redis-cli客户端连接到redis服务后执行slaveof命令重启后失效 slaveof masterip masterport 注意在5.0以后新增命令replicaof与salveof效果一致。 这里我们为了演示方便使用方式二。 通过redis-cli命令连接7002执行下面命令IP地址是按自己主机改 作用是7002作为7001的从节点。 # 连接 7002 redis-cli -p 7002 # 执行slaveof slaveof 192.168.150.101 7001 通过redis-cli命令连接7003执行下面命令IP地址是按自己主机改 作用是7003作为7001的从节点。 # 连接 7003 redis-cli -p 7003 # 执行slaveof slaveof 192.168.150.101 7001 然后连接 7001节点查看集群状态 # 连接 7001 redis-cli -p 7001 # 查看状态 info replication 结果 2.5.测试 执行下列操作以测试 利用redis-cli连接7001执行set num 123 利用redis-cli连接7002执行get num再执行set num 666 利用redis-cli连接7003执行get num再执行set num 888 可以发现只有在7001这个master节点上可以执行写操作7002和7003这两个slave节点只能执行读操作。 三、搭建哨兵集群。 注意 该哨兵集群基于主从集群部署的因为监控的是主从集群。 3.1.集群结构 这里我们搭建一个三节点形成的Sentinel集群来监管之前的Redis主从集群。如图 三个sentinel实例信息如下 节点IPPORTs1192.168.150.10127001s2192.168.150.10127002s3192.168.150.10127003 3.2.准备实例和配置 要在同一台虚拟机开启3个实例必须准备三份不同的配置文件和目录配置文件所在目录也就是工作目录。 我们创建三个文件夹名字分别叫s1、s2、s3 # 进入/tmp目录 cd /tmp # 创建目录 mkdir s1 s2 s3 如图 然后我们在s1目录创建一个sentinel.conf文件添加下面的内容记得改ip地址 port 27001 sentinel announce-ip 192.168.150.101 sentinel monitor mymaster 192.168.150.101 7001 2 sentinel down-after-milliseconds mymaster 5000 sentinel failover-timeout mymaster 60000 dir /tmp/s1 解读 port 27001是当前sentinel实例的端口 sentinel monitor mymaster 192.168.150.101 7001 2指定主节点信息 mymaster主节点名称自定义任意写 192.168.150.101 7001主节点的ip和端口 2选举master时的quorum值 然后将s1/sentinel.conf文件拷贝到s2、s3两个目录中在/tmp目录执行下列命令 # 方式一逐个拷贝 cp s1/sentinel.conf s2 cp s1/sentinel.conf s3 # 方式二管道组合命令一键拷贝 echo s2 s3 | xargs -t -n 1 cp s1/sentinel.conf修改s2、s3两个文件夹内的配置文件将端口分别修改为27002、27003 sed -i -e s/27001/27002/g -e s/s1/s2/g s2/sentinel.conf sed -i -e s/27001/27003/g -e s/s1/s3/g s3/sentinel.conf3.3.启动 为了方便查看日志我们打开3个ssh窗口分别启动3个redis实例启动命令 # 第1个 redis-sentinel s1/sentinel.conf # 第2个 redis-sentinel s2/sentinel.conf # 第3个 redis-sentinel s3/sentinel.conf启动后 3.4.测试 尝试让master节点7001宕机查看sentinel日志 查看7003的日志 查看7002的日志 四、搭建分片集群。 4.1.集群结构 分片集群需要的节点数量较多这里我们搭建一个最小的分片集群包含3个master节点每个master包含一个slave节点结构如下 这里我们会在同一台虚拟机中开启6个redis实例模拟分片集群信息如下 IPPORT角色192.168.150.1017001master192.168.150.1017002master192.168.150.1017003master192.168.150.1018001slave192.168.150.1018002slave192.168.150.1018003slave 4.2.准备实例和配置 删除之前的7001、7002、7003这几个目录重新创建出7001、7002、7003、8001、8002、8003目录 # 进入/tmp目录 cd /tmp # 删除旧的避免配置干扰 rm -rf 7001 7002 7003 # 创建目录 mkdir 7001 7002 7003 8001 8002 8003 在/tmp下准备一个新的redis.conf文件内容如下 port 6379 # 开启集群功能 cluster-enabled yes # 集群的配置文件名称不需要我们创建由redis自己维护 cluster-config-file /tmp/6379/nodes.conf # 节点心跳失败的超时时间 cluster-node-timeout 5000 # 持久化文件存放目录 dir /tmp/6379 # 绑定地址 bind 0.0.0.0 # 让redis后台运行 daemonize yes # 注册的实例ip replica-announce-ip 192.168.150.101 # 保护模式 protected-mode no # 数据库数量 databases 1 # 日志 logfile /tmp/6379/run.log 将这个文件拷贝到每个目录下 # 进入/tmp目录 cd /tmp # 执行拷贝 echo 7001 7002 7003 8001 8002 8003 | xargs -t -n 1 cp redis.conf 修改每个目录下的redis.conf将其中的6379修改为与所在目录一致 # 进入/tmp目录 cd /tmp # 修改配置文件 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t sed -i s/6379/{}/g {}/redis.conf 4.3.启动 因为已经配置了后台启动模式所以可以直接启动服务 # 进入/tmp目录 cd /tmp # 一键启动所有服务 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t redis-server {}/redis.conf 通过ps查看状态 ps -ef | grep redis 发现服务都已经正常启动 如果要关闭所有进程可以执行命令 ps -ef | grep redis | awk {print $2} | xargs kill 或者推荐这种方式 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t redis-cli -p {} shutdown4.4.创建集群 虽然服务启动了但是目前每个服务之间都是独立的没有任何关联。 我们需要执行命令来创建集群在Redis5.0之前创建集群比较麻烦5.0之后集群管理命令都集成到了redis-cli中。 1Redis5.0之前 Redis5.0之前集群命令都是用redis安装包下的src/redis-trib.rb来实现的。因为redis-trib.rb是有ruby语言编写的所以需要安装ruby环境。 # 安装依赖 yum -y install zlib ruby rubygems gem install redis 然后通过命令来管理集群 # 进入redis的src目录 cd /tmp/redis-6.2.4/src # 创建集群 ./redis-trib.rb create --replicas 1 192.168.150.101:7001 192.168.150.101:7002 192.168.150.101:7003 192.168.150.101:8001 192.168.150.101:8002 192.168.150.101:8003 2Redis5.0以后 我们使用的是Redis6.2.4版本集群管理以及集成到了redis-cli中格式如下 redis-cli --cluster create --cluster-replicas 1 192.168.150.101:7001 192.168.150.101:7002 192.168.150.101:7003 192.168.150.101:8001 192.168.150.101:8002 192.168.150.101:8003 命令说明 redis-cli --cluster或者./redis-trib.rb代表集群操作命令 create代表是创建集群 --replicas 1或者--cluster-replicas 1 指定集群中每个master的副本个数为1此时节点总数 ÷ (replicas 1) 得到的就是master的数量。因此节点列表中的前n个就是master其它节点都是slave节点随机分配到不同master 运行后的样子M代表masterS代表slave 这里输入yes则集群开始创建 通过命令可以查看集群状态 redis-cli -p 7001 cluster nodes 在Redis集群中每个节点都会存储整个集群的节点信息因此连接到一个节点后就可以通过执行cluster nodes命令来获取整个集群的节点信息。 redis-cli -p 7001 cluster nodes命令的含义是通过 Redis 客户端命令行工具连接到端口号为 7001 的 Redis 服务器并发送cluster nodes命令以获取该 Redis 集群中所有节点的详细信息。 4.5.测试 尝试连接7001节点存储一个数据 # 连接 redis-cli -p 7001 # 存储数据 set num 123 # 读取数据 get num # 再次存储 set a 1 结果悲剧了 集群操作时需要给redis-cli加上-c参数才可以 redis-cli -c -p 7001 这次可以了 五、单点redis的问题。 六、Redis持久化。 1RDB持久化。 RDB全称Redis Database Backup fileRedis数据备份文件也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘中。当Redis实例故障重启后从磁盘读取快照文件恢复数据。 快照文件称为RDB文件默认是保存在当前运行目录。   Redis停机时会执行一次RDB。 Redis内部有触发RDB的机制可以在redis.conf文件中找到格式如下 RDB的其它配置也可以在redis.conf文件中设置 服务停止时就是save操作。 save 60 1000这种就是bgsave操作。 RDB的持久化每次都是把内存全部写一遍。 2 AOF持久化。 AOF是异步的写入aof文件开启子进程来操作。         AOF是记录命令等下次恢复的时候执行AOF文件的命令就能恢复回来。只记录修改的查看的不加如get name等命令不会记录。         如果还未触发对key的重写则AOF文件中或许有多个同key的命令通过执行bgrewriteaof命令可以让AOF文件执行重写功能。 禁用RDB AOF效果查看该截图没有触发重写功能所以多次set同一个key也会记录下来恢复数据时后面覆盖前面。 附录执行命令的图是只截图一部分而AOF文件则是全部截图了。 执行重写功能后效果 3RDB和AOF的对比。 七、Redis主从。 1搭建主从架构。 具体操作请看前面。 从节点只能读操作不能写操作。 假设有A、B两个Redis实例如何让B作为A的slave节点 •  在 B 节点执行命令 slaveof A 的 IP A 的 port 2 主从数据同步原理。 2.1全量同步 在没有成为从节点时每个节点都是master节点所以都有自己的Replication Id如果Replication Id不相同则为第一次同步。 简述全量同步的流程 • slave 节点请求增量同步 • master 节点判断 replid 发现不一致拒绝增量同步 • master 将完整内存数据生成 RDB 发送 RDB 到 slave • slave 清空本地数据加载 master 的 RDB • master 将 RDB 期间的命令记录在 repl_baklog 并持续将 log 中的命令发送给 slave • slave 执行接收到的命令保持与 master 之间的同步 2.2增量同步 2.3优化redis主从集群 无磁盘复制就是直接发送到网络原本是写入磁盘RDB文件后再将RDB文件发出去 提示上面的结构图后面两个slave节点把它前面的slave节点当主节点。 2.4总结 简述全量同步和增量同步区别 • 全量同步 master 将完整内存数据生成 RDB 发送 RDB 到 slave 。后续命令则记录在 repl_baklog 逐个发送给 slave 。 • 增量同步 slave 提交自己的 offset 到 master master 获取 repl_baklog 中从 offset 之后的命令给 slave 什么时候执行全量同步 • slave 节点第一次连接 master 节点时 • slave 节点断开时间太久 repl_baklog 中的 offset 已经被覆盖时 什么时候执行增量同步 • slave 节点断开又恢复并且在 repl_baklog 中能找到 offset 时 •  slave 节点宕机恢复后可以找 master 节点同步数据那 master 节点宕机怎么办 因为其他slave节点一直跟master同步master宕机后只需要选一个slave当master即可宕机节点恢复后变成slave节点。这个过程哨兵机制来操作。 八、Redis哨兵。 1哨兵的作用和原理。 总结 Sentinel的三个作用是什么 • 监控 • 故障转移 • 通知 Sentinel如何判断一个redis实例是否健康 • 每隔 1 秒发送一次 ping 命令如果超过一定时间没有相向则认为是主观下线 • 如果大多数 sentinel 都认为实例主观下线则判定服务下线 故障转移步骤有哪些 • 首先选定一个 slave 作为新的 master 执行 slaveof no one • 然后让所有节点都执行 slaveof 新 master • 修改故障节点配置添加 slaveof 新 master 2搭建哨兵集群。 具体操作请看前面部署部分。 3RedisTemplate的哨兵模式。 读写分离配置 SpringBootApplication public class RedisDemoApplication {Beanpublic LettuceClientConfigurationBuilderCustomizer clientConfigurationBuilderCustomizer(){return clientConfigurationBuilder - clientConfigurationBuilder.readFrom(ReadFrom.REPLICA_PREFERRED);}public static void main(String[] args) {SpringApplication.run(RedisDemoApplication.class, args);} } 微服务会与所有节点都建立连接。 为什么配置文件中指定了在 Redis Sentinel 中被监控的主节点名称为 mymaster 因为在搭建哨兵集群的时候我们指定了主节点的名称。 redis.sentinel.master配置指定的是在Redis Sentinel中被监控的主服务器的名称。这个名称是在Redis Sentinel配置文件中定义的用于标识被监控的主服务器。在Spring Boot中通过指定这个名称可以让应用程序知道它需要连接哪个被监控的主服务器。 访问微服务效果 微服务从sentinelsentinel从master节点中获取全部节点的ip地址和信息 九、Redis分片集群。 1搭建分片集群。 搭建集群请看前面。 2散列插槽。 效果根据操作的插槽跳到不同ip地址的redis客户端 总结 Redis如何判断某个key应该在哪个实例 • 将 16384 个插槽分配到不同的实例 • 根据 key 的有效部分计算哈希值对 16384 取余 • 余数作为插槽寻找插槽所在实例即可 如何将同一类数据固定的保存在同一个Redis实例 • 这一类数据使用相同的有效部分例如 key 都以 { typeId } 为前缀 使用了{a}num后有效部分就是a了这样相同有效部分就不需要重定向了。 3集群伸缩。 案例1 操作 1.创建7004目录并且复制一份redis.conf到7004中。 2.修改端口为7004把7004节点添加到集群中。 redis-cli --cluster add-node 192.168.203.129:7004 192.168.203.129:7001 命令添加的是一个新的主节点。它会从指定的源节点IP 地址为 192.168.203.129端口号为 7001获取集群的信息并将新节点添加到集群中。 3.该命令会重新分配插槽。需要填写具体信息 填写要转移的插槽数量3000 填写转移到的节点的ID75d7c8436ffb5c4cb225223f41c12bf66e8f85b37004节点的ID 添加转移插槽的源节点30ddf8b0216fb34e19405cb37d0edfff8f1c60867001节点ID 填完源节点后输入done结束done 问你是否确定要转移插槽 4.可以看到7001节点已经把3000个的插槽移到7004节点上。 4故障转移。 4.1 自动故障转移。 watch redis-cli -p 7001 cluster nodes     #动态查看集群状态 使用shutdown命令让7002下线后从节点8003变成主节点 slave字段后面跟着主节点IDmaster后面是ID的。 7002节点恢复后变成从节点 从这里可以看出来分片集群自动具备这种主从故障切换的功能。 4.2手动故障转移。  手动故障转移 使用cluster failover后从节点变成主节点主节点变成从节点。 案例 效果如下 5RedisTemplate访问分片集群。 Lettuce 是一个高性能、可伸缩的 Redis 客户端。
http://www.zqtcl.cn/news/348960/

相关文章:

  • 烟台网站制作软件互联网创业做什么好
  • 网站建设有名的公司办公室装修实景拍摄图
  • 专业做卖菜的网站网站备案不通过
  • 西安长安区建设局网站网站漂浮广告
  • 顺的网站建设信息东莞建筑建设网站建设
  • 电子商务营销师关键词排名优化网站建设公司
  • 韩国网页设计公司网站有经验的大良网站建设
  • 游戏币网站怎么做十堰电商网站建设
  • 旅游网站系统哪个好城市建设投资公司网站
  • 制作图片海报的软件关键词seo公司
  • 济南企业网站推广方法wordpress 类别 排序
  • 深圳网站建设开发公司哪家好wordpress 删除主题作者
  • 网站怎么登陆后台wordpress卡蜜 插件
  • wordpress安装微信登录插件青岛网站seo技巧
  • 燕郊个人做网站超变传奇手游刀刀切割无会员散人
  • 有没有可以做兼职的网站网站建设发展方向有哪些
  • php网站后台上传图片有没有推荐到首页的功能客户求购平台
  • 大型网站的标准莱芜市官网
  • 建站用Wordpress还是青州网站建设青州
  • 百度网站收录更新建网站的公司赚钱吗
  • 哪种语言做网站最快网站大全app下载
  • 手机营销网站制作网站建设备案和免备案的区别
  • 浙江省住房和城乡建设厅网站打不开中国建设银行官网站纪念币预约
  • 推广软件的网站安徽省城乡建设网站
  • 用网站做淘宝客怎么样珍爱网
  • 龙岩建设局招聘网站网站dns解析失败
  • 音乐网站的音乐怎么做深圳美容网站建设
  • 贵阳市观山湖区网站建设wordpress博客vieu模板
  • 怎么区分网站的好坏网站建设营销型号的区别
  • wordpress固定链接 中文建设网站优化