keepalive

VUE(keep-alive) 返回上一页 不刷新页面

雨燕双飞 提交于 2019-11-29 21:50:14
关于页面不刷新keep-alive 在vue中的使用方式 方法一(页面只刷新一次,任何页面跳转到这个页面都不刷新) 直接在你的router-view 标签外面包一个keep-alive 加include=“组件名称” < keep - alive include = "FileList" > < router - view > < / router - view > < / keep - alive > 这时候匹配到的组件就会值加在一次。这个就比较简单,但能使用性不广。 方法二(keep-alive与vue-router配合使用) 配置路由的时候需要加 keepAlive: true 参数 (我把代码完整贴出来,有点长) import Vue from 'vue' import Router from 'vue-router' import xxx form 'xxx' //等等类似组件 Vue . use ( Router ) export default new Router ( { mode : 'hash' , //history routes : [ { path : '/login' , //登录页 name : 'Login' , component : Login } , { path : '/regist' , //注册页 name : 'Regist' ,

keepalive知识杂记

天大地大妈咪最大 提交于 2019-11-29 05:46:59
VIP漂移 在使用keepalive实现高可用过程中,如果vip发生漂移,则会触发主机在局域网中发送ARP Response广播,通知局域网中的其他主机更新ARP表项。 来源: https://my.oschina.net/mojiewhy/blog/3101662

性能优化 | Tomcat和JVM的性能调优总结

試著忘記壹切 提交于 2019-11-29 05:38:30
Tomcat性能调优: 找到Tomcat根目录下的conf目录,修改server.xml文件的内容。对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创建的线程数的设置,当然还有其他一些性能调优的设置,下图是我根据我机子的性能设置的一些参数值,给各位详细解释一下吧: 1、 URIEncoding=“UTF-8” :设置Tomcat的字符集。这种配置我们一般是不会设置的,因为关于乱码的转换我们会在具体项目中具体处理,直接修改Tomcat的字符集未免过于太死板。 2、 maxThreads=“300” :设置当前Tomcat的最大并发数。Tomcat默认配置的最大请求数是150个,即同时能支持150个并发。但是在实际运用中,最大并发数与硬件性能和CPU数量都有很大关系的,更好的硬件、更高的处理器都会使Tomcat支持更多的并发数。如果一般在实际开发中,当某个应用拥有 250 个以上并发的时候,都会考虑到应用服务器的集群。 3、 minSpareThreads=“50” :设置当前Tomcat初始化时创建的线程数,默认值为25。 4、 acceptCount=“250” :当同时连接的人数达到maxThreads参数设置的值时,还可以接收排队的连接数量,超过这个连接的则直接返回拒绝连接。指定当任何能够使用的处理请求的线程数都被使用时

解决“The underlying connection was closed: An unexpected error occurred on a receive“

血红的双手。 提交于 2019-11-29 00:06:31
1、该报错翻译 The underlying connection was closed: An unexpected error occurred on a receive 底层的链接被关闭: 某个希望保持活跃的链接被关闭了.错误发生在接收端 2、关键在于bug重现 也许bug不会一下子重现,但是我们需要一定的时间来测试。 使用ftp上传文件,主要是因为网络的问题,ping都丢包,怎么可能不断,但是也没程序卡死啊,问题还是需要持续跟踪下 3、该bug产生的原因分析 在NET 1.1,微软推出了一个称为“KeepAlive”的新特性。当你做web请求时,服务器将在短时间内保持连接,多个请求使用相同的连接。这将极大地提高服务器的性能,通过重用相同的连接避免反复打开。 然而,在NET 2.0这个重用机制似乎有一个相同的问题。默认值是“TRUE”,偶尔连接被关闭,但客户可以继续使用连接。客户端请求服务器保持连接打开,但服务器关闭了它,这就会导致客户端出现报错! System.Net.WebException和你会得到上面的错误消息。 4、解决方法 Until Microsoft解决这个问题之前,你必须做一些与你的web请求调用方法。您必须显式地设置KeepAlive属性为FALSE,那样连接本身将被关闭,并且为每个请求重新打开。这将避免试图使用一个封闭连接的问题。

H3C DRNI学习

前提是你 提交于 2019-11-28 17:46:13
DRNI:Distributed Resilient Network Interconnect,分布式弹性网络互连。 DR:分布式聚合接口 IPP:内部控制链路端口 IPL:内部控制链路 DRCP报文:分布式聚合控制协议数据单元 Keepalive机制:DR设备间通过交互Keepalive报文来进行IPL故障时的双主检测。 DRNI建立及工作过程----------- 1.DRCP报文协议协商; 当DR设备完成DR系统参数配置后,两端设备通过IPL链路定期发送DRCP报文。当本端收到对端的DRCP协商报文后,会判断DRCP协商报文中的DR系统配置是否和本端相同。如果两端的DR系统配置相同,则这两台设备组成DR系统。 2.DR系统建立; 3.主从协商; 配对成功后,两端设备会确定出主从状态。先比较DR设备角色优先级,值越小优先级越高,优先级高的为主设备。如果优先级相同,则比较两台设备的桥MAC地址,桥MAC地址较小的为主设备。主从协商后,DR设备间会进行配置一致性检查。 4.收发Keepalive报文; 两端设备通过Keepalive链路周期性地发送Keepalive报文检测邻居状态。 5.数据同步 DR系统开始工作后,两端设备之间会实时同步对端的信息,例如MAC地址表项、ARP表项,这样任意一台设备故障都不会影响流量的转发,保证正常的业务不会中断。 来源: https://www

