keepalived nginx集群 keepalive

keep-alivekeep-alive的作用
页面被keep-alive时,页面内的内容会被缓存,也就是说,切换到另外的页面时,keep-alive的页面不会被清除,返回这个页面后,自动返回到之前切换时的状态(比如表格的分页、滚动条的位置等)
keep-alive的属性
keep-alive有两个属性,分别为include 和exclude
include表示值为字符串或者正则表达式匹配的组件name会被缓存,匹配就缓存
exclude表示值为字符串或者正则表达式匹配的组件name不会被缓存,匹配就不缓存
keep-alive的机制
因为组件被缓存,所以并不会触发vue的destroy的钩子函数,并且之后再切换的时候也不会被重新创建,所以此时要使用activated与deactivated来获取当前组件是否处于活动状态
keep-alive实际运用
1.首先在路由中的mate属性中记录keepalive,如果需要缓存则设置为true
2.在创建router实例的时候加上scrollBehavior方法(keepAlive才会生效)
3.需要缓存的router-view包上keep-alive(要有两个router-view,一个是缓存的时候显示,一个是不缓存的时候显示,有的时候不需要缓存)
如何理解Vue中的keepalive如何理解vue中的keepalive?
什么是keepalive
我们在平时开发中,总有部分组件没必要多次 Init,我们需要将组件进行持久化,使组件状态维持不变,在下一次展示时,也不会重新init
keepalive 音译过来就是保持活跃,所以在vue中我们可以使用keepalive来进行组件缓存
基本使用
上面提到被keepalive包含的组件不会被再次init,也就意味着不会重新走生命周期函数,但是平时工作中很多业务场景是希望我们缓存的组件在再次渲染时能做一些事情,vue为keepalive提供了两个额外的hook,
配合router使用
总结
keepalive是一个抽象组件,缓存vnode,缓存的组件不会被mounted,为此提供activated 和 deactivated 钩子函数, 使用props max 可以控制缓存组件个数
Keepalive和lvs keepalive起初是为LVS设计的,专门用来监控lvs各个服务节点的状态,后来加入了vrrp的功能,因此除了lvs,也可以作为其他服务(nginx,haproxy)的高可用软件 。VRRP是virtual router redundancy protocal(虚拟路由器冗余协议)的缩写 。VRRP的出现就是为了解决静态路由出现的单点故障,它能够保证网络可以不间断的稳定的运行 。所以keepalive一方面具有LVS cluster node healthcheck功能,另一方面也具有LVS director failover 。
keepalive的两大功能:
healthcheck和failover
LVS cluster node healthcheck
keepalive高可用服务原理介绍:
keepalive director高可用之间的故障切换转移,是通过VRRP协议实现的 。
在keepalive director工作时,主节点会不断的向备节点发送心跳消息,告知自己还活着,当主节点故障时,备节点无法接收主节点的心跳消息,此时就会启用自身的服务接管程序将主节点的IP和服务资源接管过来 。当主节点恢复工作之后,又会释放IP资源和服务,恢复至备节点的角色 。
VRRP协议原理简单介绍:
VRRP是通过一种竞选协议协议机制来将路由的任务交给VRRP的路由器 。在一VRRP的虚拟路由中,有多台物理的VRRP路由器,但是这多台路由器不同时工作,而是由一台Master负责路由工作,其他的都是backup,master是由backup竞争而来的,当master失去响应时,会从余下的backup中选出master来接管IP地址和服务资源 。
VRRP协议的所有报文都是通过IP多播的形式传递消息,在一个虚拟路由器中,只有作为Master的VRRP路由器会一直发送VRRP广播包,当其他backup没有收到广播包时候,会迅速抢占master(谁的有限级高,谁就会抢占成功),处于安全性考虑VRRP协议传输数据时候进行了加密 。
VRRP是virtual router redundancy protocal(虚拟路由器冗余协议)的缩写 。
小结:
1,VRRP是virtual router redundancy protocal(虚拟路由器冗余协议)的缩写 。
2,VRRP是通过一种竞选协议协议机制来将路由的任务交给VRRP的路由器 。
3,VRRP协议的所有报文都是通过IP多播的形式传递消息
4,处于安全性考虑VRRP协议传输数据时候进行了加密 。
官方网站:
编译安装yum安装都可
全局配置:
VRRPD 配置:
virtual_server
VRRP同步组
两个vrrp_instance同属于一个vrrp_rsync_group,那么其中一个vrrp_instance发生故障切换时,另一个vrrp_instance也会跟着切换(即使这个instance没有发生故障) 。
VRRP实例
1,Round-robin(RR)轮询:当新请求到达时候,从服务列表中选择一个Real Server,将请求重定向给这台Real Server 。

秒懂生活扩展阅读