banner
Tenifs

Tenifs

雄关漫道真如铁,而今迈步从头越。
github
follow
zhihu
email
cover

JavaScript 中 ,reduce 函数的用法

reduce() 是 JavaScript 中数组的一个高阶函数,用于将数组中的所有元素通过某种方式汇总成一个单一的值。它的基本用法是通过提供一个回调函数,回调函数接收四个参数:accumulator(累积器)、currentValue(当前值)、currentIndex(当前索…
cover

一致性哈希算法

一致性哈希(Consistent Hashing)是一种用于分布式系统中解决数据分布和负载均衡的问题的哈希算法。它特别适用于动态节点(如服务器)加入或退出时,能够最小化数据的重分布,从而提高系统的稳定性和扩展性。 一致性哈希的基本原理: 虚拟节点(Virtual Nodes):…
cover

sync.Mutex 和 sync.RWMutex 的区别

在 Go 语言中,sync.Mutex 和 sync.RWMutex 都是用于在并发编程中同步访问共享资源的互斥锁,但它们的使用场景和工作原理有所不同。 具体区别如下: 1. sync.Mutex(互斥锁) sync.Mutex 是最基本的锁机制,它确保同一时刻只有一个 goro…
cover

go test 运行当前项目下的所有测试

运行当前目录及其所有子目录下的测试: Copy go test ./... 运行指定目录及其所有子目录下的测试: Copy go test foo/ 运行指定前缀的测试: Copy go test bar... Foobar 是计算机程序领域里的术语…
cover
cover

解决 Windows 系统下 go-sqlite3 requires cgo to work

前言 在 Windows 系统下,使用 go-sqlite3 连接 sqlite 数据库时,项目运行报错,错误信息如下: Copy Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work…
cover

Follow Feed Claim

To claim this feed as your own, you need to verify ownership. There are three ways to choose from, you can choose one of them to verify.
cover

Java 中的访问修饰符

在 Java 中,public、private 和 protected 是访问修饰符,用于控制类、方法和变量的可访问性。 public 任何地方都可以访问 可以在任何其他类中创建对该成员的引用。 Copy public class MyClass { public…
cover

使用免密 GPG 密钥

如果你的用例允许你不需要每次都输入密码,你可以删除 GPG 密钥的密码。但这会大大降低安全性,因此请谨慎使用。 通过以下命令删除 GPG 密钥的密码: Copy gpg --edit-key <你的 GPG 密钥 ID> passwd 然后按照提示进行操作,删除密钥的密码。
cover

Redis 缓存雪崩、缓存击穿、缓存穿透的解决方案

缓存雪崩 缓存雪崩:当大量缓存数据在同一时间过期(失效)或者 Redis 故障宕机时,如果此时有大量的用户请求,无法在 Redis 中处理,那么这些请求将会直接访问数据库,从而导致数据库压力骤增,严重的话会导致数据库崩溃宕机,进而导致整个系统崩溃。 解决方案: 避免为大量的…
cover

Java 实现单例模式

单例模式确保一个类只有一个实例,并提供一个全局访问点。 在 Java 中,实现单例模式有如下几种常见的方法。 饿汉式 饿汉式在类加载时就创建实例,线程安全但可能会浪费内存。 Copy public class Singleton { private static…
cover

面向对象编程中的六大原则

单一职责原则(SRP):一个类应该只有一个引起它变化的原因,即一个类应该只负责一项职责。例如,一个 Person 类,它应该只负责和 Person 相关的工作,而不应该去处理其他无关的工作。 开放封闭原则(OCP):软件实体应该对扩展开放,对修改封闭。例如,定义一个图形类…
cover
cover

导致 MySQL 索引失效的常见场景

explain 可以用来分析 SQL 语句,具体用法如下: 只需在要执行的 SQL 语句前面添加 explain 即可。 各个字段的含义如下: id :选择标识符,id 越大优先级越高,越先被执行; select_type : 表示查询的类型; table :输出结果集的表;…
cover

将 NCM 文件转换为 MP3 文件

https://github.com/magic-akari/ncmc 首先,配置好 Rust 开发环境 ,然后,安装 ncmc。 Copy cargo install ncmc 利用如下脚本,完成对指定目录下 ncm 文件的批量转换: Copy Get-ChildItem…
cover
cover

Windows 系统设置 GPG-Agent 缓存

设置 GPG-Agent 缓存,可以避免每次都输入密码。 在 Windows 的家目录下,找到 .gnupg/gpg-agent.conf 文件。 如果没有的话,就创建一个。 编辑 gpg-agent.conf 文件,添加如下内容 Copy default-cache-ttl…
cover

Arc 常用快捷键总结

总结一下,自己常用的 Arc 快捷键 新标签页:Control + T 新窗口:Control + N 关闭当前标签页:Control + W 显示 / 隐藏侧边栏:Control + S 最近标签页:Control + Tab 历史前进:Alt + -> 历史后退:Alt…
cover

jsDelivr 刷新缓存

缓存刷新 把原来的访问链接: Copy https://cdn.jsdelivr.net/gh/lyh-workshops/back2top/dist/back2top.min.js 改为: Copy https://purge.jsdelivr.net/gh/lyh…
cover

Docker 安装 PostgreSQL

拉取镜像 Copy docker pull postgres:latest 运行容器 Copy docker run --name postgres -e POSTGRES_PASSWORD=123456 -p 5432:5432 -d postgres 用户名…
cover
cover
cover
cover

VSCode 使用 JetBrains Mono 字体

下载字体 JetBrains Mono – the free and open-source typeface for developers https://github.com/JetBrains/JetBrainsMono 下载地址:https://github.com…
Ownership of this blog data is guaranteed by blockchain and smart contracts to the creator alone.