For high-performance real-time Ruby apps, leave business logic in Ruby (where it is easiest to write) and move the low-level WebSocket server — the actual bottleneck — to a faster runtime (Go or Erlang), connecting via gRPC. This is the guiding principle behind AnyCable and related projects.