什么是MIP MIP是什么

 更新时间:2016年12月21日 21:00  点击:1813
MIP的全称是Mobile Instant Pages,中文名字为移动网页加速器, 是一套应用于移动网页的开放性技术标准。通过提供MIP-HTML规范、MIP-JS运行环境以及MIP-Cache页面缓存系统,实现移动网页加速。

MIP主要由三部分组织成:

  • MIP HTML
  • MIP JS
  • MIP Cache

MIP HTML 基于HTML中的基础标签制定了全新的规范,通过对一部分基础标签的使用限制或功能扩展,使HTML能够展现更加丰富的内容;MIP JS 可以保证 MIP HTML 页面的快速渲染;MIP Cache 用于实现MIP页面的高速缓存,从而进一步提高页面性能。

1. MIP HTML

MIP HTML 基于HTML基础规范进行了扩展,下面是一段简单的MIP HTML代码示例:

<!DOCTYPE html> 
<html mip> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"> 
<link rel="stylesheet" type="text/css" href="https://mipcache.bdstatic.com/static/v1/mip.css"> 
<link rel="canonical" href="https://www.mipengine.org/"> 
<!-- noscript 标签是为了在不支持script的环境下快速的展现 mip 页面,推荐使用 --> 
<noscript> 
<style mip-officialrelease> 
body { 
-webkit-animation:none; 
-moz-animation:none; 
-ms-animation:none; 
animation:none
} 
</style> 
</noscript> 
</head> 
<body>Hello World!</body> 
<script src="https://mipcache.bdstatic.com/static/v1/mip.js"></script> 
</html> 

MIP HTML 规范中有两类标签,一类是HTML常规标签,另一类是MIP标签。MIP标签也被称作 MIP HTML 组件,使用它们来替代HTML常规标签可以大幅提升页面性能。

例如,mip-img标签,它使得图片只在需要时才进行加载,减少了页面渲染时间,节省了用户的流量。

阅读MIP HTML 规范了解更多信息。

2. MIP JS

MIP JS 用于管理资源的加载,并支持上述MIP标签的使用,从而确保页面的快速渲染,提高页面各方面的性能。

MIP JS 最显著的优势是能够异步加载所有外部资源,整个页面渲染过程不会被页面中的某些元素阻塞,从而实现页面渲染速度的提升。

此外,MIP JS 还涵盖了所有iframe的沙盒、于资源加载前提前计算页面元素布局、禁用缓慢css选择器等技术性能。

3. MIP Cache

MIP Cache 是一套基于代理的 CDN(Content Delivery Network) 缓存系统,可用于缓存所有被百度相关页面引用或者从百度相关服务点出的MIP页面。用户在访问 MIP 页面的时候,请求首先会发到 CDN 服务器,如果页面存在,则从 CDN 返回,如果 CDN 上不存在,则会请求第三方服务器。同时 MIP Cache 服务器会将页面缓存到 CDN 上。

在使用 MIP Cache 时,MIP 页面所需要的所有静态文件和外部资源都会被缓存到 CDN 上(视频除外),并且页面中的资源链接会被转换成相对地址,很大程度上提升了页面渲染速度。每一个 MIP 页面都会绑定一个验证系统,在页面进行渲染时,这种验证器可以直接在浏览器控制台中输出页面的错误;并且随着代码逻辑的变化,能够展示其对页面性能以及用户体验的影响。

最近发现不少新站长都还不知道301跳转是什么意思,本次一聚教程网为大家带来了讲解,并且介绍了一些关于301跳转的常见问题,下面请看详细的介绍。

问:什么是301跳转?

答:页面永久性移走,通常叫做301跳转,也叫301重定向、301转向,指的是当用户点击一个网址时,通过技术手段跳转到指定的一个网站,一般在更换域名或路径时使用。

 

问:301跳转方法是什么?

注意:静态网页不可以做301转向

