<?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://example.com</link>
    <description>Personal writing and notes.</description>
    <language>zh-CN</language>
    <atom:link href="https://example.com/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Spark 学习记录(持续更新...)</title>
      <link>https://example.com/code/learn-spark</link>
      <guid>https://example.com/code/learn-spark</guid>
      <pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate>
      <description>## Spark 对数据的建模 要理解 Spark 的执行流程, 我觉得先得理解函数式编程中的一些概念, map, reduce, collect ... 其中这些操作还要分成两个类别: 1. **Transformation**: 以 map、filter、groupByKey 等为代表, 这些操作都是惰性的, 不会立即执行 - map: 对集合中的每个元素应用一个函数, 生成一个新的集合 - ...</description><category>Spark</category>
    </item>
    <item>
      <title>Linux 上的容器</title>
      <link>https://example.com/code/container-linux</link>
      <guid>https://example.com/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>如何处理并发, Green Thread? Async? OS Thread?</title>
      <link>https://example.com/code/different_concurrent</link>
      <guid>https://example.com/code/different_concurrent</guid>
      <pubDate>Thu, 29 Jan 2026 00:00:00 GMT</pubDate>
      <description>当你学习完基础的编程语言语法后, 你可能会接触到并发编程相关的概念, 例如协程, 线程, 异步编程等 这些概念有时会让人感到困惑, 因为它们看起来很相似, 有的是很甚至自相矛盾, 但实际上它们解决的问题和实现方式是不同的 最近读了一本书叫做[Asynchronous Programming in Rust](https://github.com/PacktPublishing/Asynchrono...</description><category>并发编程</category><category>协程</category><category>线程</category><category>异步编程</category><category>Rust</category><category>Go</category><category>JavaScript</category>
    </item>
    <item>
      <title>[记录]: 我理解的服务器负载均衡</title>
      <link>https://example.com/code/loadbalancer</link>
      <guid>https://example.com/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://example.com/code/lspnetwork</link>
      <guid>https://example.com/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**: 下载 D...</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://example.com/code/install-vmware-on-latest-kernel</link>
      <guid>https://example.com/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://example.com/code/tips-of-k8s-mysql</link>
      <guid>https://example.com/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 Con...</description><category>Kubernetes</category><category>MySQL</category><category>Database</category><category>Character Encoding</category><category>DevOps</category>
    </item>
    <item>
      <title>错误处理这件事：我踩过的坑和现在的选择</title>
      <link>https://example.com/code_draft/monad-better</link>
      <guid>https://example.com/code_draft/monad-better</guid>
      <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
      <description>写代码越久，越会发现一个很现实的问题： 很多线上问题，根本不是算法不行，也不是架构不够 fancy，而是错误处理一团乱。 我看到不少文章喜欢直接下结论： - Result 比 Exception 高级 - Exception 都是黑魔法 - C 的错误码太落后 但真正在项目里干活时，其实不是这么回事。 我这几年刚好三种都用过： - Java 业务服务（Exception） - C 嵌入式和系统代码...</description><category>错误处理</category><category>Rust</category><category>Java</category><category>C</category><category>工程实践</category>
    </item>
  </channel>
</rss>
