Tailwind CSS使用

June 29, 2025 · 0 words · compasty

Nextjs框架使用学习

0. 引言 Next.js 是一个基于 React 的服务端渲染(SSR)框架,它不仅支持静态生成(SSG),还内置了强大的路由系统,极大简化了 React 应用的开发流程。 1. 入门 1.1 项目创建 创建Next.js应用最简单的方法就是使用create-next-app(要求nodejs 18.18+): npx create-next-app@latest。 ...

June 19, 2025 · 4243 words · compasty

FastAPI框架使用

基础 框架介绍 FastAPI,一个用于构建 API 的现代、快速(高性能)的web框架。建立在Starlette和Pydantic基础上的,Pydantic是一个基于Python类型提示来定义数据验证、序列化和文档的库。Starlette是一种轻量级的ASGI框架/工具包,是构建高性能Asyncio服务的理性选择。 ...

June 13, 2025 · 1587 words · compasty

缓存服务设计

概述 缓存基础 缓存是通过将计算结果或者数据临时存在可以快速访问的位置,从而提高系统吞吐和相应速度,本质是空间换时间。 缓存在计算机系统中应用十分广泛,一些常见的缓存: ...

May 7, 2025 · 956 words · compasty

Golang GMP原理解析

基础知识 线程 vs. 协程 线程Thread是操作系统内核视角下的最小调度单元,其创建、销毁、切换、调度都需要由内核参与; 协程可以理解为用户态线程,是用户程序对对线程概念的二次封装,和线程为多对一关系,在逻辑意义上属于更细粒度的调度单元,其调度过程由用户态闭环完成,无需内核介入 协程可以作为实现用户态线程的基础,但是不是等于是用户态线程。“User-level threads are different from coroutines. Coroutines voluntarily yield to each other; user-level threads can preempt or be preempted.” –MIT 6.828 Operating System ...

May 6, 2025 · 530 words · compasty

微信小程序开发记录

基础 与网页开发的区别 开发语言都是javascript。 ​网页开发中, 渲染任务和脚本任务是互斥的,而在小程序中二者是分别运行在不同的线程。小程序的逻辑层和渲染层是分开的,逻辑层运行在不同于渲染层的独立 JS 运行时中,因此并不能直接使用 DOM API 和 BOM API。这一区别导致了前端开发非常熟悉的一些库,例如 jQuery、 Zepto 等,在小程序中是无法运行的。同时逻辑层的 JS 运行时与 NodeJS 环境也不尽相同,所以一些 NPM 的包在小程序中也是无法运行的。 ...

April 2, 2025 · 8126 words · compasty

使用 uv:Python 的极速包管理工具

基础 什么是 uv? uv 是由 Astral(知名 Python 工具 Ruff 的开发者)推出的新一代 Python 包管理工具。它用 Rust 编写,旨在提供极速的依赖解析和安装体验,同时兼容现有 Python 工具链(如 pip 和 pip-tools)。根据官方基准测试,uv 的性能可达传统工具的 10-100 倍。 ...

March 23, 2025 · 771 words · compasty

Nginx日常管理

概述 nginx是一个高性能的HTTP和反向代理web服务器。 安装 参考: https://nginx.org/en/linux_packages.html#Ubuntu 使用Let’s Encrypt进行SSL处理 参考:https://www.nginx.com/blog/using-free-ssltls-certificates-from-lets-encrypt-with-nginx/ ...

March 20, 2025 · 306 words · compasty

Hugo使用记录

基础 Hugo常用命令 1 2 3 4 5 6 # 创建新站点,指定配置文件格式为yaml, 默认为toml hugo new site [site_name] --config yaml # 创建新博文 hugo new post/[xxx].md # 启动服务 hugo server -D Hugo目录结构 ├ │ ├ ├ ├ ├ ├ ├ ├ └ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ a └ a c d l s r t h r ─ s o a a t e h u c ─ s n t y a s e g h e t a o t o m o e d t e u i u e . t e s n t c r s y y f t s c a p a e m e u s l s l t . m d 文件名称 简要说明 archetypes 该文件夹主要用来存储博客生成的模板文件,初次使用只有一个default.md,可以根据个人的主题配置添加自定义头部信息 assets 该文件夹主要用于保存博客样式css和js文件 content 保存个人博客所有内容 data 保存生成站点时候所需要的配置文件 layouts 以.html形式存储模板,将你博客内容呈现为静态页面 static 存储所有静态内容:图片、.css、.js等,当使用 Hugo 生成静态页面时,所有内容将会被复制 resources 缓存一些文件来加速站点生成 themes 保存主题 hugo.yml 个人博客主题样式配置文件 主题安装 以本博客使用的PaperMod为例。 ...

March 19, 2025 · 553 words · compasty