Panda's Blog

个人博客

NodeJS 的性能监控

Node 性能监测 在本篇中,我们将介绍如何使用 Node.js 来进行性能检测。 压力测试基本概念 我们在压力测试中,PV、UV 和 QPS 是常用的指标,用于衡量系统的负载、性能和请求情况。它们的含义如下: PV(Page View 页面浏览量): 指的是网站或应用被访问的页面总数。每次页面被请求加载时,都会计为一次 PV。即使同一个用户多次访问同一个页面,每次请求都会计为一次 P......

NodeJS EventLoop

Event Loop是什么 event loop是一个执行模型,在不同的地方有不同的实现。浏览器和NodeJS基于不同的技术实现了各自的Event Loop。 浏览器的Event Loop是在html5的规范中明确定义。 NodeJS的Event Loop是基于libuv实现的。可以参考Node的官方文档以及libuv的官方文档。 libuv已经对Event Loop做出了实现,而HTML5......

NodeJS stream 模块

Nodejs stream 模块 流的基本概念 起点到终点 流:逐段,大量数据,大文件 传统:一次性读取完毕,在处理 1234567891011121314151617const rs = fs.createReadStream('data.txt');//流的逐块传输rs.on('data',chunk=>{ data += c......

WeakSet & Set & WeakMap & Map

集合 哈希结构 键值对对象 WeakSet WeakSet 中的对象都是弱引⽤用,即垃圾回收机制不不考虑 WeakSet 对该对象的引⽤用,也就是说,如果其 他对象都不不再引⽤用该对象,那么垃圾回收机制会⾃自动回收该对象所占⽤用的内存,不不考虑该对象还存在于 WeakSet 之中。 这是因为垃圾回收机制依赖引⽤用计数,如果⼀一个值的引⽤用次数不不为0 ,垃圾回收机制就不不会释放这块内 存。结......
js

安全防范-致前端

XSS XSS,即 Cross Site Script,中译是跨站脚本攻击;其原本缩写是 CSS,但为了和层叠样式表(Cascading Style Sheet)有所区分,因而在安全领域叫做 XSS。 XSS 攻击是指攻击者在网站上注入恶意的客户端代码,通过恶意脚本对客户端网页进行篡改,从而在用户浏览网页时,对用户浏览器进行控制或者获取用户隐私数据的一种攻击方式。 攻击者对客户端网页注入的恶......
js

logj4 的使用

log4js 中的概念 level 这个理解起来不难,就是日志的分级。日志有了分级,log4js 才能更好地为我们展示日志(不同级别的日志在控制台中采用不同的颜色,比如 error 通常是红色的),在生产可以有选择的落盘日志,比如避免一些属于.debug才用的敏感信息被泄露出来。 log4js 的日志分为九个等级,各个级别的名字和权重如下:(由低到高) 1234567891011{......

Html 的生命周期

GlobalEventHandlers 其实就是浏览器开放处理的全局 api 事件 经过业务整理构成了所谓的生命周期 https://developer.mozilla.org/zh-CN/docs/Web/API/GlobalEventHandlers 页面的生命周期 DOMContentLoaded — 浏览器已经完全加载了HTML,DOM树已经构建完毕,但是像是 和样式表等外部资源......
js

InstanceOf 的实现

Instanceof 的实现 其实就是比较实例原型是否是对象原型,要注意的是基础类型是不需要比较的。 基础类型:[‘string’, ‘number’, ‘boolean’, ‘undefine’, ‘symbol’]; 注意的是 proto 和 prototype 的关系 12345678910111213const instance_of = (L, R) => { c......
js

浏览器原理3

浏览器原理3 DOM 树 从⽹络传给渲染引擎的 HTML ⽂件字节流是⽆法直接被渲染引擎理解的,所以要将其转化为渲染引擎 能够理解的内部结构,这个结构就是 DOM。 从⻚⾯的视⻆来看,DOM 是⽣成⻚⾯的基础数据结构。 从 JavaScript 脚本视⻆来看,DOM 提供给 JavaScript 脚本操作的接⼝,通过这套接⼝, JavaScript 可以对 DOM 结构进⾏访问,从⽽改变⽂......

nginx gzip 压缩js配置

Nginx自带的有gzip模块 http://wiki.nginx.org/NginxChsHttpGzipModule ,这个模块支持在线实时压缩输出数据流。经过良好的配置优化,可以大幅的提升网站的输出效率。 使用范例 12345678910111213141516gzip on;gzip_buffers 16 8k;gzip_comp_level 6;gzip_http_version......