HTTP2:如何提升网络速度
上一篇文章我们聊了 HTTP/1.1 的发展史,虽然 HTTP/1.1 已经做了大量的优化,但是依然存在很多性能瓶颈,依然不能满足我们日益变化的新需求,所以就有了我们今天要聊的 HTTP/2。 本文我们依然从需求的层面来谈,先分析 HTTP/1.1 存在哪些问题,然后再来分析 HTTP/2 是如何解决这些问题的。…
阅读全文文章归档
关于前端、工程与日常思考的记录。找到一个主题,开始阅读。
上一篇文章我们聊了 HTTP/1.1 的发展史,虽然 HTTP/1.1 已经做了大量的优化,但是依然存在很多性能瓶颈,依然不能满足我们日益变化的新需求,所以就有了我们今天要聊的 HTTP/2。 本文我们依然从需求的层面来谈,先分析 HTTP/1.1 存在哪些问题,然后再来分析 HTTP/2 是如何解决这些问题的。…
阅读全文前面两篇文章我们分析了 HTTP/1 和 HTTP/2,在 HTTP/2 出现之前,开发者需要采取很多变通的方式来解决 HTTP/1 所存在的问题,不过 HTTP/2 在 2018 年就开始得到了大规模的应用,HTTP/1 中存在的一大堆缺陷都得到了解决。 HTTP/2 的一个核心特性是使用了多路复用技术,因此它…
阅读全文浏览器安全主要划分为三大块内容:页面安全、系统安全和网络安全。前面我们用四篇文章介绍了页面安全和系统安全,也聊了浏览器和 Web 开发者是如何应对各种类型的攻击,本文是我们专栏的最后一篇,我们就接着来聊聊网络安全协议 HTTPS。 我们先从 HTTP 的明文传输的特性讲起,在上一个模块的三篇文章中我们分析过,起初…
阅读全文PWA,全称是 Progressive Web App,翻译过来就是渐进式网页应用。根据字面意思,它就是“渐进式 +Web 应用”。对于 Web 应用很好理解了,就是目前我们普通的 Web 页面,所以 PWA 所支持的首先是一个 Web 页面。至于“渐进式”,就需要从下面两个方面来理解。 站在 Web 应用开发者…
阅读全文什么是组件化呢? 其实组件化并没有一个明确的定义,不过这里我们可以使用 10 个字来形容什么是组件化,那就是:对内高内聚,对外低耦合。对内各个元素彼此紧密结合、相互依赖,对外和其他组件的联系最少且接口简单。 可以说,程序员对组件化开发有着天生的需求,因为一个稍微复杂点的项目,就涉及到多人协作开发的问题,每个人负责…
阅读全文在上一篇文章中我们介绍了 setTimeout 是如何结合渲染进程的循环系统工作的,那本篇文章我们就继续介绍另外一种类型的 WebAPI——XMLHttpRequest。 自从网页中引入了 JavaScript,我们就可以操作 DOM 树中任意一个节点,例如隐藏 / 显示节点、改变颜色、获得或改变文本内容、为元素…
阅读全文1. 创建型模式 在软件工程中,创建型模式是处理对象创建的设计模式,试图根据实际情况使用合适的方式创建对象。基本的对象创建方式可能会导致设计上的问题,或增加设计的复杂度。创建型模式通过以某种方式控制对象的创建来解决问题。 2. 模式分类 结构型模式: (1)代理(Proxy)模式:为某对象提供一种代理以控制对该对…
阅读全文参考 前端关于单点登录的知识 - 掘金 前端常见登录实现方案 + 单点登录方案 - 掘金 前端关于单点登录SSO的知识 - 掘金 localstorage的跨域存储方案 - 简书 localStorage跨域存储,实战篇 - 掘金
阅读全文现代 Javascript 项目需要用打包工具来将小段代码编译成库或者应用程序那种更大更复杂的东西。流行的打包器有webpack、Rollup、Parcel、RequireJS 和 Browserify。它们将 JavaScript 代码转换为可以作为一个 bundle 加载的模块。 一般来说,常见的模块类型有:…
阅读全文在这篇博客文章中,我将介绍如何使用 TypeScript 和 Express 框架来编写一个简单的图床脚本,可以将本地图片上传到服务器,并返回图片的 URL。这样,你就可以在 Markdown 文档中方便地引用图片,而不用担心图片的存储和管理问题。 我将最新源码放在了MoMeak9/img-service: 简单…
阅读全文本文将介绍如何使用Node.js和ssh2模块实现一个简单的部署脚本,将本地的项目文件上传到远程服务器上。我们将使用dotenv模块来管理环境变量,以及childprocess模块来执行命令行操作。 首先,我们需要安装ssh2和dotenv模块: 然后,我们需要在项目根目录下创建一个.env文件,用来存放一些敏感…
阅读全文在 JavaScript 中,有多种方法可以对数组进行去重操作。以下是几种常用的方法: 1. 使用 Set Set 是 JavaScript 的内置对象,它是一种有序的集合,其中的元素不允许重复。我们可以利用 Set 对象来去除数组中的重复项。将数组转换为 Set 对象,再将 Set 对象转换回数组,即可实现去重…
阅读全文试试其他关键词,或重置筛选条件。