-
再谈 FastAPI 架构落地:从 Dispatch 学来的几件事
做 FastAPI 项目,我发现自己有时候会迷恋类似 Clean Architecture / Hexagonal,好像选了这么一个“万金油”的架构就能解决一切问题,但真到落地时,目录还是一团乱:main.py 越写越胖、业务逻辑塞进 router、运维动作全靠口口相传。 后来仔细拆了 Netflix 的 Dispatch,才发现人家厉害的不... Read More
-
运维中的安全实践备忘录
上线一套服务,从买云主机、跑 Docker,到接上数据库、GeoServer、FastAPI,中间哪一步没想清楚,日后都可能变成一颗“定时炸弹”。 这篇运维中的安全实践备忘录,不是教科书式的最佳实践大全,而是按我自己常用的技术栈, 把云服务器、Docker、Postgres、GeoServer、FastAP... Read More
-
Clean Architecture 与 Hexagonal 的差异与实践指南
Clean Architecture 和 Hexagonal Architecture 常常被放在一起讨论,结果很多人看完文档还是面对同样的问题: 概念都懂了,可是实战里到底有什么差异?我这个项目应该按哪一套来拆? 如果你已经用 FastAPI 搭过一圈服务,现在开始认真思考 目录如何分层、Use Case 怎么落... Read More
-
GeoServer 单点登录配置
GeoServer 自带的账号体系在小规模使用场景下其实已经够用,但一旦进入生产环境,账号分散、权限分散就会带来数据安全和审计上的风险。 如果你的系统里已经有了 Keycloak 这类统一身份认证平台,把 GeoServer 納入同一套认证与授权体系,会更利于集中管理访问权限、降低泄露风险、做好安全审计。 这篇教程... Read More
-
Nextcloud OSS 存储配置指南
这篇文档带你一步步把阿里云 OSS 接入到 Nextcloud,覆盖三种常见方式: 通过 External Storage 插件,把 OSS Bucket 挂成一个目录 把 OSS 配置成主存储(Primary Storage) 用 ossfs 挂载到本地,再由 Nextcloud 访问(不推荐,只做补... Read More
-
Clean Architecture 在 FastAPI 中的实践指南
在写后台项目的时候,你可能会发现一个规律:业务量越做越大,代码越写越乱。 尤其当用户模块、商品模块、评价模块扯在一起,各自都要查彼此的数据,没几个月整个项目就会变成“互相 import 大乱炖”。 Clean Architecture 正好帮我们解决这个困局。它把业务逻辑和技术细节严格隔开,让项目越做越大,但不会越做越乱。... Read More
-
陌生代码快速上手指南
大部分时候,我们接手的都不是“从零开始写”的项目,而是别人已经折腾了好几年的代码库:README 半旧不新,目录层层嵌套,类名函数名一个比一个抽象。 这个时候,如果只是本能地打开 src/ 乱点一通,很容易一下午过去,只留下一个模糊印象——“好复杂”“以后再看”。 下面这篇小册子,想做的就是给这种场景准备一... Read More
-
在 Starlette / FastAPI 集成 APScheduler
在 Web 服务里跑一些定时任务(比如每分钟拉一次数据、定时清理缓存),又不想单独开一个脚本, 就可以把 APScheduler 嵌进 Starlette / FastAPI 里,随应用一起启动和停止。 核心思路 用 AsyncIOScheduler 管理任务(和 Starlette/FastAPI 的 asyncio 世界... Read More