Tôi sẽ xây dựng một ứng dụng web để quản lý các ghi chú (nghĩ về một cái gì đó tương tự như Evernote). Tôi đã quyết định sử dụng Backbone.js + phía máy khách JQuery. Phía máy chủ, tôi chưa quyết định: hoặc là PHP thuần túy (mà tôi biết rất rõ) hoặc Node.js + Socket.io (hoàn toàn mới đối với tôi).Node.js và Socket.io - chúng có thể đi được bao xa với các ứng dụng web thời gian thực?
Tôi đang xem xét Node.js + Socket.io vì tôi muốn ứng dụng web của tôi là thời gian thực (ví dụ: nếu người dùng cập nhật ghi chú, ghi chú đó sẽ được cập nhật ngay lập tức cho cộng tác viên chia sẻ ghi chú đó, mà không cần tải lại trang).
Tôi cũng đang xem xét, thay thế thứ ba, sử dụng Node.js và Socket.io cho giao diện người dùng và PHP cho API REST (tôi cảm thấy thoải mái hơn khi xây dựng một API với PHP). Mã PHP và Javascript sẽ chia sẻ cơ sở dữ liệu MongoDB.
Câu hỏi của tôi là: nếu tôi phát triển API REST cho ứng dụng web của tôi bằng PHP và ghi chú mới cho người dùng được tạo thông qua API (ví dụ: ứng dụng Android gửi yêu cầu API để tạo ghi chú đó), sẽ Node.js, Socket.it và Backbone.js có thể cập nhật ngay lập tức giao diện người dùng của người dùng và hiển thị ghi chú mới trên màn hình của họ? Tôi nghĩ rằng có thể được gọi là "thông báo đẩy".
Tôi hy vọng tôi đã đủ rõ ràng.
Ngoài ra, có bất kỳ công nghệ nổi bật thay thế nào để tạo các ứng dụng web thời gian thực không?
Jack, cảm ơn câu trả lời của bạn. Và những gì về thời gian thực? Liệu một thay đổi thông qua REST API được thực hiện với PHP có được phản ánh trong giao diện người dùng ngay lập tức không? – dan
Tôi đã thêm một số thông tin về việc cập nhật giao diện người dùng. Dự án năm cuối của tôi ở trường đại học rất giống với những gì bạn đang tạo ... Tôi đã sử dụng Node.js/Express/Socket.IO và lưu trữ 'Notes' trong cơ sở dữ liệu MongoDB. – Jack
Tuyệt vời! Và bạn quản lý để có được tất cả mọi thứ làm việc theo thời gian thực? – dan