介绍

很多站长都遇到过这样一个问题.如果你的服务器在国外,那你一定为网站的访问速度苦恼过,即使服务器在国内,晚高峰的访问速度也不尽人意,当然,CDN是一个理想的解决方法,但是国内的CDN都需要备案申请,大部分人并不想备案,采用国外的CDN 国内的访问速度差强人意。那么,有什么办法解决这些问题?
如果说CDN是从网络层面解决网络堵塞,即云端分发内容,使用多个缓存服务器来负担访问压力。那么今天说的这个东西就是从本地加载内容。有一项技术叫prefetch,单词本身的意思是预读,很简单,当用户想访问一个页面时,浏览器会预先加载这个页面,然后当用户访问时,直接从预先加载好的页面中读取内容,从而大大减少加载时间,达到伪秒开。
而instant就是利用prefetch的js脚本。instant会根据用户鼠标在链接上的停留时间进行判断,当达到65毫秒,用户有一半的机会打开此链接,instant将会对此页面进行预加载。

使用

instant的使用非常简单,首先打开官网:https://instant.page,会看到一个非常简洁的页面,并得到一行代码:

<script src="//instant.page/1.2.2" type="module" integrity="sha384-2xV8M5griQmzyiY3CDqh1dn4z3llDVqZDqzjzcY+jCBCk/a5fXJmuZ/40JJAPeoU"></script>

只需要把这行代码放在</body>之前即可。
Snipaste_2019-03-19_15-23-29.jpg

官方的介绍:

instant.page使用即时预加载 - 它在用户点击之前预先加载页面。在用户点击链接之前,他们将鼠标悬停在该链接上。当用户徘徊65毫秒时,他们将点击该链接有两个机会,因此instant.page此时开始预加载,平均超过300毫秒,以便页面预加载。在移动设备上,用户在释放之前开始触摸他们的显示器,平均花费90毫秒来预加载页面。
只有当用户很有可能访问它们时才会预加载页面,并且它仅预加载该页面的HTML,尊重用户和服务器的带宽和CPU。它使用被动事件侦听器,以使您的页面保持平滑。当用户启用数据保护时(从版本1.2.2开始),它不会预加载。它是1 kB并且在其他所有内容之后加载。它是免费和开源的。

评价

经过本人测试,效果显著,打开速度比之前快了很多,但是如果是熟悉的人有目的的点,毫无停顿的浏览,那么是没有任何优化效果的,但是这种毕竟是少数。实际上,这种预加载技术并不罕见,现在很多浏览器都有这种预加载,大部分应用在看小说网页或者浏览文章等单页文字浏览上,这个代码只是换了一个思路,从人的想法去思考,从而欺骗大脑,技术并不是很先进,但是想法很好