Обработка нестабильного интернет-соединения в Серверно-Клиентском приложении

StackOverflow https://stackoverflow.com/questions/999524

Вопрос

какую технологию я могу использовать для управления нестабильным подключением к Интернету в серверно-клиентском приложении.я знаю в основном PHP (+ Zend Framework), изучаю C # и ASP.NET MVC.я слышал, что WCF / MSMQ - это то, что может помочь...но как ...есть ли что-то, что PHP (с которым я более знаком) может сделать?но также полезно знать альтернативу .NET, если она лучше

предыстория:

клиент ***ы *** подключатся к базе данных сервера для выполнения CRUDs.но если произойдет сбой интернет-соединения, это будет невозможно.итак, как мне это исправить?

решение, используемое сейчас, состояло в том, чтобы иметь localhost db.в конце дня все клиенты загрузятся на сервер, а утром загрузят "консолидированную" базу данных с сервера.это не является надежной защитой, так как загрузка все еще может завершиться неудачей.а учитывая большие объемы передаваемых данных, это фактически увеличивает шансы.

Обновить:есть ли замена PHP / Zend Framework / MySQL для MSMQ / WCF?

Это было полезно?

Решение

WCF может помочь, поскольку он поддерживает различные технологии для надежной передачи сообщений.

Одна вещь, которая могла бы вам помочь, - это заставить клиентов вносить изменения в свои данные локально, а затем загружать эти изменения в надежную очередь сообщений.Вы не стали бы загружать все изменения за одну транзакцию.Вы могли бы загружать 10 за раз, возможно, по одному за раз.Поскольку загруженные сообщения обрабатываются на сервере, сервер записывает результаты транзакции в другую очередь, уникальную для каждого клиента.После загрузки (или, возможно, в то же время) клиент проверил бы эту очередь, чтобы увидеть, каков был результат каждой загрузки.Если результат был успешным, то клиент может удалить свою локальную базу данных.Если результатом был сбой, то клиент должен попробовать загрузить его снова.

Конечно, вы всегда должны быть осторожны, чтобы ваши попытки восстановления после ошибок не усугубили ситуацию.Слишком большой трафик повторных попыток по плохой ссылке вполне может привести Еще трафик, который сам по себе может нуждаться в восстановлении и т.д.

И, конечно, конечным решением является переход к более надежным ссылкам.Не обязательно быстрее, но просто надежнее.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top