Tôi có ba dự án đến có chung một vấn đề:
họ cần có logic trên hệ thống web và họ cần một ứng dụng cục bộ (ví dụ: điểm bán hàng) giao tiếp với hệ thống đó thông qua dịch vụ web RESTful.
Giải pháp của tôi
Giải pháp tôi quản lý để đưa ra là thực hiện trong hàng đợi ứng dụng máy tính để xếp hàng để lưu trữ các hoạt động trong khi dịch vụ ngoại tuyến, chính xác hơn là xếp hàng tin nhắn không đồng bộ . Tuy nhiên, đó là phần dễ dàng (nếu đó là giải pháp tốt nhất). Tôi cũng quan tâm đến việc đồng bộ hóa dữ liệu và giải quyết xung đột.
Hệ thống chính cần phải dựa trên web vì một ứng dụng web được yêu cầu cho các báo cáo và giám sát của các bên liên quan và các dịch vụ web sẽ xử lý các yêu cầu cho một số cơ sở.
Các máy khách để bàn (tốt nhất là mỏng) sẽ được triển khai với Java (cụ thể hơn là Netbeans) và hệ thống web với Symfony2. Hai trong số các dự án yêu cầu tích hợp phần cứng cho máy khách, do đó, làm cho ứng dụng máy tính để bàn bằng công nghệ web (ví dụ Appcelerator Titanium) có thể là một nỗi đau lớn.
Câu hỏi của tôi
Giải pháp tốt hơn có thể chia tỷ lệ, nghĩa là hiệu quả tối đa với nỗ lực tối thiểu (và tốt nhất là không có chi phí bổ sung, như mua một máy chủ dự phòng cho hoạt động cục bộ)?
Ai khác đã giải quyết điều này trước đây? Làm thế nào bạn giải quyết vấn đề của bạn? Những bài học bạn có thể chia sẻ?
Làm thế nào bạn đối phó với đồng bộ hóa?
Chỉnh sửa: Đã thêm một phần còn thiếu vào câu hỏi của tôi ở điểm # 3