作者: Gavin

44 篇文章

读《芯片战争》聊聊芯片的历史
《芯片战争》这本书是美国经济历史学家克里斯·米勒编写的,书中描述了各国为控制芯片技术而进行的长达数十年的斗争历程,解释了半导体在现代生活中发挥的关键作用,以及美国是如何在芯片设计和制造中占据主导地位,并将这种技术应用于军事系统的。 目前这本书还未看完,这里大致的介绍下芯片的发展过程,它是如何被发明出来的。大部分引用原文内容,以免造成误解。 战争对计…
acme.sh 生成https证书
关于 https 证书,有很多的方案,之前的文章中介绍过 npm, 另外还介绍过 ohttps,都能免费的生成证书。 今天再介绍一个自动续签证书的工具 acme.sh ACME安装 curl https://get.acme.sh | sh -s email=10xxxxxx@qq.com 创建一个 alias,方便使用 alias acme.sh…
RuoYi-Vue-Plus 阅读笔记 – 12 – 自定义注解实现防重幂等
前言 系统框架的防重功能参考了美团 GTIS 解决方案,参考文章 分布式系统互斥性与幂等性问题的分析与解决 GTIS 的实现思路是将每一个不同的业务操作赋予其唯一性。这个唯一性是通过对不同操作所对应的唯一的内容特性生成一个唯一的全局ID来实现的。基本原则为:相同的操作生成相同的全局ID;不同的操作生成不同的全局ID。 生成的全局ID需要存储在外部存…
使用 express 写一个简单的 ChatGPT Token 维护页
使用 https://new.oaifree.com 的网站时需要用到 access token,默认是 10天有效期,之后需要重新刷新 token,写一个简单的 token 维护页,用来管理手里的几十个账号。 首先需要到 https://token.oaifree.com/auth 这个页面获取账号的 token 信息,纯手动操作了 拿到所有的 …
RuoYi-Vue-Plus 阅读笔记 – 11 – SpringCache 缓存增强
Springboot 从3.1开始自带的缓存功能,定义了 Cache 和 CacheManager 接口,并且提供了各种实现,如 CaffeineCache、ConcurrentMapCache、RedisCache、RedissionCache 这里通过项目案例来介绍下缓存的实现原理 缓存管理器 Spring Cache 提供的缓存管理为 Cac…
RuoYi-Vue-Plus 阅读笔记 – 10 – Minio 文件存储
MinIO作为一款基于Golang 编程语言开发的一款高性能的分布式式存储方案的开源项目,有十分完善的官方文档。 文档地址:https://docs.min.io/cn/ 本节介绍下使用 minio 来作为项目的对象存储,想要使用 minio,首先需要搭建 minio 服务,然后在应用端接入 Minio 服务搭建 1panel 的应用商店可以直接安…
Redis 专题 – 1 – Redis 安装部署
安装 redis 建议直接使用 linux 环境,没有服务器的就安装虚拟机,在linux下面使用 docker 安装 redis 拉取 Redis 镜像 docker pull redis 修改配置 下载redis.conf文件 wget http://download.redis.io/redis-stable/redis.conf 改下权限 c…
RuoYi-Vue-Plus 阅读笔记 – 9 – Mail api 邮件服务
java 中也提供了 mai 相关的功能,功能相对较弱,现在也停止了更新,目前 java 应用通常使用第三方库 Jakarta Mail 来实现邮件功能 配置 mail: enabled: false host: smtp.163.com port: 465 # 是否需要用户名密码验证 auth: true # 发送方,遵循RFC-822标准 fr…
RuoYi-Vue-Plus 阅读笔记 – 7 – MyBatis Plus 数据分页插件
分页插件配置 前文 MyBatis Plus 配置一文中提到了,在自动装配的时候引入了分页插件,官方提供的默认有如下参数: 属性名 类型 默认值 描述 overflow boolean false 溢出总页数后是否进行处理(默认不处理,参见 插件#continuePage 方法) maxLimit Long 单页分页条数限制(默认无限制,参见 插件…