Access denied, Please sign in and make sure you have proper permission.

Rails Rails 单体应用的极简架构

ratazzi · August 31, 2025 · 101 hits

本着极简化的原则,通过限定具体技术栈来简化架构和开发流程。遵循 Rails "约定胜于配置" 的哲学,最大化利用框架本身的效率和优势。不使用微服务、不做前后端分离、不引入 K8s 等复杂基础设施。

开发环境

  • 使用 Hotwired 避免 SPA 带来的复杂性,回归服务端渲染的高效开发模式
  • 采用现代原生 ES6 + Import Maps 方案,完全 #NOBUILD,告别构建工具的复杂配置
  • 直接引入 Tailwind CSS:<script src="https://cdn.tailwindcss.com"></script>,零构建步骤
  • 使用 Solid Queue + PostgreSQL 实现异步任务处理,无需额外的消息队列或 Redis

生产环境

  • Rails PumaThruster 直接面对 ALB,省去 Nginx 等反向代理层,因为主要处理动态请求
  • 使用 Propshaft 进行静态资源构建和管理
  • 结合 Cloudflare HTTP 103 Early Hints 在首次请求时告知浏览器预加载 CSS 资源,显著提升页面渲染速度
  • 通过 Cloudflare Workers 处理静态文件和 S3 请求,实现边缘计算网关,提升性能和可靠性
  • 基于 rails routes 生成白名单路径规则,在边缘层直接拦截无效请求,减少服务器负载并提升安全性

写了几年 Rails 之后真的是不想再用别的了,而且越来越懒,不想用复杂的技术

No Reply at the moment.
You need to Sign in before reply, if you don't have an account, please Sign up first.