昨天从 Ruby Weekly 邮件中看到一个叫 spring 的 gem, 然后就点开看了看,然后发现这个 gem 在进行 Rails 开发的时候,很好的减少了启动时间。然后又看到了 zeus 这个 gem, 他部分用 golang 编写。两个 gem 的使用效果基本上一样。想问问大家对这类 gem 的感觉是咋样的?
我先说说我的:
- 使用起来很方便,当第一次执行的时候,会自动在后台开启一个 server 用来 fork, 所以基本上和正常使用 rails command 类似就好了。
- 与 Terminal 的 Session 关联,关闭当前 terminal session 那么这个 session 下的 spring server 都会自动关闭。同理,如果在多个 terminal session 中使用 spring rake 则会有多个 spring server...
- 可以使用 spring binstub 将常用命令 (generator, console, rake 等等) 生成一个使用 spring 前缀的命令,用来简化每次的 spring rake , 命令放到了那个 ./bin/ 目录下
- 暂时还不支持 rails destroy 命令
- 需要 zeus start 启动一个 zeus server, 为常使用的命令各准备一个 (?), 内存占用稍多
- 使用命令使用 zeus [comman] , 不过都有简称例如 zeus generate(alias: g), zeus server(alias: s), 每条命令都得输 zeus , 不过在 bash_profile 里设置个 alias 就好了 (例如:z s)
- 所有 terminal 共享这一份 zeus server, 所以 terminal 多的时候不会有 spring 那样开多个 server