由于静态网页不可以做301转向,您可以使用JS或者其他脚本来解决转向问题。

PHP转向版本

header("HTTP/1.1 301 Moved Permanently");

header("Location: http://你的网址/");

exit();

ASP转向版本

Response.Status="301 Moved Permanently"

Response.AddHeader "Location","http://你的网址/"

Response.End

 

问:我设置了301跳转,多久可以生效?

答:目前百度无法承诺301跳转的生效时间,因为站长感受到的生效时间会受多因素影响,比如Baiduspider再次抓取这个页面发现其设置了301的时间、网页的重要程度以及自身质量等。

 

问:301跳转生效后,原网页是否会被删除?

答:不会,会与跳转后的新网页同时存在。

 

问:原网页新网页都存在,相当于两个内容重复的页面,排名怎么处理?

答:通常百度会认为跳转后的新网页更加重要,原网页是被放弃的网页,会让新网页继承原网页属性,在搜索结果中会优先展现新网页。

 

问:将老域名跳转到新域名,是仅首页301就可以了?还是必须所有页面301?

答:必须所有页面301至新域名的相应页面。

 

问:原域名所有页面都跳转至新域页首页会有什么影响?

答:新域名首页将会替换旧域名首页,新域名首页仅继承旧域名首页的属性,不会产生1+1>2的效果。旧域名在短时间内仍然可查。但随着时间推移,旧域名由于质量下降最终会被清除出数据库。

不少站长都在问网站换域名对网站有什么影响?网页内容改版对网站有什么影响?本次一聚教程网为大家带来了一些相关问题的解答,希望对大家有所帮助。

Q:网站更换域名,会对网站排名有影响吗?对收录有影响吗?

A:会对网站排名和收录造成影响,不推荐更换域名。若品牌需要等原因,必须换域名,建议做好301跳转规则后,在站长工具提交改版规则和死链处理。

Q:网站从目录级更换为二级域名,会对网站排名有影响吗?

A:从目录级更换为二级域名,如之前为www.baidu.com/news/,需更新为news.baidu.com,这类现象视为URL改动,会对网站排名,收录有影响。这类改版同样也需要在站长工具提交改版规则和死链处理。

Q:网站改版多个子域名,换成主站子目录,对主站有影响吗?

A:从子域名更换为子目录,如之前URL为news.baidu.com/news,需更新为www.baidu.com/news/,这类现象视为URL改动,会对网站排名,收录有影响。这类改版同样也需要在站长工具提交改版规则和死链处理。

Q:网站页面排版发生改变,会对网站排名,收录有影响吗?

A:网站页面结构改版,仅是页面样式发生变化,不会对排名、收录有影响;只有涉及到页面URL改变,才会对网站排名、收录有影响。

Q:网站换域名后,旧域名的所有内容全部301指向新域名首页,这样可以吗?

A:强烈建议不要这么做,多个页面跳转到一个页面,首先你在站长工具中提交改版规则是不能通过的,建议将原来的页面301跳转到新域名下对应的页面。

Q:网站换域名后,部分老数据会删除,如何处理?

A:百度站长工具,在原域名下,将删除的URL提交死链

Q:网站换域名后,新旧页面的301跳转关系多长时间可以取消?

A:改版跳转关系请保持至少三个月,直到新站流量完全稳定。

Q:网站换域名后对站长平台上的一些特权会不会有影响,例如LOGO、子链、VIP?

A:Vip会保留,其他则无法替换权限

Q:网站换域名后官网保护可以重新申请吗?和之前的会不会有冲突?

A:需重新申请官网保护,需在反馈中心提交反馈,撤销之前的官网保护及保护需求词

Q:网站换域名后会不会对新闻源有影响?

A:需重新申请新闻源

Q:网站改版,不换域名,但是改变URL结构,对新闻源的收录有没有影响 ?

A:域名结构由abc.com/news换成abc.com/ent等于换域名,仍需重新申请新闻源

