文章
全部技术笔记,按发布时间排序。
Glamsterdam Gas 重定价:EIP-2780、EIP-8037 与 EIP-8038 对 Solidity dApp 和 EVM Wallet 的影响
面向 Solidity dApp、智能合约基础设施和 EVM Wallet 开发者的迁移指南 信息核对日期:2026-08-16 摘要 Glamsterdam 网络升级正在重构 Ethereum 的 gas 定价方式。其中最容易被应用开发者注意到的是 EIP-2780:Resource-based intrinsic
HIIT 还是 Zone 2 训练?
大多数人一想到“心肺训练”,脑海里就会浮现两个场景: - 🏃♂️ 长跑、慢跑,节奏稳定 - 🥵 疯狂冲刺、爆汗、全力以赴 这两种,其实就是Zone 2(低强度有氧)和HIIT(高强度间歇)。 到底哪个更适合你? --- 🥊 有氧 vs. 无氧,到底选哪个? 答案很简单:能两者兼顾最好。 如果你时间有限,就要根据
如何在不放弃立场下化解一次纷争
《我就是你啊:走进他人内心的7项修炼》读后感以及总结:如何在不放弃立场下化解一次纷争 --- 第一步:控制自己的情绪,学会换位思考 在冲突中,人们往往容易被情绪牵动,从而偏离理性的沟通。 所以第一步就是要控制自己的情绪。 举例来说,当别人拒绝我们时,我们常常会下意识地觉得被否定,甚至怀疑对方是在针对自己。但实际上,对方
K8S StatefulSet 中更新 volumeClaimTemplates 的存储大小
截止 Kubernetes 到 1.33,StatefulSet 的 volumeClaimTemplates 中的存储大小是不可变的,这意味着你不能直接通过修改 StatefulSet 的配置来更新存储大小。 但是有几种方法可以实现存储扩容: 方法一:手动扩容现有 PVC(推荐) 这是最简单且风险最小的方法: 确保存
确定 stdout/stderr 是否已经被重定向
有个场景是当日志输出到屏幕时增加颜色,当输出到普通文件或者重定向就去掉颜色,因为颜色是通过 ANSII Code 控制的,看起来像是乱码一样。 在 Unix 中,万物皆文件,那么就可以通过读取文件属性确认。 例如在 go 代码中: --- 原文:GitHub Issue 259
在单页应用中 index.html 该使用什么 cache-control ?
index.html 是 SPA 单页应用的入口, js/css 等静态文件路径都在这里被定义。 所以一般而言,index.html 的缓存控制指令会被设置为 private, max-age=0。 这样设置后, CDN 和浏览器都不会缓存 index.html,当代码更新时也不会导致用户侧出现没有更新的状态。 但是这
solidity: 正确理解 immutable 关键字
Solidity 早在0.6.5 版本就引入了 immutable关键字。 immutable 可以认为是运行时常量,数据直接存储在已部署的字节码中,所以并不会占用存储槽。 官方博客这样解释其工作原理: 虽然常规状态变量以固定偏移量存储在存储中,但不可变变量的情况并非如此。相反,不可变数据直接存储在已部署的字节码中,即
使用 vscode 编辑查看 go 标准库和编译器代码
如果直接使用 vscode 打开刚克隆下来的 go 标准库代码,那么会收到一堆错误。 第一,go 1.21 使用标准的 toolchain 版本约定,而 go 标准库始终会使用下一个版本号约定,所以 go 1.21 编译器无法在 go 1.22 上工作。 第二,go 标准库源码在 src 目录中,还有 misc 包,主
跨域 cross-origin 和跨站 cross-site 是不同的概念
跨域一般用于同源策略,不同的协议、主机以及端口都算作跨域: - 协议不同 http://example.com 和 https://example.com - 主机不同,即使二级域名相同 https://www.example.com 和 https://example.com - 端口不同 http://exampl
golang generic nil check 泛型空指针检查
目前 golang 无法支持对泛型参数空检查,例如下面代码就会报错: 解决方式只能把参数 T 改为指针: 但是如果我们需要写一个函数可以把任意参数转化为指针,比如 aws sdk go v2中几乎所有参数都是指针类型,所以提供了一系列的函数,例如取 string 指针: 如果写一个泛型的取指针的函数就会遇到上面 IsN