2012-12-22 49 views
14

Tôi đang nghĩ đến việc sử dụng Meteor để tạo ứng dụng tiếp theo của mình nhưng tôi đã có một số câu hỏi trước đây.Khả năng tương thích Meteor

  • Từ những gì tôi hiểu thông tin liên lạc giữa máy chủ và ứng dụng khách sử dụng giao thức DDP/WebSockets. Trình duyệt nào hỗ trợ Meteor?

  • Sự khác nhau giữa giao thức truyền thông Meteor và socket.io là gì?

  • Nếu không có sự khác biệt, có khả năng sử dụng socket.io thay vì giao thức Meteor DDP gốc/WebSockets không?

  • Meteor có thể sử dụng kết hợp với Yeoman (khung công việc phát triển bởi Paul Irish) không?

Cảm ơn bạn rất nhiều trước!

+1

Câu hỏi đầu tiên của bạn đã được hỏi và trả lời ở đây: [Trình duyệt web nào được hỗ trợ bởi khung Meteor?] (Http://stackoverflow.com/questions/10127211/what-web-browsers-are-supported- by-meteor-web-framework) – Rahul

Trả lời

23

Hãy xem nếu tôi có thể trả lời câu hỏi của bạn theo thứ tự mà chúng xuất hiện ...

  • Meteor hỗ trợ tất cả các trình duyệt chính. IE, Chrome, Safari. Xem con trỏ của Rahul ở trên cho các phiên bản của IE.
  • socket.io là giao thức cấp thư, sẽ xử lý các thông báo gửi, nhận và định tuyến. Ngược lại, DDP (giao thức của Meteor) là một giao thức cấp cao hơn, mô hình hóa một phần cơ sở dữ liệu của bạn cho trình duyệt và các cuộc gọi RPC. Thật vậy, DDP sử dụng giao thức cấp thư dưới bìa: sockjs.
  • Phá vỡ vận chuyển mức tin nhắn của Meteor với mục đích hướng tới thay thế thả xuống hiện tại yêu cầu một số lượng tái cấu trúc và giảm xuống và bẩn với mã nguồn của Meteor. Trong tương lai, việc vận chuyển mức tin nhắn có thể được đóng gói nhiều hơn một chút, nhưng Meteor nói chung sẽ cung cấp một mặc định hợp lý ở đó - có thể hoặc không phải lúc nào cũng có thể là sockjs-based.
  • Trong khi tôi chưa thử Meteor và Yeoman cùng nhau, chúng bao phủ rất nhiều nền tảng giống nhau. Cả hai đều muốn chạy máy chủ web cục bộ của bạn cho bạn; cả hai đều có ý kiến ​​về cách bố trí dự án của bạn, cả hai đều tùy chọn giảm thiểu javascript của bạn, cả hai đều muốn quản lý gói của bạn (hỗ trợ nhiều hơn cho điều này trong Meteor), cả hai đều cung cấp một chút bản mẫu cho ứng dụng của bạn, v.v. sẽ dễ dàng hơn nhiều khi sử dụng luồng công việc tinh khiết Meteor khi bạn đang phát triển một ứng dụng Meteor.
+0

Cảm ơn bạn rất nhiều vì đã thêm chi tiết !! –

0

Có một số gói trợ giúp trong việc triển khai chức năng websocket thông thường - StreamyStreamy-rooms lưu ý. Nhưng có một sự khác biệt lớn giữa chức năng ổ cắm web và DDP. DDP sử dụng websockets, nhưng nhiều hơn thế. Những thứ như cập nhật lạc quan không được bao gồm trong websockets. Ngoài ra, bằng cách có một phần của cơ sở dữ liệu trên cả máy khách và máy chủ, bạn không cần phải tạo ra bộ phát và ổ cắm dây. Điều này giúp phát triển trực quan và nhanh hơn. Nếu bạn muốn có hành vi cụ thể đó, bạn cũng có thể sử dụng các gói được liệt kê, ví dụ, nếu bạn không muốn duy trì một số thay đổi nhất định đối với cơ sở dữ liệu nhưng vẫn gửi chúng cho những người dùng cụ thể.

Các vấn đề liên quan