У мене є три вхідні проекти, які мають спільну проблему:
їм потрібно мати логіку у веб-системі, і їм потрібен локальний додаток (наприклад, точка продажу), яка спілкується з такою системою через веб-сервіс RESTful.
Моє рішення
Рішення, яке мені вдалося придумати, - це реалізувати в черзі повідомлення для додатків на робочому столі для зберігання операцій, коли служба в автономному режимі, точніше, асинхронна черга повідомлень . Однак це легка частина (якщо таке найкраще рішення). Я також переймаюся синхронізацією даних та вирішенням конфліктів.
Основна система повинна бути веб-базованою, оскільки для створення звітів та моніторингу зацікавленими сторонами потрібен веб-додаток, а веб-служби оброблять запити для кількох установ.
Клієнти для настільних комп’ютерів (бажано тонкі) будуть реалізовані за допомогою Java (точніше Netbeans) та веб-системи з Symfony2. Два проекти вимагають інтеграції обладнання для клієнта, тому створення настільних додатків за допомогою веб-технологій (наприклад, Appcelerator Titanium) може бути серйозним болем.
Моє запитання
Що є кращим рішенням, яке масштабує масштаб, маючи на увазі максимальну ефективність із мінімальними зусиллями (і, бажано, без додаткових витрат, як-от придбання резервного сервера для локальної роботи)?
Хто ще займався цим раніше? Як ви вирішили свою проблему? Якими уроками ви можете поділитися?
Як ви мали справу з синхронізацією?
Редагувати: До мого запитання в пункті №3 додана відсутність