【KeepAlive】Http--Keep-Alive及Tcp--Keepalive

和自甴很熟 提交于 2019-11-27 18:04:47
Keep-Alive模式: Http协议采用“请求-应答”模式,当使用普通模式,即非Keep-Alive模式时,每个请求/应答,客户端和服务器都要新建一个连接,完成之后立即断开连接;当使用Keep-Alive模式时,Keep-Alive功能使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接。 http1.0中默认是关闭的,需要在http头加入”Connection: Keep-Alive”,才能启用Keep-Alive; http 1.1中默认启用Keep-Alive,如果加入”Connection: close “才关闭。目前大部分浏览器都是用http1.1协议,也就是说默认都会发起Keep-Alive的连接请求了,所以是否能完成一个完整的Keep- Alive连接就看服务器设置情况。下图是普通模式和长连接模式的请求对比: 开启Keep-Alive的优缺点: 优点:Keep-Alive模式更加高效,因为避免了连接建立和释放的开销。 缺点:长时间的Tcp连接容易导致系统资源无效占用,浪费系统资源。 当保持长连接时,如何判断一次请求已经完成? Content-Length Content-Length表示实体内容的长度。浏览器通过这个字段来判断当前请求的数据是否已经全部接收。 所以,当浏览器请求的是一个静态资源时

压测引起的 nginx报错 502 no live upstreams while connecting to upstream解决

我与影子孤独终老i 提交于 2019-11-27 11:14:47
对系统的某个接口进行极限压测,随着并发量上升,nginx开始出现502 no live upstreams while connecting to upstream的报错,维持最大并发量一段时间,发现调用接口一直返回502,即nginx已经发现不了存活的后端了。 通过跟踪端口,发现nginx 跟后端创建了大量的连接。这很明显是没有使用http1.1长连接导致的。因此在upstream中添加keepalive配置。 upstream yyy.xxx.web{ server 36.10.xx.107:9001; server 36.10.xx.108:9001; keepalive 256; } server { ··· location /zzz/ { proxy_pass http://yyy.xxx.web; ··· } } 根据官方文档的说明:该参数开启与上游服务器之间的连接池,其数值为每个nginx worker可以保持的最大连接数,默认不设置,即nginx作为客户端时keepalive未生效。 默认情况下 Nginx 访问后端都是用的短连接(HTTP1.0),一个请求来了,Nginx 新开一个端口和后端建立连接,请求结束连接回收。如果配置了http 1.1长连接,那么Nginx会以长连接保持后端的连接,如果并发请求超过了 keepalive 指定的最大连接数,Nginx

nginx的so_keepalive和timeout相关小计

蓝咒 提交于 2019-11-27 08:19:21
KeepAlive 这里的keepalive是TCP的探活机制: [root@ ~]# sysctl -a |grep tcp_keepalive net.ipv4.tcp_keepalive_time = 1200 net.ipv4.tcp_keepalive_probes = 9 net.ipv4.tcp_keepalive_intvl = 75 参数解释: tcp_keepalive_time 1200 ,tcp建立链接后1200 秒如果无数据传输,则会发出探活数据包 tcp_keepalive_probes 9 , 共发送9次 tcp_keepalive_intvl 75 ,每次间隔75秒 KeepAlive并不是默认开启的,在Linux系统上没有一个全局的选项去开启TCP的KeepAlive。需要开启KeepAlive的应用必须在TCP的socket中单独开启。 TCP socket也有三个选项和内核对应,通过setsockopt系统调用针对单独的socket进行设置: TCPKEEPCNT: 覆盖 tcpkeepaliveprobes TCPKEEPIDLE: 覆盖 tcpkeepalivetime TCPKEEPINTVL: 覆盖 tcpkeepalive_intvl Nginx server { listen 127.0.0.1:3306 so_keepalive

Vue.js(23)之 keepAlive和activated

怎甘沉沦 提交于 2019-11-27 00:37:40
阅读: vue中前进刷新、后退缓存用户浏览数据和浏览位置的实践 keep-alive 组件级缓存 keep-alive <keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。 <keep-alive> 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中,不会渲染到DOM树中。 它的作用是在内存中缓存组件(不让组件销毁),等到下次渲染是,还会保留在原来额状态。 当组件在 <keep-alive> 内被切换,它的 activated 和 deactivated 这两个生命周期钩子函数将会被对应执行。 使用: <keep-alive include="mainList"> <router-view class="child-view"></router-view> </keep-alive> keep-alive的属性: include - 字符串或正则表达式。只有名称匹配的组件会被缓存。 exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存。 include 和 exclude 属性允许组件有条件地缓存。二者都可以用逗号分隔字符串、正则表达式或一个数组来表示 max - 数字。最多可以缓存多少组件实例,一旦这个数字达到了,在新实例被创建之前,已缓存组件中最久没有被访问的实例会被销毁掉。 组件匹配首先检查组件自身的