<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Yiki Blog</title>
    <link>https://yiki21.world</link>
    <description>Personal writing and notes.</description>
    <language>zh-CN</language>
    <atom:link href="https://yiki21.world/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>关于实习</title>
      <link>https://yiki21.world/article/junior-internship-sucks</link>
      <guid>https://yiki21.world/article/junior-internship-sucks</guid>
      <pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate>
      <description>大三实习, Sucks 1. 兼顾学校和工作 2. 当你工作内容并不是你熟悉和喜欢的内容...</description><category>实习</category>
    </item>
    <item>
      <title>Kubernetes 温习记录(Personal Notes)</title>
      <link>https://yiki21.world/code/kubenetes-warm</link>
      <guid>https://yiki21.world/code/kubenetes-warm</guid>
      <pubDate>Thu, 09 Apr 2026 00:00:00 GMT</pubDate>
      <description>总览 1. Kubernetes 基础概念 Kubernetes 可以看作是这么一个模型: 用户通过 API Server 告诉 Kubertenes 期望的状态, API Server 将这个期望状态存储在 etcd 中 然后 Kubernetes 的 Controller 会不断地监视当前状态和期望状态之间的差异, 并采取必要的行动来使当前状态逐渐接近期望状态 如何采取行动呢? 主要是通过 S...</description><category>Kubernetes</category><category>Notes</category>
    </item>
    <item>
      <title>对类型进行加减乘除运算! -- 为什么 Ocaml 中元组是 int * int 而不是 (int, int)</title>
      <link>https://yiki21.world/code/types-calculation</link>
      <guid>https://yiki21.world/code/types-calculation</guid>
      <pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate>
      <description>最近了解了一下 Ocaml 这门语言, 感觉没什么特别的, 但是在看它的类型系统的时候, 发现了一个有趣的现象: 在 Ocaml 中, 元组是用 * 来表示的, 而不是用逗号 , 来表示的. 也就是说, 在 Ocaml 中, 一个元组 (int, int) 是写成 int * int 的. Why ? 于是我去了解了他们的设计, 读了一本叫做 Thinking with Types 的书, 发现了...</description><category>ML</category><category>类型系统</category><category>范畴论</category><category>编程语言设计</category>
    </item>
    <item>
      <title>Spark 学习记录</title>
      <link>https://yiki21.world/code/spark</link>
      <guid>https://yiki21.world/code/spark</guid>
      <pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate>
      <description>我为什么要写这个学习笔记呢? 一个原因是我觉得边学边整理笔记能更好的学习和理解 第二个原因就是 Apache 的项目文档实在是太烂了, 以至于我觉得有必要写一篇文章来总结一下 Spark 的核心概念和执行流程了, 这样也能帮助其他人更好地理解 Spark 的设计和实现了 --- Spark 对数据的建模 要理解 Spark 的执行流程, 我觉得先得理解函数式编程中的一些概念, map, reduc...</description><category>Spark</category>
    </item>
    <item>
      <title>Linux 上的容器</title>
      <link>https://yiki21.world/code/container-linux</link>
      <guid>https://yiki21.world/code/container-linux</guid>
      <pubDate>Sun, 01 Mar 2026 00:00:00 GMT</pubDate>
      <description>Linux 上的容器往往被认为是轻量级的虚拟化技术，并且随着 Docker/LXC 之类的普及, 容器在成为开发和部署应用的常见方式的同时, 也给初学者带来了黑魔法的感觉 可惜感觉这方面的资料并不算太多, 很多关于容器的文章都直接跳过了容器的底层原理, 直接介绍了如何使用 Docker/LXC 等工具来创建和管理容器 于是我决定大概讲一下创建一个容器背后使用的 Linux 内核特性, 让大家进一步...</description><category>容器</category><category>Linux</category><category>Docker</category>
    </item>
    <item>
      <title>Asynchronous Programming in Rust</title>
      <link>https://yiki21.world/books/asynchronous-programming-in-rust</link>
      <guid>https://yiki21.world/books/asynchronous-programming-in-rust</guid>
      <pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate>
      <description>一本极好的异步/并发参考书，覆盖硬件到运行时的实现细节。</description><category>Rust</category><category>Asynchronous Programming</category><category>Concurrency</category><category>Programming</category>
    </item>
    <item>
      <title>如何处理并发, Green Thread? Async? OS Thread?</title>
      <link>https://yiki21.world/code/different_concurrent</link>
      <guid>https://yiki21.world/code/different_concurrent</guid>
      <pubDate>Thu, 29 Jan 2026 00:00:00 GMT</pubDate>
      <description>当你学习完基础的编程语言语法后, 你可能会接触到并发编程相关的概念, 例如协程, 线程, 异步编程等 这些概念有时会让人感到困惑, 因为它们看起来很相似, 有的是很甚至自相矛盾, 但实际上它们解决的问题和实现方式是不同的 最近读了一本书叫做Asynchronous Programming in Rust 不得不说让人豁然开朗, 有种丰收的喜悦, 感觉浑身充满了力量 因此本人决定胡言乱语一通, 记录...</description><category>并发编程</category><category>协程</category><category>线程</category><category>异步编程</category><category>Rust</category><category>Go</category><category>JavaScript</category>
    </item>
    <item>
      <title>[记录]: 我理解的服务器负载均衡</title>
      <link>https://yiki21.world/code/loadbalancer</link>
      <guid>https://yiki21.world/code/loadbalancer</guid>
      <pubDate>Tue, 25 Nov 2025 00:00:00 GMT</pubDate>
      <description>负载均衡的原因 - 如果只靠单台服务器来运行服务, 那么如果业务量大一定会撑不住的 - 可以采用DNS解析, 将多个服务器用DNS解析到同一个域名, 但是这样会有这些缺点 1. Server不可用了DNS发现不了 2. 这个方式的拓展性太弱, 不可能一个DNS 解析出上千服务器 3. 不同的机器硬件配置不一样, 这种 DNS 来分发应该所有机器的权重都是一样的 4. 如果要往入口处新增逻辑, 那所...</description><category>Blog</category><category>LoadBalancer</category>
    </item>
    <item>
      <title>使用 Shell Startup File 和 systemd environment.d 设置 LSP 的 GitHub Token</title>
      <link>https://yiki21.world/code/lspnetwork</link>
      <guid>https://yiki21.world/code/lspnetwork</guid>
      <pubDate>Sun, 02 Nov 2025 00:00:00 GMT</pubDate>
      <description>问题背景 在使用现代 IDE 和编辑器（如 VSCode、Neovim、Zed）时，许多 Language Server Protocol (LSP) 服务需要访问 GitHub API 来获取依赖信息、类型定义或文档。常见的例子包括： - rust-analyzer: 获取 crates.io 的依赖元数据 - TypeScript/JavaScript LSP: 下载 DefinitelyTy...</description><category>LSP</category><category>IDE</category><category>Shell</category><category>systemd</category><category>GitHub</category>
    </item>
    <item>
      <title>Linux Kernel 6.16+ 下折腾 VMware Workstation Pro 安装记录</title>
      <link>https://yiki21.world/code/install-vmware-on-latest-kernel</link>
      <guid>https://yiki21.world/code/install-vmware-on-latest-kernel</guid>
      <pubDate>Thu, 18 Sep 2025 00:00:00 GMT</pubDate>
      <description>本周心血来潮打算看看Linux下的VMware是什么样子的，于是立马下载安装 VMware Workstation Pro 来看看。结果发现在我这个 6.16 内核的 Fedora 42 上直接翻车了，记录一下折腾过程。 为什么新内核会有问题？ 简单说就是 VMware 这种闭源软件更新太慢，跟不上 Linux 内核的更新速度。VMware 需要在内核里加载一些模块（vmmon、vmnet这些），...</description><category>Linux</category><category>VMware</category><category>折腾记录</category>
    </item>
    <item>
      <title>Kubernetes 中 MySQL 数据库字符集配置与初始化最佳实践</title>
      <link>https://yiki21.world/code/tips-of-k8s-mysql</link>
      <guid>https://yiki21.world/code/tips-of-k8s-mysql</guid>
      <pubDate>Tue, 24 Jun 2025 00:00:00 GMT</pubDate>
      <description>概述 在将单体 Spring 应用拆分为微服务并部署到 Kubernetes 集群的过程中，MySQL 数据库的字符集配置往往会成为一个容易被忽视但影响重大的问题。本文将详细介绍在 K8s 环境中部署 MySQL 时遇到的字符集乱码问题，以及完整的解决方案和最佳实践。 环境信息 - Kubernetes: v1.34 - MySQL: 8.0 - MySQL Connector: mysql-co...</description><category>Kubernetes</category><category>MySQL</category><category>Database</category><category>Character Encoding</category><category>DevOps</category>
    </item>
  </channel>
</rss>
