В идеале вы хотите написать очередь http fifo, используя локальное хранилище HTML5.В большинстве случаев это очень излишне, но на работе у нас есть собственная клиентская библиотека для iOS, WP7, Android и Javascript, и все они предлагают постоянные очереди и надежную доставку, поэтому им приходится справляться с разрывом соединения с сервером по любой причине.
Получить / Опубликовать -> Вход в очередь In-Memory -> Сохранить в хранилище -> Отправить -> удалить из хранилища -> поднять обратный вызов «отправлено».
Если сообщение не удается отправить, оставьте его в хранилищеи запросить его в памяти.
Иметь событие таймера, которое запускает очередь каждые несколько секунд (а также пинать ее, когда сообщения добавляются / удаляются).Ограничьте максимальное количество одновременных подключений (Http должно быть 2 для каждого клиента).
Затем при каждой загрузке вашего веб-приложения попробуйте прочитать все элементы в локальном хранилище обратно в очередь In-Memory.
Тогда у вас есть постоянные / надежные очереди и вы не потеряете ни одного сообщения:)