<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Ruozhi&#39;s Blog</title>
  <icon>https://zh925.github.io/uploads/avatar.jpg</icon>
  <subtitle>瞎写</subtitle>
  <link href="http://blog.ruozhi.com/atom.xml" rel="self"/>
  
  <link href="http://blog.ruozhi.com/"/>
  <updated>2026-04-30T08:16:23.601Z</updated>
  <id>http://blog.ruozhi.com/</id>
  
  <author>
    <name>小郑</name>
    
  </author>
  
  <generator uri="https://hexo.io/">Hexo</generator>
  
  <entry>
    <title>AI浪潮下的一些思考</title>
    <link href="http://blog.ruozhi.com/2026/04/30/AI%E6%B5%AA%E6%BD%AE%E4%B8%8B%E7%9A%84%E4%B8%80%E4%BA%9B%E6%80%9D%E8%80%83/"/>
    <id>http://blog.ruozhi.com/2026/04/30/AI%E6%B5%AA%E6%BD%AE%E4%B8%8B%E7%9A%84%E4%B8%80%E4%BA%9B%E6%80%9D%E8%80%83/</id>
    <published>2026-04-30T03:09:25.000Z</published>
    <updated>2026-04-30T08:16:23.601Z</updated>
    
    
    <summary type="html">&lt;p&gt;AI 这个词，从 22 年底开始就再没离开过我的视野。这几年里，我对它的认知一次次被推翻、重建——从最初的不屑一顾，到如今每天都离不开，连我自己都觉得不可思议。&lt;/p&gt;</summary>
    
    
    
    <category term="思考" scheme="http://blog.ruozhi.com/categories/%E6%80%9D%E8%80%83/"/>
    
    
    <category term="AI" scheme="http://blog.ruozhi.com/tags/AI/"/>
    
    <category term="思考" scheme="http://blog.ruozhi.com/tags/%E6%80%9D%E8%80%83/"/>
    
  </entry>
  
  <entry>
    <title>进来这篇文章里放个烟花吧</title>
    <link href="http://blog.ruozhi.com/2023/06/10/%E8%BF%9B%E6%9D%A5%E8%BF%99%E7%AF%87%E6%96%87%E7%AB%A0%E9%87%8C%E6%94%BE%E4%B8%AA%E7%83%9F%E8%8A%B1%E5%90%A7/"/>
    <id>http://blog.ruozhi.com/2023/06/10/%E8%BF%9B%E6%9D%A5%E8%BF%99%E7%AF%87%E6%96%87%E7%AB%A0%E9%87%8C%E6%94%BE%E4%B8%AA%E7%83%9F%E8%8A%B1%E5%90%A7/</id>
    <published>2023-06-09T23:39:48.000Z</published>
    <updated>2026-04-30T03:05:37.602Z</updated>
    
    
    <summary type="html">&lt;p&gt;最近在逛博客的时候发现了&lt;a href=&quot;https://www.yunyoujun.cn/&quot;&gt;云游君的小站&lt;/a&gt;有一个鼠标点击特效，会放烟花，看着很有趣，于是就想着学习一下。在看了博主开源的&lt;a href=&quot;https://github.com/YunYouJun/valaxy/tree/main/packages/valaxy-theme-yun&quot;&gt;valaxy-theme-yun&lt;/a&gt;这个主题中找到了对应的代码段，然后发现最初的代码是来自&lt;a href=&quot;https://animejs.com/&quot;&gt;anime&lt;/a&gt;库的一个&lt;a href=&quot;https://codepen.io/juliangarnier/pen/gmOwJX&quot;&gt;demo&lt;/a&gt;，因为该demo主要是用anime实现动画效果，我就想着能不能不用anime自己来实现这个效果。&lt;/p&gt;</summary>
    
    
    
    
    <category term="动画" scheme="http://blog.ruozhi.com/tags/%E5%8A%A8%E7%94%BB/"/>
    
    <category term="canvas" scheme="http://blog.ruozhi.com/tags/canvas/"/>
    
    <category term="requestAnimationFrame" scheme="http://blog.ruozhi.com/tags/requestAnimationFrame/"/>
    
  </entry>
  
  <entry>
    <title>JavaScript的并发模型，事件循环，微任务及运行时</title>
    <link href="http://blog.ruozhi.com/2023/05/05/Event-Loop/"/>
    <id>http://blog.ruozhi.com/2023/05/05/Event-Loop/</id>
    <published>2023-05-05T07:56:56.000Z</published>
    <updated>2026-04-30T03:05:37.601Z</updated>
    
    
    <summary type="html">&lt;p&gt;这一篇起初是想把事件循环和微任务给过一遍，后面看文档和材料的时候，发现现在网络上的文章比较笼统，还是得要把标题的这几个概念一起理清楚，才能更好的理解事件循环和微任务这一块的内容。&lt;/p&gt;</summary>
    
    
    
    <category term="JavaScript" scheme="http://blog.ruozhi.com/categories/JavaScript/"/>
    
    
    <category term="JavaScript" scheme="http://blog.ruozhi.com/tags/JavaScript/"/>
    
    <category term="Event Loop" scheme="http://blog.ruozhi.com/tags/Event-Loop/"/>
    
    <category term="microtask" scheme="http://blog.ruozhi.com/tags/microtask/"/>
    
  </entry>
  
  <entry>
    <title>尝试用Koa写接口搭博客（5）- 请求响应日志</title>
    <link href="http://blog.ruozhi.com/2020/08/09/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A25/"/>
    <id>http://blog.ruozhi.com/2020/08/09/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A25/</id>
    <published>2020-08-09T13:42:23.000Z</published>
    <updated>2026-04-30T03:05:37.602Z</updated>
    
    
    <summary type="html">&lt;p&gt;之前在开发的时候，一直觉得我的模型定义应该是有问题的，要不然就是sequelize对于typescript的支持有问题，在重新看了sequelize文档之后发现确实是我写的有问题，所以这个月主要是对模型的定义有了一些改动。然后中途还发现了一个WebComponent的UI库——&lt;a href=&quot;https://shoelace.style/&quot;&gt;shoelace&lt;/a&gt;，于是把页面上的某一些组件改用成shoelace，但是因为这个库现在还不够完善，完全替换可能还需要一些时间，所以页面上的开发就暂时停滞了。然后就是从开始到现在一直心心念念的日志了，这一章最主要的内容就是请求响应的日志记录。&lt;/p&gt;</summary>
    
    
    
    <category term="node" scheme="http://blog.ruozhi.com/categories/node/"/>
    
    <category term="尝试用Koa写接口搭博客" scheme="http://blog.ruozhi.com/categories/node/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A2/"/>
    
    
    <category term="node" scheme="http://blog.ruozhi.com/tags/node/"/>
    
    <category term="koa" scheme="http://blog.ruozhi.com/tags/koa/"/>
    
    <category term="sequelize" scheme="http://blog.ruozhi.com/tags/sequelize/"/>
    
  </entry>
  
  <entry>
    <title>尝试用Koa写接口搭博客（4）- 登录注册页面</title>
    <link href="http://blog.ruozhi.com/2020/07/11/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A24/"/>
    <id>http://blog.ruozhi.com/2020/07/11/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A24/</id>
    <published>2020-07-11T09:54:26.000Z</published>
    <updated>2026-04-30T03:05:37.602Z</updated>
    
    
    <summary type="html">&lt;p&gt;根据上一章立下的flag，这一章毫无疑问是搞定服务端渲染。在摸了两个星期鱼后，我终于摸了登录注册页出来。因为在写这这一部分代码的过程中修改了部分之前的代码，因为过去的也有点久了，忘记有哪些改动点了，所以这章的代码可能会有点不一样，我会把代码托管到&lt;a href=&quot;https://github.com/zh925/ruozhi-blog&quot;&gt;github&lt;/a&gt;上。&lt;/p&gt;</summary>
    
    
    
    <category term="node" scheme="http://blog.ruozhi.com/categories/node/"/>
    
    <category term="尝试用Koa写接口搭博客" scheme="http://blog.ruozhi.com/categories/node/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A2/"/>
    
    
    <category term="node" scheme="http://blog.ruozhi.com/tags/node/"/>
    
    <category term="koa" scheme="http://blog.ruozhi.com/tags/koa/"/>
    
    <category term="sequelize" scheme="http://blog.ruozhi.com/tags/sequelize/"/>
    
  </entry>
  
  <entry>
    <title>尝试用Koa写接口搭博客（3）- 用户模块</title>
    <link href="http://blog.ruozhi.com/2020/06/26/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A23/"/>
    <id>http://blog.ruozhi.com/2020/06/26/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A23/</id>
    <published>2020-06-26T10:52:58.000Z</published>
    <updated>2026-04-30T03:05:37.602Z</updated>
    
    
    <summary type="html">&lt;p&gt;这章主要内容是用户模块的开发，从开始到结束一整套流程需要做的所有事都会记录下来，可能有点不完善，待后续完善后再回来补上。这一章还是后台部分，等后面的章节会尝试在项目中加入页面渲染的部分。&lt;/p&gt;</summary>
    
    
    
    <category term="node" scheme="http://blog.ruozhi.com/categories/node/"/>
    
    <category term="尝试用Koa写接口搭博客" scheme="http://blog.ruozhi.com/categories/node/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A2/"/>
    
    
    <category term="node" scheme="http://blog.ruozhi.com/tags/node/"/>
    
    <category term="koa" scheme="http://blog.ruozhi.com/tags/koa/"/>
    
    <category term="sequelize" scheme="http://blog.ruozhi.com/tags/sequelize/"/>
    
  </entry>
  
  <entry>
    <title>尝试用Koa写接口搭博客（2）- 错误处理</title>
    <link href="http://blog.ruozhi.com/2020/06/26/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A22/"/>
    <id>http://blog.ruozhi.com/2020/06/26/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A22/</id>
    <published>2020-06-25T19:08:47.000Z</published>
    <updated>2020-06-26T13:30:00.000Z</updated>
    
    
    <summary type="html">&lt;p&gt;端午安康鸭！摸了大半个月的鱼，总算是开始写第二章了，这一章主要是记录一下错误处理。（原本想要连同第一个业务接口一起记录下来，写到一半发现内容太多，影响浏览，因此分为两章，分别记录。）原计划是会更新比较多章节的，但是因为这大半个月过的很憋屈，因为是边学边写，项目进展不大，所以就只能一点点更新了。&lt;/p&gt;</summary>
    
    
    
    <category term="node" scheme="http://blog.ruozhi.com/categories/node/"/>
    
    <category term="尝试用Koa写接口搭博客" scheme="http://blog.ruozhi.com/categories/node/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A2/"/>
    
    
    <category term="node" scheme="http://blog.ruozhi.com/tags/node/"/>
    
    <category term="sequelize" scheme="http://blog.ruozhi.com/tags/sequelize/"/>
    
  </entry>
  
  <entry>
    <title>尝试用Koa写接口搭博客（1）- 基础架子</title>
    <link href="http://blog.ruozhi.com/2020/05/31/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A21/"/>
    <id>http://blog.ruozhi.com/2020/05/31/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A21/</id>
    <published>2020-05-31T14:19:25.000Z</published>
    <updated>2020-06-26T13:30:00.000Z</updated>
    
    
    <summary type="html">&lt;p&gt;从很久之前一直有这个想法，因为太忙（懒），一直没有动手，这次终于把他落实到实际行动上。接下来打算用个把月的闲暇时间把这个项目做完，在这个过程中顺便做个记录。&lt;/p&gt;
