5

Tôi có một ứng dụng đường ray cần phải yêu cầu dữ liệu từ một tiến trình chạy cục bộ đang chạy EventMachine. Cách tốt nhất để thực hiện yêu cầu/phản hồi này là gì?Giao tiếp giữa Rails và Ruby EventMachine Process

+0

Bạn cần đồng bộ hóa dữ liệu (đối với phản hồi http) hoặc không đồng bộ (dưới dạng người lao động)? – Reactormonk

+0

@tass Tôi muốn đường ray yêu cầu quy trình cho một số dữ liệu và quy trình phản hồi dữ liệu ngay lập tức như tương tác giữa máy chủ web và trình duyệt. Dữ liệu có lẽ sẽ bằng JSON. – Mike

+0

@tass để đồng bộ hóa dữ liệu – Mike

Trả lời

0

Cảm ơn câu trả lời. Tôi đã sử dụng RabbitMQ.

0

Không chắc chắn về điều đó, nhưng tôi sẽ cố gắng sử dụng ổ cắm cho nó. EM - nghe và nhận tin nhắn, trả lại dữ liệu, Rails - kết nối với EM và gửi tin nhắn và nhận dữ liệu.

0

Ngoài ra kiểm tra một viên ngọc mới: websocket-rails
Mời plug and play hỗ trợ WebSocket cho Ruby on Rails.

0

Cách đơn giản nhất là để có HTTP nói chuyện phụ trợ của bạn. Ứng dụng Rails của bạn sau đó chỉ cần thực hiện một yêu cầu HTTP đến máy chủ phụ trợ của bạn. Trả về dữ liệu trong JSON và sử dụng khi cần trong Rails.

Tại PostRank, chúng tôi đã tạo Goliath mà chúng tôi đã chạy sau HAProxy để hiển thị dữ liệu cho các ứng dụng Rails của chúng tôi.

0

Hãy xem IO.pipe nếu bạn ở dưới hệ thống * nix và bạn đang thực hiện một ngã ba cho vòng lặp EM.run.

+0

Tất cả các câu trả lời khác cho câu hỏi này đề xuất sử dụng pháo để tiêu diệt ruồi. –