- Передача данных с удаленных систем без потери данных?, Аноним, 08:49 , 02-Авг-19 (1)
> Подскажите пожалуйста концептуально как такое построить.Концептуально - просто, достаточно простенького скрипта. ПОКА <работаем> ПОКА <есть_связь> ПЕРЕСЫЛАЕМ <данные> НА СЕРВЕР <сервер> ПОКА <нет_связи> ПИШЕМ <данные> В ФАЙЛ <аварийный_лог> ЕСТЬ ФАЙЛ <аварийный_лог>? ДА: ПЕРЕСЫЛАЕМ <аварийный_лог> НА СЕРВЕР <сервер> СТЕРЕТЬ ФАЙЛ <аварийный_лог>
- Передача данных с удаленных систем без потери данных?, Аноним, 11:12 , 02-Авг-19 (2) –1
- Передача данных с удаленных систем без потери данных?, Andrey Mitrofanov_N0, 11:15 , 02-Авг-19 (3)
> Кроссавчег!Кстати, да. Славно навалил на ТС-а. Но минус тебе все равно поставил. Ибо.
- Передача данных с удаленных систем без потери данных?, Аноним, 11:29 , 02-Авг-19 (4)
>> Кроссавчег! > Кстати, да. Славно навалил на ТС-а. > Но минус тебе все равно поставил. Ибо.Вот те на! Не шалю, никого не трогаю, починяю примус и вообще, я совершенно не понимаю причин такого резкого обращения со мной. И ещё считаю своим долгом предупредить, что аноним - древний и неприкосновенный аккаунт.
- Передача данных с удаленных систем без потери данных?, ыы, 11:04 , 05-Авг-19 (8)
>[оверквотинг удален] > ПОКА <нет_связи> > ПИШЕМ <данные> В ФАЙЛ > <аварийный_лог> > ЕСТЬ ФАЙЛ <аварийный_лог>? > ДА: > > ПЕРЕСЫЛАЕМ <аварийный_лог> НА СЕРВЕР <сервер> > > СТЕРЕТЬ ФАЙЛ <аварийный_лог> > По такой логике любые внешние задержки (в сети например) будут тормозить прием локальных данных с датчиков.
- Передача данных с удаленных систем без потери данных?, Аноним, 14:22 , 05-Авг-19 (14)
> По такой логике любые внешние задержки (в сети например) будут тормозить прием > локальных данных с датчиков.ТС просил концептуальное решение, поэтому в первом приближении полагаем линию связи - прямой, передаваемые данные - шарообразными и неупругими...
- Передача данных с удаленных систем без потери данных?, ыы, 16:11 , 05-Авг-19 (15)
>> По такой логике любые внешние задержки (в сети например) будут тормозить прием >> локальных данных с датчиков. > ТС просил концептуальное решение, поэтому в первом приближении полагаем линию связи - > прямой, передаваемые данные - шарообразными и неупругими...Причем линия связи передает данные мгновенно, вопреки всем реалиям и здравому смыслу...
- Передача данных с удаленных систем без потери данных?, fantom, 16:31 , 05-Авг-19 (16)
>>> По такой логике любые внешние задержки (в сети например) будут тормозить прием >>> локальных данных с датчиков. >> ТС просил концептуальное решение, поэтому в первом приближении полагаем линию связи - >> прямой, передаваемые данные - шарообразными и неупругими... > Причем линия связи передает данные мгновенно, вопреки всем реалиям и здравому смыслу... И в неограниченном объеме :)
- Передача данных с удаленных систем без потери данных?, Andrey Mitrofanov_N0, 08:16 , 06-Авг-19 (17)
>>> прямой, передаваемые данные - шарообразными и неупругими... >> Причем линия связи передает данные мгновенно, вопреки всем реалиям и здравому смыслу... > И в неограниченном объеме :) Вооот! Берём Реализацию выше за основу и подкладываем её же ей же в качестве первого приближения реализации линии связи. Увеличиваем вложенность до тех пор, пока задача не сойдётся. Профит.
- Передача данных с удаленных систем без потери данных?, Ann None, 11:30 , 02-Авг-19 (5) –1
>[оверквотинг удален] > Т.е. скрипт на малине собирает данные с датчиков постоянно. При работающем канале > передачи данных эти данные в реальном времени шлются на сервер и > там попадают в БД. Если канал перестал работать (пропал 3G например), > то данные накапливаются на малинке. При восстановлении канала надо передать накопленные > и продолжить слать в реальном времени. > Подскажите пожалуйста концептуально как такое построить. > Хотелось бы максимально использовать системные возможности Linux и свободного ПО, поменьше > программировать своих велосипедов. > Чет я потерялся, не понимаю с использованием чего (технологии, протоколы, ПО) такое > лучше сделать.По описанию - классическая очередь сообщений. Для начала можно посмотреть на RabbitMQ.
- Передача данных с удаленных систем без потери данных?, fantom, 11:53 , 05-Авг-19 (9)
>[оверквотинг удален] > Т.е. скрипт на малине собирает данные с датчиков постоянно. При работающем канале > передачи данных эти данные в реальном времени шлются на сервер и > там попадают в БД. Если канал перестал работать (пропал 3G например), > то данные накапливаются на малинке. При восстановлении канала надо передать накопленные > и продолжить слать в реальном времени. > Подскажите пожалуйста концептуально как такое построить. > Хотелось бы максимально использовать системные возможности Linux и свободного ПО, поменьше > программировать своих велосипедов. > Чет я потерялся, не понимаю с использованием чего (технологии, протоколы, ПО) такое > лучше сделать.Одна тулза пишет данные в файл/базу/очередь/буфер/свой_вариант Вторая- вынимает и пропихивает дальше по принципу транзакций, пока транзакция не закрыта данные не считаются переданными.
- Передача данных с удаленных систем без потери данных?, fantom, 11:56 , 05-Авг-19 (10)
>[оверквотинг удален] >> то данные накапливаются на малинке. При восстановлении канала надо передать накопленные >> и продолжить слать в реальном времени. >> Подскажите пожалуйста концептуально как такое построить. >> Хотелось бы максимально использовать системные возможности Linux и свободного ПО, поменьше >> программировать своих велосипедов. >> Чет я потерялся, не понимаю с использованием чего (технологии, протоколы, ПО) такое >> лучше сделать. > Одна тулза пишет данные в файл/базу/очередь/буфер/свой_вариант > Вторая- вынимает и пропихивает дальше по принципу транзакций, пока транзакция не закрыта > данные не считаются переданными.А вообще - классическая электронная почта как раз решает поставленную задачу :)
- Передача данных с удаленных систем без потери данных?, alexkv, 12:12 , 05-Авг-19 (12)
> Одна тулза пишет данные в файл/базу/очередь/буфер/свой_вариант > Вторая- вынимает и пропихивает дальше по принципу транзакций, пока транзакция не закрыта > данные не считаются переданными.Это понятно. Я интересовался какие именно тулзы можно использовать для решения такой задачи.
- Передача данных с удаленных систем без потери данных?, fantom, 12:24 , 05-Авг-19 (13)
>> Одна тулза пишет данные в файл/базу/очередь/буфер/свой_вариант >> Вторая- вынимает и пропихивает дальше по принципу транзакций, пока транзакция не закрыта >> данные не считаются переданными. > Это понятно. > Я интересовался какие именно тулзы можно использовать для решения такой задачи.Хоть POST запросы посылайте в цикле пока нужный код ответа от сервера не получите. Хоть SNMP set. Хоть INSERT в базу пока база Ok не ответит. Хоть в subversion тупо по крону коммитить. Тут что вам ближе тем и пользуйтесь.
- Передача данных с удаленных систем без потери данных?, Павел Отредиез, 17:29 , 16-Авг-19 (18)
>[оверквотинг удален] > Т.е. скрипт на малине собирает данные с датчиков постоянно. При работающем канале > передачи данных эти данные в реальном времени шлются на сервер и > там попадают в БД. Если канал перестал работать (пропал 3G например), > то данные накапливаются на малинке. При восстановлении канала надо передать накопленные > и продолжить слать в реальном времени. > Подскажите пожалуйста концептуально как такое построить. > Хотелось бы максимально использовать системные возможности Linux и свободного ПО, поменьше > программировать своих велосипедов. > Чет я потерялся, не понимаю с использованием чего (технологии, протоколы, ПО) такое > лучше сделать.Тебе хорошо подойдет smtp протокол для этого. Клиенты пусть имеют локальные smtp сервера, которые копят очередь и отсылают на центральный сервер. На центральном сервере транспортом пайп можно письма парсить и вносить в БД.
- Передача данных с удаленных систем без потери данных?, Павел Отредиез, 17:41 , 16-Авг-19 (19)
>[оверквотинг удален] >> то данные накапливаются на малинке. При восстановлении канала надо передать накопленные >> и продолжить слать в реальном времени. >> Подскажите пожалуйста концептуально как такое построить. >> Хотелось бы максимально использовать системные возможности Linux и свободного ПО, поменьше >> программировать своих велосипедов. >> Чет я потерялся, не понимаю с использованием чего (технологии, протоколы, ПО) такое >> лучше сделать. > Тебе хорошо подойдет smtp протокол для этого. Клиенты пусть имеют локальные smtp > сервера, которые копят очередь и отсылают на центральный сервер. На центральном > сервере транспортом пайп можно письма парсить и вносить в БД.Делается элементарно. Допустим у тебя raspbian с exim. Все шлют на input@10.0.0.1 согласно политике повторов и по cron прогоном очереди. На сервере в ложишь /home/input/.forward с содержимым "| input.sh ". Каждое входящее письмо попадает в экземпляр input.sh на stdin. Все конфигурации exim дефолтные ничего не нужно придумывать. При наличии связи экзим доставляет немедленно, при отсутствии копит очередь.
- Передача данных с удаленных систем без потери данных?, Павел Отредиез, 17:47 , 16-Авг-19 (20)
>[оверквотинг удален] >>> лучше сделать. >> Тебе хорошо подойдет smtp протокол для этого. Клиенты пусть имеют локальные smtp >> сервера, которые копят очередь и отсылают на центральный сервер. На центральном >> сервере транспортом пайп можно письма парсить и вносить в БД. > Делается элементарно. Допустим у тебя raspbian с exim. Все шлют на input@10.0.0.1 > согласно политике повторов и по cron прогоном очереди. На сервере в > ложишь /home/input/.forward с содержимым "| input.sh ". Каждое входящее письмо попадает > в экземпляр input.sh на stdin. Все конфигурации exim дефолтные ничего не > нужно придумывать. При наличии связи экзим доставляет немедленно, при отсутствии копит > очередь.Отправка письма echo "Мой текст" | mail input@10.0.0.1
- Передача данных с удаленных систем без потери данных?, Аноним, 17:01 , 21-Сен-20 (23)
БД с репликацией локально, ту же MySQL можно взять. Модель данных можно придумать такую, чтобы это был кольцевой буфер и не нужно было специально удалять старые данные, чтобы они перезаписывались при нормальной работе. replace into data_table ( KEY, TS, VALUE) values ( количество секунд от начала суток, время, значение) На том конце выбираете по TS и что-то делаете.
- Передача данных с удаленных систем без потери данных?, Брат Анон, 09:25 , 19-Ноя-20 (24)
> БД с репликацией локально, ту же MySQL можно взять. > Модель данных можно придумать такую, чтобы это был кольцевой буфер и не > нужно было специально удалять старые данные, чтобы они перезаписывались при нормальной > работе.БД? На ПЛК? Удачи.
|