Yqsas Blog

Doubt is the key to knowledge.

折腾之 ER-X 编译尝鲜 OpenWrt

EdgeMax 虽然基于debian扩展性比较高,但是鉴于每次修改路由器配置的麻烦,还是刷成熟悉的OpenWrt,毕竟有NAS的情况下,路由器做好自己的网络管理就好了。 准备环境 操作系统推荐 Ubuntu 18.04,避免编译依赖的问题。如果使用 win10,通过 wsl 安装也可具备环境,推荐使用这种方式。 替换国内源 安装所需...

聊聊王垠

最近王垠和阿里赵海平面试事件在圈子里热度很高,各种吃瓜群众和两方拥簇也是七嘴八舌。关注王垠也有数年,就过往的言行来说,王垠值得敬佩。对他的敬佩,除了学术技术水平外,更因为其说话、做事,一般人不敢说也不敢做。 王垠文笔非常好,早期一些“狂妄”的遣词给他招了很多黑,但是不能掩盖他真正表达东西的激扬。最近几个月他重新开通微博,发表的各种观点很有意思。可以看一下: 我发现很多我的关注者比我...

Spring Cloud 项目国际化

Spring Cloud i18n demo

Spring Cloud 项目国际化 0. 前言 最近几天给项目做了国际化相关工作,以此记录。 Spring Boot 默认就支持国际化,而且不需要我们过多的做什么配置,只需要在 resources/下定义国际化配置文件即可,注意名称必须以 messages 开头。 但是考虑到配置管理以及自定义解析需求,一般还是另外自定义配置类。 原理是读取国际化配置文件,以 编码=内容 为映射记录...

如何开发 fork 的 Golang 项目

如何开发 fork 的 Golang 项目 问题 Go 基于位置的包导入机制,使得我们自己 fork 下来的项目进行二次开发时,会发现 fork 中导入的包路径依旧是源项目路径。于是我如果要正常运行的话就得把对应路径改成自己的 fork repo,接着开发完做 pull request 的时候又得修改回来,这显然是一个错误的做法。 解决方式 打开心仪的源 repo 地...

折腾之 Manjaro 安装使用指北

一、前言 记录一下使用 manjaro 的过程,一方面备忘,另一方面希望可以帮助到需要的人,内容持续更新。 二、安装 硬件:ThinkPad T480s / i7 8550u / 2560*1440 / NVIDIA MX150/ 安装过程简单说,Manjaro 安装非常简单,基本上开箱即用,和其他系统区别不大。 下载 ISO 镜像,官网地址 制作 U 盘启动盘,Wind...

我的 Markdown 写作最佳实践

我的 Markdown 使用方式记录 Markdown 为广大群众喜爱的原因有许多,最关键的就是其文本格式可以随处发布,并保持原始排版。但是五花八门的 Markdown 编辑器实现各异,不规范地使用语法容易导致迁移平台时排版混乱。 以下都是基于个人喜爱,仅供参考。 各平台使用 印象笔记、Joplin 同步素材以及没有完成的文章 写作使用 Visual Studio Code ...

译 | 揭秘 Docker 镜像

What is in a Docker image?

原文:What’s in a Docker image? Docker 镜像里有什么?这是一个非常好的问题,在知道答案之前,Docker 镜像看起来似乎非常神秘。现在我不仅仅将告诉你答案,并且还会告诉你我是如何得到这个答案的。 从 Dockerfile 到镜像 在开始之前,我假设你对于 Dockerfile 已经非常熟悉:Docker 通过 Dockerfile 说明如何构建一个镜...

n2n-v2 局域网穿透指南

全平台 n2n 服务端搭建与客户端使用

日前,由于项目需要一部分人驻场外地开发,于是项目组之前在同一局域网内开发的协作模式受到影响,导致 注册中心、网关等公共服务无法连接各业务服务端点。最直接的解决方式就是再造局域网环境,之前接触过花生壳,也了解 udp 打洞基本概念,于是想到可以两地远程连入一个自建局域网。 经过一番了解,了解到相关实现工具选择不少,如n2n、softether、frp、ZeroTier等。 鉴于 n2n 多...

Spring Security OAuth2 表单登录 refresh token 未生成问题

Spring Security OAuth2 formLogin missing refresh token

之前集成 OAuth2 后,一直用默认的登录路径/oauth/token,但是需要把客户端和客户端密钥明文传输,且登录成功后,后端后续处理不方便。于是打算使用自定义 formLogin 路径方式提供登录。 过程 配置 AuthorizationServerConfig,使用 redisTokenStore 配置 DefaultTokenServices,使用 JdbcClientD...