JavaScript 类型的那些事

概述`JavaScript`的类型判断是前端工程师们每天代码中必备的部分,每天肯定会写上个很多遍`if (a === 'xxx')`或`if (typeof a === 'object')`类似的类型判断语句,所以掌握`JavaScript`中类型判断也是前端必备技能,以下会从`JavaScript`的类型,类型判断以及一些内部实现来让你深入了解`JavaScript`类型的那些事。类型...
阅读全文

预加载系列二:让File Prefetching丝丝润滑无痛无痒

所谓 File Prefetching 就是在一个页面加载成功后,默默去预加载后续可能会被访问到的页面的资源。 前端资源预加载其实没啥新鲜的,我们倒腾这个事情的过程却是很有有意思也很有启发性。第一个版本,简单粗暴有点痛1、建一个独立的页面,里面索引了各种需要预加载的css、js,代码类似下面这样。```html<html <head <link rel=...
阅读全文

微信图片另存失败?这得从SNI说起

一、从一个微信Bug说起 问题:在微信Android客户端,一张七牛CDN上的HTTPS链接的图片,用微信浏览器打开可以正常访问,但是,长按图片保存时,却提示下载图片失败。发现这个问题后,我用了一个简单的测试用例,很快就定位到问题原因。从这个测试用例可以看出,只有七牛CDN上HTTPS链接的图片,长按保存才会失败。有了这个测试用例,我就猜测问题可能是HTTPS证书的原因。于是...
阅读全文

Tiny-loader 好用的资源加载器

TinyLoader 项目已经在github上开源,具体可看: 概述在前端性能优化中,我们会压缩静态文件,懒加载图片,合并请求,来加快页面打开速度。当这些都做完以后,前端性能优化仿佛进入了一个瓶颈,所有的资源都已经最合理化加载了。其实,仔细观察静态资源文件,会发现许多文件我们并不需要在页面一开始就下载它们。这时候,如果有个组件,帮助我根据优先级的不同,在特定的时间下载特定的资源,同时需要...
阅读全文

【MySQL】关于 unauthenticated user的哲学思考

一、现象在生产环境中我们偶尔会遇到show processlist;显示host为 _unauthenticated user_ 这样的连接,同时伴有数据库服务器层面的load,sys cpu较高,或者thread running异常。二、分析类似于校园门卫看到一个陌生的人进入学校,对TA提出的哲学式问题:TA是谁?从哪里来? 要干什么?本文从IT技术角度回答这个哲学问题。 T...
阅读全文

字符串,那些你不知道的事

Everything you thought you knew about strings is wrong.也许你会诧异,字符串有什么难的,即便遇到乱码的情况随便 Google 下就能找到解决方法,但是这样你不觉得有种被动的感觉嘛,我觉得和学习任何东西一样,学习编程首要是学习其思想,知道某事物为什么(why)要这么做,至于如何做(how)那只是前人提出的解决方案,我们可以参考,顺便掌握下来...
阅读全文

如何利用TestNG监听器优化测试报告

今年四月底我花了一天时间简单搭建了php接口测试工程,maven + TestNG + jenkins,从0开始到现在510个用例(持续增长中),逐渐开始提高了测试回归效率并发现一些线上bug,这期间遇到过不少问题,这次先分享下如何利用TestNG监听器优化测试报告。 一、给工程添加失败重试机制接口用例量上来以后,我们遇到的第一个问题就是http方式调用php接口会有部分接口偶尔不稳定或者...
阅读全文

预加载系列一:DNS Prefetching 的正确使用姿势

发现很多人都知道现代浏览器都支持 DNS 的预解析,学名:DNS Prefetching。用法也很简单,就是在html代码里加入这样的 link 标签```markup<link rel="dnsprefetch" href="//delai.me" ```我们之前的用法是在 Head 为2个 静态资源服务器的域名 和 日志图片的域名 建了3条 dnsprefetch lin...
阅读全文

分布式系统中负载均衡算法在高可用场景下的分析

在分布式系统中,负载均衡是非常重要的环节,通过负载均衡将请求派发到网络中的一个或多个节点上进行处理。通常来说,负载均衡分为硬件负载均衡及软件负载均衡。硬件负载均衡,顾名思义,在服务器节点之间安装专门的硬件进行负载均衡的工作,F5便为其中的佼佼者。软件负载均衡则是通过在服务器上安装的特定的负载均衡软件或是自带负载均衡模块完成对请求的分配派发。     一般而言,有以下几种常见的负载均衡策略:...
阅读全文

Web Component:过去、现在和未来

编者按:作者高凯从 JS 的中古时代的 jQuery 说起,到 Backbone,再到 Augular,最后到现代的时髦的 React,为我们梳理了 Web Component 从概念到标准化的历程1.什么是 web component援引MDN上的解释: Web Components consists of several separate technologies. You c...
阅读全文