Springboot配置多个Mybatis的sqlSessionFactory Sep 10, 2023

本文首先介绍Springboot的单数据源配置方式,并介绍其中的Springboot自动装配细节;其次介绍如何配置多数据源。

...
艾尔登法环上手玩 Sep 10, 2023

22年年初买了Xbox series S,恰逢22年年度游戏《艾尔登法环》发售,想着评价这么高,我也来试试。但是当时游玩体验还是比较差的,一方面是XSS的性能不够,画质和帧数不行,玩起来比较累;另一方面,由于没有玩过魂类游戏,很多设定和机制不了解,就不知道该怎么玩。最典型的例子是,我开局选择了一贫如洗的角色,等级低、还没初始武器,输在了起跑线上,哪哪玩起来都不顺。另一个例子就是开局直冲宁格姆福去打“恶兆”,卡住之后就阶段性放弃了这个游戏。

...
MacOS睡眠和唤醒历史 Aug 13, 2023

查看用户唤醒历史

pmset -g log|grep -v "DarkWake"|grep -E  "Wake from"

查看所有睡眠和唤醒历史

内容会有点多,而且包含DarkWake

pmset -g log|grep -E  "Entering Sleep state|Wake from"

什么是DarkWake

在 macOS 中,“DarkWake” 和 “Wake” 代表了两种不同类型的唤醒状态:

...
谷歌日本搜索结果显示日文的解决方案 Aug 12, 2023

说到日本的服务器,最早用过一段时间的沪日iplc,现在在用DMIT的PVM.TYO.Pro.Shinagawa,他们在延迟速率方面的表现都很好。有一点比较难受的是日本的google搜索结果总是有日文内容,这里说下解决方案。

谷歌提供了“搜索设置”的功能,允许用户调整“搜索结果语言过滤器”,这个设置将会设置到cookie中,具体来说是NID这个cookie,过期时间是6个月。如果在6个月中有登出再登陆,这个cookie也会丢失,需要重新设置。

...
K8S持久化卷、动态置备、StorageClass Jul 31, 2023

在之前对K8S的使用中,已经用到了Volumes来给pod挂载文件,具体来说用到了HostPath、emptyDir、ConfigMap这几种类型的Volumes。最近在部署grafana时,遇到PersistentVolumeClaim的API类型,研究了一下,发现涉及的东西挺多的,有

...
使用node-exporter + prometheus + grafana 监控k8s集群 Jul 30, 2023

最近在K8S集群中部署了node-exporter + prometheus + grafana,具体过程可以参考我的Github项目kubernetes-prometheus-grafana。这个博客用来记录下过程中的一些知识点,主要有这些:

主题 详述
K8S的RBAC 全称是基于角色的访问控制,K8S权限机制的基础
在Pod中访问ApiServer Prometheus是运行在k8s集群中的一个pod,访问k8s的apiserver时需要一些鉴权机制
Prometheus Service Discovery Prometheus是pull模型,需要自动地发现k8s集群中有哪些endpoing、node、service等,并watch其变更
Prometheus relabel_configs 在prometheus的抓取job中过滤、转换target的label
...
使用K8S DaemonSet部署rust_http_proxy Jul 23, 2023

整体说明

  1. tls的证书没有使用Secret,感觉没啥必要。
  2. 使用HostPort来暴露端口,并将coredns的deployment移动到外网的vps上,已避免ClusterFirst的dnsPolicy下的国内dns污染问题
  3. 使用hostNetwork使用主机网络栈,意义在于暴露端口+使用host的DNS(无污染问题)
  4. 使用envFrom comfigMap加载环境变量,这要求configMap中所有字段都是String类型,443、true、false要用双引号包裹。
  5. 使用hostPath挂载nginx的目录,展示web网页。

Dockerfile

FROM docker.io/redhat/ubi9-micro:9.2-9
# 设置时区为上海,ubi9-micro内置了tzdata 
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone
COPY target/x86_64-unknown-linux-musl/release/rust_http_proxy /
CMD ["/rust_http_proxy"]

用的RHEL家的ubi9-micro基础镜像,它和alpine差不多大小,用的glibc,没有musl-libc的一些兼容性问题,并且设置时区更加简单,而且我对RHEL家的东西很有好感,所以就用了。一些相关的介绍:

...
在K8S集群中创建clash代理服务 Jul 23, 2023

学习下ConfigMap、Deployment、Service的用法。

...
K3S多云环境下的离线部署 Jul 23, 2023

这几天把k8s折腾了个遍,个人觉得k3s更适合我,主要有五个优势

  1. 类似springboot的“约定优于配置”,就是默认给你一个开箱即用的东西,如果需要,再进行修改。而不是k8s那样样样要你配置
  2. 内置LoadBalancer实现,而不是像k8s那样没有LoadBalancer实现,导致裸机安装情况下得用NodePort、HostPort、HostNetwork来暴露服务,或者安装Metallb。
  3. 可以轻松的支持多云环境,对我这种有多个云厂商vps的玩家很友好
  4. 资源消耗较少。虽然节点增加后,控制面的内存压力也不小
  5. 文档docs.k3s.io很清晰。PS:不要看中文版的文档,也不要看rancher中国的文档,垃圾
...
Clash Tun模式和透明代理 Jul 23, 2023

大概前几年就玩过软路由,当时用openwrt作为主路由使用,一是折腾起来太麻烦,二是对家庭网络侵入性太大,三是当时用的机器风扇声音太大。用上M2的Macbook PRO、Mac MINI后,我才发现,原来低功耗的无风扇的被动散热的体验是真的安静。所以,这次软路由的搭建核心诉求是三个:1. 旁路由而不是主路由;2. 用Clash而不是openwrt;3. 用被动散热的机器,主打一个安静。最终的话,这次整了一台畅网N100先锋版,把附送给内存和硬盘散热的风扇拆了,走纯被动散热。最终成品如下,特点是小小的,稳稳的,烫烫的。

Alt text

下面的内容是介绍下如何使用Clash tun模式搭建旁路由。

...