Q:网站换域名后,是等待新域名百度收录后再做301跳转,还是新域名上线后立马做跳转关系?

A:不用等百度收录站点,可以立即做跳转;然后到改版工具中提交改版规则,改版校验过程中会抓取校验新连接,如果校验成功,会在最长48小时后线上生效改版规则。

Q:网站服务器调整,会影响收录吗?

A:正常操作没有影响,主要看在切换服务器的时候,网站是否会停止访问,停止访问时间有多长,建议网站在切换服务器的时候,尽量缩短停止访问时间。另外如果网站ip发生变化了,spider如果没有及时发现ip发生变化,会导致抓取失败,影响网站收录

一名优秀的测试人员应该具备哪些素质呢,对于这些基本的素质我们一起和小编来看看吧,具体的细节步骤如下文介绍

对于软件测试人员来说需要具备的素质,我觉得首先最重要的是要有一定的理论知识和测试技能,这是测试工作的基础。那么我们测试人员还应该具备哪些素质才能在工作当中被不断的认可呢?

一名优秀的测试人员应该具有的素质包括:

一、 踏实细心和积极主动
我觉得作为一名测试人员首先要踏实细心。细心:这个不用多解释了吧。粗枝大叶的人是没法做好软件测试的。软件测试,特别是当前国内主流的手动黑盒功能测试。基本上软件测试的工作就是一项重复劳动,需要有一定的耐心来保证不在枯燥的重复劳动中放过那些细小的缺陷。测试人员每天都要面对着枯燥的程序,从事着大量的重复工作,还要尽量发现产品中的bug。如果不踏实,你就坐不住,总想干别的,就无法净下心来想用户有可能怎么用,需求对产品是怎么要求的,现在产品中是怎么做的,哪里可能存在问题。不细心,就特别容易一些产品中微笑的错误,而恰恰就是这些错误是最影响产品形象的问题。
至于积极主动就不多说了。这是每个人都应该具有

二  好奇心,怀疑一切

测试人员,对于手上的项目,如果单单只是去运行它,这样是没法发现问题的。我们测试人员进行测试的主要目的就是发现软件存在缺陷,而不是证明它没有缺陷。如果不抱着怀疑一切的态度就不是一名合格的测试人员。经过你手测试的产品面对的是直接用户。你不认真负责,不抱着怀疑一切的态度。总想着这个功能本版没动应该没什么问题,认为一般人不会去这样操作它,这个功能没什么用户用不用认真测了。这样发出的产品,我是不敢让用户用。因为用户用起产品来是千奇百怪,有些用户的水平和对产品的理解比咱们还要深。所以一定要抱着怀疑一切的态度,从多个方面考虑,认为产品每个功能都可能有问题,多问一个「为什么」,「如果这样,行不行?」,认真地测试产品的每一个测试点。

三  与他人良好交流的能力

众所周知,测试的过程是一个发现问题并且跟踪解决问题的一个过程,在这个过程中,要意识到测试、开发、需求是一个团队,一个整体。离了谁,产品的质量都无法保证。沟通能力作为一项特别重要的软技能,在工作中起着举足轻重的作用。作为一名测试人员,我们在提交问题的时候,要做到条理清晰,必要时配上图片以便别人理解,自己提交的问题只有自己能看懂这可不行。我们还需要和项目经理交流了解最新的客户需求,要和开发人员沟通以便解决缺陷。之前看过一段幽默的开发人员和测试人员的对话:
       测试日常:
开发:这不是软件的问题,我看了测试代码,这个地方有点问题,不该是这样测。
测试:真的吗?我看看…真的啊,稍等我提交一下…谢谢你帮我们找到这个bug。
开发:没事,不用谢…(感觉有什么不对)
       无论是和项目经理还是开发员人交流的时候,态度很重要,这里我说的态度不是低声下气,底气不足的跟她们交流,特别是和开发人员交流时,可能会因为一个bug,两人争执不下发生冲突,这时候我们测试人员要做到分析问题所在,同时也要听听开发人员的想法,心平气和进行交流,最后实在是两人都拿不定注意,可以请示上级。
       四   持续不断的自我提高和总结能力
