Сейчас использую async-storage, который просто записывет ключ-значение, чего мне вполне предостаточно.
Нужно чтобы просто приложение записало ключ-значение и отправил его на сервер, а если нет интернета, отправила данные на сервер когда интернет появится и все)
rPman, ну мне кажется проще сделать стек http-запросов, который выполнится когда появится интернет, чем синхрлнизацию sqlite и mysql. я подумал, что кто-то подскажет готовые реализации этой логии.
но все-равно спасибо)
Валентин В., я на самом деле так и делаю. И при sidekiq:install у меня создается 2 сервиса. Проблема в том, что когда я выполняю sidekiq:stop или sidekiq:start он останавливает сервис sidekiq.service, а когда запускаю sidekiq:restart, тогда уже как надо sidekiq@1.service и sidekiq@2.service
Сергей Горностаев, а может наоборот сейчас все толковые программисты уедут за границу. нужно будет развивать свои сервисы и наоборот будет не хватать? В любом случае можно учить английский и работать за рубежом.
Román Mirilaczvili, именно этот гем?
ну я больше не нашел других для capistrano и sidekiq. В целом то удобно, что можно быстро одним гемом настроить рестарт sidekiq.
Александр Петров, на самом деле в целом в целом может можно и закрыть вопрос. Просто сам гем написан немного не правильно. Там в исходниках как раз видно, что restart перебирает процессы, а start/stop запускает команду как-будто у нас один процесс.
Román Mirilaczvili, ну там написано что журнал какой-то не правильно работает. это не про мою проблему.
Проблема в общем в том, что я настроил сервисы для нескольких процессов sidekiq: sidekiq@1.service .. sidekiq@i.service
Когда я выполняю команду cap production sidekiq:start, то на сервере запускается команда systemctl --user start sidekiq, то есть он запускает настройку одного процесса.
А если я выполняю cap production sidekiq:restart, то как раз гем перебирает количество процессов и поочередно останавливает и запускает все сервисы.
Мне нужно чтобы когда я выполняю отдельно stop или start, гем тоже выполнял работу со всеми сервисами, а не с одним.
В общем мне кажется мы не туда ушли в итоге. Я думаю не суть зачем мне нужно несколько процессов. Давайте примем за факт, что нужно)
у меня получается есть 4 процесса загрузчика (loader_n). Каждому процессу я отдаю скоп задач, которые должны выполниться ровно друг за другом.
За счет того, что на каждом процессе один поток, я гарантирую, что задачи выполнятся друг за другом. А за счет нескольких процессов, я могу запараллелить выполнение этих потоков задач.
1) sidekiq@1.service и sidekiq@2.service создает сам гем capistrano-sidekiq, когда запускаю sidekiq:install
2) потому что стандартно гем при выполнении задачи sidekiq:start запускает только один процесс. а при запуске sidekiq:restart он перебирает процессы и запускает конкретно sidekiq@1.service .. sidekiq@#{i}.service.
Видимо это ошибка гема.
Валентин В., у меня есть ряд задач в которых важен порядок выполнения. Они должны выполнить ровно друг за другом.
Поэтому за счет нескольких процессов, я могу распараллелить выполнение этих скопов задач.