前端开发
-
阻塞还是不阻塞,做个实验就好了
前言 浏览器在解析 HTML 时,遇到 CSS 和 JS 可能会阻塞住,这个结论网上有很多,可自行搜索。 对于 JS,有如下结论: JS 加载会阻塞 HTML 的解析和渲染 JS …
-
SSR + 微前端?前端可真能搞事情
前言 第一次见到这个概念是在 single-spa(https://single-spa.js.org/docs/ssr-overview) 官网上。不得不说,前端真能搞…
-
Node.js 高级编程之 UDP(看看它是如何不可靠的)
前言 UDP 协议是我们平时较少接触到的知识,不同于 TCP,它是“不可靠”的,今天我们就来实战一下看下它到底怎么个不可靠法? 不可靠的 UDP 实验前,我们先介绍一下需要用到的工…
-
浅析 React Server Component
前言 React Server Component (以下简称 RSC)这个概念已经提出很久了,但是一直对其一知半解,这次就借五一小长假来搞清楚吧。我们通过官网的例子(https:…
-
React SSR 之监控
前言 SSR 服务成功上线后并不就是万事大吉,建立一套完善的服务监控系统也是非常重要。本文介绍如何通过 promethus 来对 SSR 服务进行监控。 环境搭建 使用 docke…
-
模拟 ChatGPT 生成答案的动画效果
在使用 ChatGPT 时一直都好奇它生成答案的动画效果是怎么做的,今天我们就简单的来模拟下。 先上效果: 我们先准备一下接口,代码如下: const express&n…
-
浅析状态管理库 Jotai 的实现原理
前段时间无意中发现了一个叫 Jotai 的状态管理库,使用起来感觉挺轻量顺手的,比如下面这个简单的例子: import {atom, useAtom} …
-
Chrome 插件开发实战:实现一个对照翻译插件(一)前端部分
前言 Chrome 浏览器自带翻译功能,但是翻译后就看不到原文了,如果能够让原文和译文同时显示,是不是更加友好呢?就像这样: 好的,接下来就让我们来实现这个插件吧。很明显,实现整个…
-
Chrome 插件开发实战:实现一个对照翻译插件(二)翻译部分
前言 上篇文章 介绍了插件的前端部分,这篇我们来介绍怎么对提取出来的内容进行翻译。生活在 ChatGPT 的时代,当然要好好利用一下这个工具了,所以本文就用它来进行翻译了。 接入 …
-
实战 – Node.js 服务实现灰度发布 Grayscale Release of Node.js in Practice
前言 – Preface 所谓灰度发布(本文特指金丝雀发布),就是线上同时存在两个版本,这里我们把新发布的版本称作金丝雀版,旧版称作稳定版,根据一定的策略让部分用户访问…
-
在 Node.js 中使用 HTTP Agent 实现 keep-alive
Request without Keep-Alive As we all know that in browsers, multi HTTP requests can resue …
-
译:揭秘神奇的 Rust Axum 风格的函数实现
原文链接:https://github.com/alexpusch/rust-magic-patterns/blob/master/axum-style-magic-functio…
-
Rust WebAssembly 实现视频实时滤镜效果
之前立过一个 Flag 要用 Rust WebAssembly 来实现视频实时滤镜效果,今天来完成一下。 I set a flag previously, which is to …
-
使用 Web Worker + SharedArrayBuffer 并行实现视频实时滤镜效果
之前分别用 JS,Golang WebAssembly 和 Rust WebAssembly 实现过视频实时滤镜效果,证明了 WebAssembly 的性能确实要更好一些。但其实当…
-
设计模式之单例模式(TypeScript & Rust)
单例模式在软件开发中有很多应用场景,比如数据库连接池、全局唯一的对话框、全局日志记录等。 The singleton pattern has many applications i…
-
设计模式之各种工厂模式(TypeScript & Rust)
设计模式中带“工厂”两个字的有:简单工厂模式、工厂方法模式、抽象工厂模式。下面用 TypeScript 和 Rust 分别演示一下: 简单工厂模式 听说 NBA 有个专门用于生产控…