精华内容
下载资源
问答
  • keep-alive可以实现组件缓存,当组件切换时不会对当前组件进行卸载 <keep-alive></keep-alive> 包裹动态组件时,会缓存不活动的组件实例,主要用于保留组件状态或避免重新渲染 比如有一个列表和一个...

    keep-alive可以实现组件缓存,当组件切换时不会对当前组件进行卸载

    • <keep-alive></keep-alive> 包裹动态组件时,会缓存不活动的组件实例,主要用于保留组件状态或避免重新渲染

    比如有一个列表和一个详情,那么用户就会经常执行打开详情=>返回列表=>打开详情…这样的话列表和详情都是一个频率很高的页面,那么就可以对列表组件使用<keep-alive></keep-alive>进行缓存,这样用户每次返回列表的时候,都能从缓存中快速渲染,而不是重新渲染

    • 常用的两个属性include/exclude,允许组件有条件的进行缓存
    • 两个生命周期activated/deactivated,用来得知当前组件是否处于活跃状态
    展开全文
  • http keep-alive与tcp keep-alive,不是同一回事,意图不一样。...而tcp keep-alive是TCP的一种检测TCP连接状况的保鲜机制。tcp keep-alive保鲜定时器,支持三个系统内核配置参数: echo 1800 > /proc/sys/net

    http keep-alive与tcp keep-alive,不是同一回事,意图不一样。http keep-alive是为了让tcp活得更久一点,以便在同一个连接上传送多个http,提高socket的效率。而tcp keep-alive是TCP的一种检测TCP连接状况的保鲜机制。tcp keep-alive保鲜定时器,支持三个系统内核配置参数:

    echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time
    echo 15 > /proc/sys/net/ipv4/tcp_keepalive_intvl
    echo 5 > /proc/sys/net/ipv4/tcp_keepalive_probes
    keepalive是TCP保鲜定时器,当网络两端建立了TCP连接之后,闲置idle(双方没有任何数据流发送往来)了 tcp_keepalive_time后,服务器内核就会尝试向客户端发 送侦测包,来判断TCP连接状况(有可能客户端崩溃、强制关闭了应用、主机不可达等等)。如果没有收到对方的回答(ack包),则会在 tcp_keepalive_intvl后再次尝试发送侦测包,直到收到对对方的ack,如果一直没有收到对方的ack,一共会尝试 tcp_keepalive_probes次,每次的间隔时间在这里分别是15s, 30s, 45s, 60s, 75s。如果尝试tcp_keepalive_probes,依然没有收到对方的ack包,则会丢弃该TCP连接。TCP连接默认闲置时间是2小时,一般 设置为30分钟足够了。也就是说,仅当nginx的keepalive_timeout值设置高于tcp_keepalive_time,并且距此tcp连接传输的最后一 个http响应,经过了tcp_keepalive_time时间之后,操作系统才会发送侦测包来决定是否要丢弃这个TCP连接。一般不会出现这种情况, 除非你需要这样做。


    使用http keep-alvie,可以减少服务端TIME_WAIT数量(因为由服务端httpd守护进程主动关闭连接)。道理很简单,相较而言,启用keep-alive,建立的tcp连接更少了,自然要被关闭的tcp连接也相应更少了。

    用一张示意图片来说明使用启用keepalive的不同。


    展开全文
  • 关于http keep-alive与tcp keep-alive

    千次阅读 2016-06-16 02:10:24
    1、什么是HTTP  Keep-Alive模式  我们知道HTTP协议采用“请求-应答”模式,当使用普通模式,即非KeepAlive模式时,每个请求/应答客户和服务器都要新建一个连接,完成之后立即断开连接(HTTP协议为无连接的协议);...

    1、HTTP  Keep-Alive模式

           我们知道HTTP协议采用“请求-应答”模式,当使用普通模式,即非KeepAlive模式时,每个请求/应答客户和服务器都要新建一个连接,完成之后立即断开连接(HTTP协议为无连接的协议);当使用Keep-Alive模式(又称持久连接、连接重用)时,Keep-Alive功能使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接。

    通过使用Keep-Alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。

                                  

    Keep-Alive模式在http 1.0中默认是关闭的,需要在http头加入"Connection: Keep-Alive",才能启用Keep-Alive;而在http 1.1中是默认启用Keep-Alive,如果加入"Connection: close ",才关闭。目前大部分浏览器都是用http1.1协议,也就是说默认都会发起Keep-Alive的连接请求了,所以是否能完成一个完整的Keep-Alive连接就看服务器设置情况。而且可以在服务器端设置是否支持Keep-Alive。

    2、TCP  Keep-Alive模式

    在一个正常的TCP连接上,当我们用无限等待的方式调用下面的recv或send的时候:

             ret=recv(s,&buf[idx],nLeft,flags);或

             ret=send(s,&buf[idx],nLeft,flags);

    如果TCP连接被对方正常关闭,也就是说,对方是正确地调用了closesocket(s)或者shutdown(s)的话,那么上面的recv或send调用就能马上返回,并且报错。这是由于closesocket()或者shutdown()有个正常的关闭过程,会告诉对方“TCP连接已经关闭,你不需要再发送或者接受消息了”。但是,如果是网线突然被拔掉,TCP连接的任何一端的机器突然断电或重启动,那么这时候正在执行recv或send操作的一方就会因为没有任何连接中断的通知而一直等待下去,也就是会被长时间卡住。这种情形解决的办法是启动TCP编程里的keepAlive机制。

    HTTP Keep-Alive与TCP Keep-Alive,不是同一回事,意图不一样。HTTP Keep-Alive是为了让Tcp活得更久一点,以便在同一个连接上传送多个http,提高socket的效率。而TCP Keep-Alive是TCP的一种检测TCP连接状况的保鲜机制。TCP Keep-Alive保鲜定时器,支持三个系统内核配置参数:

    echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time

    echo 15 > /proc/sys/net/ipv4/tcp_keepalive_intvl

    echo 5 > /proc/sys/net/ipv4/tcp_keepalive_probes

    keepalive是TCP保鲜定时器,当网络两端建立了TCP连接之后,闲置idle(双方没有任何数据流发送往来)了tcp_keepalive_time后,服务器内核就会尝试向客户端发送侦测包,来判断TCP连接状况(有可能客户端崩溃、强制关闭了应用、主机不可达等等)。如果没有收到对方的回答(ack包),则会在 tcp_keepalive_intvl后再次尝试发送侦测包,直到收到对对方的ack,如果一直没有收到对方的ack,一共会尝试 tcp_keepalive_probes次,每次的间隔时间在这里分别是15s, 30s, 45s, 60s, 75s。如果尝试tcp_keepalive_probes,依然没有收到对方的ack包,则会丢弃该TCP连接。TCP连接默认闲置时间是2小时,一般设置为30分钟足够了。

    也就是说,仅当nginx的keepalive_timeout值设置高于tcp_keepalive_time,并且距此tcp连接传输的最后一个http响应,经过了tcp_keepalive_time时间之后,操作系统才会发送侦测包来决定是否要丢弃这个TCP连接。一般不会出现这种情况,除非你需要这样做。



    展开全文
  • nuxt keep-alive :keep-alive-props="{ include: includeArr }" /> // js data () { return { includeArr: ['cardApplyQuery'] // 需要缓存的组件名数组 } } 2、在组件中添加name属性 这个是好多网上教程...

    1、在标签上添加属性

    <nuxt  keep-alive :keep-alive-props="{ include: includeArr }" />
    
    // js
    data () {
    	return {
    		includeArr: ['cardApplyQuery'] // 需要缓存的组件名数组
    	}
    }
    

    2、在组件中添加name属性

    这个是好多网上教程没有点明的,这里重点提出。一定要在组件中加上对应的name

    export default {
    	name: 'cardApplyQuery'
    }
    

    其他 expend 等属性也是支持的。不详细列出。


    码字不易,觉得有帮助的小伙伴右上角点个赞鼓励下~

    在这里插入图片描述

    扫描上方二维码关注我的订阅号~

    展开全文
  • ##Keep-alive什么 `是Vue的内置组件 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。 ##Keep-alive的使用场景: 在 vue 项目中,难免会有列表页面或者搜索结果列表页面,点击某个结果之后,返回回来时...
  • Http keep-alive 与Tcp keep-alive

    千次阅读 2016-03-31 17:01:50
    前两天面试遇到一个问题:如果让你...而且以为Http keep-alive与Tcp keep-alive是差不多的,所以根本没去讲两者之间的keep-alive。每次面试回答问题都有点着急,所以思考不够。实际上两者是不同的,下面分别介绍一下。
  • Vue 的 keep-alive作用是什么

    千次阅读 2020-04-13 14:30:15
    keep-alive可以在组件切换时,保存其包裹的组件的状态,使其不被销毁,防止多次渲染。 其拥有两个独立的生命周期钩子函数 actived 和 deactived,使用keep-alive包裹的组件在切换时不会被销毁,而是缓存到内存中并...
  • vue中keep-alive的使用及详解

    万次阅读 多人点赞 2019-05-19 09:03:35
        keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 transition 相似,keep-alive 是一个抽象组件:它自身不会渲染成一个 DOM 元素,也不会出现在父组件链中。...
  • 看到keep-alive你能想到的一定是缓存俩个字,http中connection的keep-alive也是这样吗?那可不一定,下面我们就来讲讲connection的keep-alive....一、什么keep-alive? keep-alive 是客户端和服务端的一个约
  • HTTP Keep-Alive作用

    千次阅读 2019-02-18 18:06:30
    作用Keep-Alive:使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接。Web服务器,基本上都支持HTTP Keep-Alive。 缺点:对于提供静态内容的网站来说,这...
  • 2.keep-alive作用3.keep-alive的参数4.什么时候用到keep-alive,并且怎么使用5.生命周期 钩子函数5.1 只执行一次的钩子5.2 可重复的activated 目录: 1.首先什么keep-alivekeep-alive是一个抽象组件:它自身...
  • keep-alive

    2020-07-18 22:40:05
    keep-alive什么,以及keep-alive作用 在http早期,每个http请求都要打开一个tcp连接,并且在使用过一次之后就断开这个连接。使用kepp-alive可以改善这种状态,即在一次tcp连接中可以持续发送多份儿数据还不会断开...
  • 解决:保留查询条件很简单,直接引入keep-alive,但是清除的话,vue本身没有api直接清除,所以要单独处理。 参考文章:http://aspedrom.com/5HD5 router/index,拦截路由并做处理: beforeRouteLeave:function...
  • keep-alive作用

    千次阅读 2019-06-10 09:46:18
    作用Keep-Alive:使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接。Web服务器,基本上都支持HTTP Keep-Alive。 缺点:对于提供静态内容的网站来说,这...
  • 什么Keep-Alive 这个词看着有点熟,很多地方好像都见过。 TCP的KeepAlive,Http的KeepAlive,现在就连一些前端框架都有类似KeepAlive的东西了(比如VUE.js,保持路由)。 本文介绍HTTP和TCP中的KeepAlive机制,...
  • vue项目使用keep-alive作用

    千次阅读 2020-02-08 15:45:46
    vue项目使用keep-alive作用 在vue项目中,难免会有列表页面或者搜索结果列表页面,点击某个结果之后,返回回来时,如果不对结果页面进行缓存,那么返回列表页面的时候会回到初始状态,但是我们想要的结果是返回时这...
  • HTTP Keep-Alive什么?如何工作?

    千次阅读 2017-12-08 11:05:55
    使用keep-alive可以改善这种状态,即在一次TCP连接中可以持续发送多份数据而不会断开连接。通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的...
  • http keep-alive

    万次阅读 2020-09-17 21:27:17
    client发出的HTTP请求头需要增加Connection:keep-alive字段 Web-Server端要能识别Connection:keep-alive字段,并且在http的... 告诉client,我能提供keep-alive服务,并且"应允"client我暂时不会关闭socket连接 ...
  • 在vue项目中,尤其是h5制作的app,来回跳转的时候,有的地方需要做缓存,一来防止页面...- keep-alive 1. <router-view> <router-view> 组件用于渲染路径匹配到的视图组件。 渲染的组件还可以内嵌自...
  • keep-alive 标签有个 exclude(排除)属性数组,数组里面元素是组件页面的名字,如果exclude数组默认为null即都不排除都使用keep-alive,当在触发刷新时,先把当前页面组件的名字加进去,即排除该组件,等到next...
  • HTTP keep-alive详解

    万次阅读 多人点赞 2017-10-29 17:17:15
    1.为什么要有Connection: keep-alive?在早期的HTTP/1.0中,每次http请求都要创建一个连接,而创建连接的过程需要消耗资源和时间,为了减少资源消耗,缩短响应时间,就需要重用连接。在后来的HTTP/1.0中以及HTTP/1.1...
  • keep-alive的使用

    2018-12-31 22:02:01
    keep-alive作用主要是保留组件的状态和避免重新渲染,可以配合生命周期函数activated和deactivated,activated是keep-alive激活的时候调用,deactivated是keep-alive停止的时候调用,使用方法:...
  • vue,keep-alive作用

    千次阅读 2017-12-13 10:43:36
    项目中写vue也没注意到这个组件,最近在深入的...activated: keep-alive组件激活时调用deactivated: keep-alive组件停用时调用 keep-alive用法 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们是一个抽象组
  • HTTP Keep-Alive

    千次阅读 2018-12-30 19:24:10
    什么是HTTP Keep-Alive呢? 在通过调试工具查看网络...那么Keep-Alive到底是什么呢? HTTP Keep-Alive 在http早期,每个http请求都要求打开一个tpc socket连接,并且使用一次之后就断开这个tcp连接。 使用keep...
  • keep-alive标签的作用

    2020-07-17 19:23:07
    keep-alive标签的用法 keep-alive标签是Vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM。 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。 include: 字符串或正则表达式。只有...
  • keep-alive作用以及使用方法

    千次阅读 2020-04-20 01:43:43
    keep-alive是vue内置的一个组件,而这个组件的作用就是能够缓存不活动的组件,我们能够知道,一般情况下,组件进行切换的时候,默认会进行销毁,如果有需求,某个组件切换后不进行销毁,而是保存之前的状态,那么就...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 144,385
精华内容 57,754
关键字:

keep-alive的作用是什么