Notion 整理 RSS 订阅

一个开源的自部署项目 Kodoku,可以帮助追踪 RSS 订阅。它使用 Notion 作为后端,用作者提供的模板创建了一个 Notion Database,用来存储我的 RSS 订阅信息。然后需要创建 Notion Integration 来读取这个数据库。部署完成后,可以方便地查看和管理我的 RSS 订阅。

Tailscale 配置 KDE Connect

Tailscale 是一款基于 WireGuard 的网络安全和隐私保护软件,能帮助我们将不同设备连接到同一个局域网内。使用 Tailscale 可以方便地配置连接 KDE Connect,使得不同设备在同一个网络下无缝连接,并实现剪贴板和通知的同步。另外,Tailscale 还提供了子网路由功能,可以通过已安装 Tailscale 的设备作为网关,将流量中继转发到目标 IP。配置过程简单,只需按照官网指引进行安装和设置即可。

Cloudflare WARP 解锁 NewBing / ChatGPT 等服务访问

本文介绍了如何借助 Cloudflare WARP 搭配 V2ray 解锁 New Bing 等服务的访问。通过使用 warp-go 脚本将 WARP 模式设置为非全局模式,并配置 V2Ray 的 outbounds 和 routing 部分,将特定网站的流量发送到 WARP 接口,实现解锁访问。配置完成后,测试并重载配置启动服务即可访问 New Bing 等服务。

TVBox 应用及接口

整理了有关 TVBox 的应用和接口。这个提供了 TVBox 项目仓库源、直播源等。可以在 GitHub 上找到详细信息。

使用 Helm 管理 K8s 集群中的应用

Helm 是一个 Kubernetes 的包管理工具,通过使用 Charts 描述 Kubernetes 资源的集合来管理和部署应用程序。Helm 3 相对于 Helm 2 提供了更好的安全性、稳定性和易用性。一个典型的 Chart 包含了部署一个应用所需的所有配置、依赖关系和相关资源。我们可以通过修改 Chart 中的配置文件和模板文件来自定义部署应用程序的方式。使用 Helm,我们可以轻松地管理和部署复杂的应用程序,并减少人工操作的错误和遗漏。我们可以通过编写脚本,从现有的 Kubernetes Deployment 配置中提取相应配置,并将其转换为 Helm Values 文件,从而实现自动化管理和部署。

JAVA 上传文件到对象存储出现OOM

本文讨论了在Java应用程序中将文件上传到对象存储时出现的内存不足错误。当使用流式上传到S3时,如果直接调用S3客户端的putObject方法,会出现内存不足的风险,因为数据会全部缓存在内存中。解决方法是设置好对象的内容大小,即设置Content Length,以避免内存耗尽的错误。

Nginx buffer 配置问题记录

最近在项目中遇到了一个问题:获取菜单树形结构数据的接口在初始时正常,过一段时间后就会出错。经过排查发现,这个问题和 Nginx 的 buffer 配置有关。Nginx 的 buffer 机制默认启用,它会将后端响应缓存在内存或磁盘上,然后再慢慢推送给客户端。但是如果后端响应较慢或数据量较大,同时缓冲区设置不足以容纳完整的响应数据,就会导致数据被截断。解决方法是调整 Nginx 的 buffer 配置,增加缓冲区的大小和数量,以及临时文件的写入大小和大小限制。此外,还可以调整超时设置。关闭 buffer 虽然可以解决问题,但不推荐,因为会影响到 Nginx 到后端的连接复用。

Git 常用命令整理

Git 是一款代码版本控制工具,常用于团队协作开发。本文主要是整理的一些常见的 Git 命令,这些命令覆盖了 Git 常用的操作场景,可以帮助开发者更好地使用 Git 进行版本控制和协作开发。

Kubernetes 好用的管理软件/命令行工具

Kubernetes是一个用于自动部署、扩展和管理容器化应用程序的开源系统。它提供了许多命令行工具和图形用户界面,用于管理和监控Kubernetes集群。其中一些常用的工具包括OpenLens(用于集群概览和资源监控)、K9s(用于实时监控和资源编辑)、kubecm(用于KubeConfig管理)、krew(用于插件管理)等。 这些工具提供了集群状态、资源监控、配置管理、事件和日志显示、可扩展性、集群拓扑、资源编辑、实时监控、快速导航、详细信息查看、KubeConfig管理、插件管理、节点调试、Pod监控、资源关系展示、状态显示、资源分配查看、镜像管理、命令执行、服务访问、Secret管理、网络流量捕获、Ingress管理、YAML文件格式化、日志跟踪等功能。 因此,Kubernetes集群的管理工具和命令行工具提供了丰富的功能,可帮助用户更轻松地管理和监控其Kubernetes环境。

K8s 中微服务优雅滚动更新

本文介绍了在 Kubernetes 中实现 Spring Cloud 微服务的优雅滚动更新。通过配置 Eureka 和 Ribbon 的参数来缩短服务注册信息的刷新间隔,并让网关在请求异常时重试一次。另外,通过设置 Pod 的 terminationGracePeriod 和 PreStop 钩子来主动下线旧版本的微服务,保证服务的平滑终止。最后,建议集成 Spring Cloud Kubernetes 来代替 Eureka,进一步提升服务升级的平滑度,实现无感知更新。