Rails 8 今天发布了,以下是 Rails 8 的新内容
Kamal 2 + Thruster
Rails 8 已预配置 Kamal 2,用于将 Rails 应用部署到任何地方。Dockerfile 也已升级,加入了名为 Thruster 的新代理,它位于 Puma Web 服务器之前,提供 X-Sendfile 加速、资源缓存和资源压缩。这意味着无需再在前面放置 Nginx 或其他 Web 服务器。
附注:你可以传入--skip-kamal或--skip-thruster来禁用 Kamal 或 Thruster 的配置。
Solid
用于 WebSocket、后台任务和缓存。默认技术栈提供了新的基于数据库的适配器,分别名为 Solid Cable、Solid Queue 和 Solid Cache。
Solid Cable
Solid Cable 取代了使用 Redis 来传递 WebSocket 消息的需求。额外的好处是,Solid Cable 默认会在数据库中保留消息一天,这可能有助于调试棘手的实时更新问题。
Solid Queue
Solid Queue 对大多数人来说,取代了像 Resque、Good Job 或 Sidekiq 这样的后台任务运行 gem。
Solid Queue 既可以作为 Puma 插件运行,也可以使用新的 bin/jobs 命令来运行。
Solid Cache
Solid Cache 取代了使用 Redis 或 Memcached 来存储 HTML 片段缓存的需求。
你可以传入 --skip-solid 来禁用 Solid gemPropshaft
Rails 8 将 Propshaft 设为新的默认资源管道。它只做两件事:为资源提供加载路径,并为它们打上摘要标记,以便支持远期过期。
生成基础认证
在 Rails 8 中,只需运行 bin/rails generate authentication,我们就能获得 Session 和 User 的基础模型,以及登录功能。不过注册功能仍需自行实现。
完整的变更日志,请参阅 8.0.0 发布说明。

正在加载评论…