我觉得无论是哪个行业,都不能停滞不前,自我提高是必须的,这样才不会被淘汰,那么作为一名优秀的测试人员如何提高自己的测试能力呢?
       第一,首先提高自己的测试理论基础。所有的测试基础概念其实都是通用的:静态测试,动态测试,测试用例,等等以及一些测试相关技术:等价类划分,边界值,相信这些方法所有的人每天都在用,但是未必所有的人都能说明白。所以为自己每天所做的测试行动找点理论基础,即有效率有与实践相结合,这也是职业发展的重要一步。
       第二,要对测试的整体流程有完整的概念。这个是目前很多初级测试人员所欠缺的。目前大多数人只知道自己测试的是什么东西,但是不知道自己执行的测试处于什么阶段,下一个阶段是什么,也许整个项目做完不知道;这对于一个产品来说是一个不负责任的行为,所以也就需要测试人员有端到端的测试意识和对测试流程的概念的认可,要有测试整体流程管理的概念。
       第三,在进行测试工作中要弄明白为什么要这么做,为什么要执行这样的案例,为什么要执行相关的测试工作。多问几个为什么。有一个问题要先讲清楚,就是有很多人还没有注意到这个问题,领导让怎么做就怎么做,也许真的做的很熟练了,但是一年后去问他为什么要这么做,相信他也说不出太多,反倒觉得就应该这么测。这样带来直接的弊端就是对自己的职业之路不负责任。
另外,我觉得作为一名合格的测试人员,一定要注意进行总结。通过总结可以对自己的工作进行一个回顾分析,看看那些做得不错,下次还继续这么做。那些工作还有改进的余地。对自己能力的提高是一个很好的帮助。
       五  强烈的责任感
       对于你测试的产品付责任,许多测试人员在早上来到办公室,完成自己的任务,然后晚上下班回家。当软件测试人员完成自己的任务,然后下班收拾东西回家,这种常规的工作方式听起来很正常吧?是的,不得不说,目前我们都是这样的一个状态。要完成一个高质量的产品,我们就要对它负责,那么怎么负责呢?
测试人员要对所测试的对象质量负责,要能保证测试的覆盖到每一需求点,同时要能保证功能都可以正确实现等或者达到了测试通过的标准。
对于测试人员漏测,毕竟人不是完美的,难免会出现错误,但是不能以漏测来做为质量考核。可以对其进行分类分析,究竟是哪个环节出现的问题,提出来进行改进。比如说需求描述不完整,导致理解错误;隐含性需求未考虑到;易用性方面考虑不周;实际环境与测试环境有差异;自身经验不足等多方面。

测试这项工作,是证明产品做了正确的事情,能满足用户的需求,用各种测试方法来找出问题,是对质量的一种度量。好的质量是要靠高素质人员和好的过程来保证的。

[!--infotagslink--]