&lt;h2 id=&quot;为什么是Koa&quot;&gt;&lt;a href=&quot;#为什么是Koa&quot; class=&quot;headerlink&quot; title=&quot;为什么是Koa&quot;&gt;&lt;/a&gt;为什么是Koa&lt;/h2&gt;&lt;p&gt;刚开始萌生写node的时候纠结了很久，在原生node、express、koa和eggjs中徘徊了很久（主要还是纠结express还是koa），通过翻查各种资料，自己总结出以下结论（可能有误）。&lt;/p&gt;
&lt;p&gt;express已经是一个非常完整的框架了，相比于koa的轻量级，express有着完整的路由和模板等实现的方案。而koa主要还是轻量，模块化程度更高，在主要功能上，算是对express的一种扩展，而且因为使用了新语法，所以不像express一样使用回调，而是利用async/await来消除毁掉陷阱。&lt;/p&gt;
&lt;p&gt;加上我喜欢尝试这种模块化的东西，所以最终选择了koa，等项目后期基本完型后还打算折腾点，搬到eggjs上做尝试。&lt;/p&gt;</summary>
    
    
    
    <category term="node" scheme="http://blog.ruozhi.com/categories/node/"/>
    
    <category term="尝试用Koa写接口搭博客" scheme="http://blog.ruozhi.com/categories/node/%E5%B0%9D%E8%AF%95%E7%94%A8Koa%E5%86%99%E6%8E%A5%E5%8F%A3%E6%90%AD%E5%8D%9A%E5%AE%A2/"/>
    
    
    <category term="node" scheme="http://blog.ruozhi.com/tags/node/"/>
    
    <category term="koa" scheme="http://blog.ruozhi.com/tags/koa/"/>
    
    <category term="sequelize" scheme="http://blog.ruozhi.com/tags/sequelize/"/>
    
  </entry>
  
  <entry>
    <title>Hello World</title>
    <link href="http://blog.ruozhi.com/2020/05/21/hello-world/"/>
    <id>http://blog.ruozhi.com/2020/05/21/hello-world/</id>
    <published>2020-05-21T13:42:23.000Z</published>
    <updated>2026-04-30T03:05:37.602Z</updated>
    
    
      
      
    <summary type="html"></summary>
      
    
    
    
    
  </entry>
  
</feed>