相关文章

  • Java8 实现stream将对象集合list中抽取属性集合转化为map或list

    这篇文章主要介绍了Java8 实现stream将对象集合list中抽取属性集合转化为map或list的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-05
  • java8如何用Stream查List对象某属性是否有重复

    这篇文章主要介绍了java8如何用Stream查List对象某属性是否有重复的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-11
  • 关于JavaScript中name的意义冲突示例介绍

    在昨天的《Javascript权威指南》学习笔记之十:ECMAScript 5 增强的对象模型一文中,对于一段代码的调试出现了一个奇怪现象,现将源代码贴在下面: 复制代码 代码如下: <script type="text/javascript"> function Person(){}...2014-05-31
  • 解决:failed to open stream: No such file or directory in

    本教程来给各位同学介绍failed to open stream: No such file or directory in解决办法,有需要了解的朋友可进入参考。 Warning: include_once(./include/main.i...2016-11-25
  • vue-cli设置publicPath小记

    这篇文章主要介绍了vue-cli设置publicPath小记,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-14
  • javascript自定义的addClass()方法

    复制代码 代码如下: //element:需要添加新样式的元素,value:新的样式 function addClass(element, value ){ if (!element.className){ element.className = value; }else { newClassName = element.className; newClas...2014-05-31
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • c++中的system("pause")的作用和含义解析

    这篇文章主要介绍了c++中system("pause")的作用和含义,非常不错,具有参考借鉴价值,需要的朋友参考下吧...2020-04-25
  • 解决Pycharm的项目目录突然消失的问题

    今天小编就为大家分享一篇解决Pycharm的项目目录突然消失的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-22
  • pycharm2021激活码使用教程(永久激活亲测可用)

    pycharm2021激活码是一个可以轻松帮助用户免费激活pycharm2021.1软件的文件,虽然说pycharm现在只是推出了2021.1的EAP版,但是如果你想先率先体验一波,那么就可以利用小编提供的这个激活码来进行使用啦,并这个激活码是永久有效的...2021-03-30
  • pycharm实现print输出保存到txt文件

    这篇文章主要介绍了pycharm实现print输出保存到txt文件,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-02
  • JavaScript中的this关键字使用方法总结

    在javascritp中,不一定只有对象方法的上下文中才有this, 全局函数调用和其他的几种不同的上下文中也有this指代。 它可以是全局对象、当前对象或者任意对象,这完全取决于函数的调用方式。JavaScript 中函数的调用有以下...2015-03-15
  • javascript的事件触发器介绍的实现

    事件触发器从字面意思上可以很好的理解,就是用来触发事件的,但是有些没有用过的朋友可能就会迷惑了,事件不是通常都由用户在页面上的实际操作来触发的吗?这个观点不完全正确,因为有些事件必须由程序来实现,如自定义事件,jQue...2014-06-07
  • pycharm 实现光标快速移动到括号外或行尾的操作

    这篇文章主要介绍了pycharm 实现光标快速移动到括号外或行尾的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-06
  • JavaScript中逗号运算符介绍及使用示例

    有一道js面试题,题目是这样的:下列代码的执行结果是什么,为什么? 复制代码 代码如下: var i, j, k; for (i=0, j=0; i<10, j<6; i++, j++) { k = i+j; } document.write(k); 答案是显示10,这道题主要考察JavaScript的逗...2015-03-15
  • 超实用Internet Download Manager(IDM)破解注册码,全版本通用

    IDM下载器是一个十分好用的文件下载工具。IDM下载器它能够帮助你提升5倍的下载速度,强大的续传功能,让你不再担心因网络问题、计算机宕机、停电等原因所造成的数据不全问题,下面小编给大家带来了InternetDownloadManager(IDM)破解注册码,感兴趣的朋友参考下吧...2023-01-06
  • ActiveX控件与Javascript之间的交互示例

    1、ActiveX向Javascript传参 复制代码 代码如下: <script language="javascript" for="objectname" event="fun1(arg)"> fun2(arg); </script> objectname为ActiveX控件名,通过<object>标签里的id属性设定,如下; 复制...2014-06-07
  • vue项目页面嵌入代码块vue-prism-editor的实现

    这篇文章主要介绍了vue项目页面嵌入代码块vue-prism-editor的实现,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-10-30
  • vue cli4.0项目引入typescript的方法

    这篇文章主要介绍了vue cli4.0项目引入typescript的方法,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-17
  • 详解JavaScript操作HTML DOM的基本方式

    通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素。 HTML DOM (文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。 HTML DOM 模型被构造为对象的树: 通过可编程的对象模型,Java...2015-10-23