Синхронизация копий программы (по локал.сети и не только)

Предложения о добавлении нового функционала в программу

Moderator: Moderators

Сколько копий программы [для Windows] Вы активно используете?

Я новый пользователь, пока не определился [позже можно будет переголосовать]
0
No votes
Активно использую только одну копию для Windows
8
13%
Активно использую только мобильную версию программы [Android, iOS]
1
2%
Активно использую одну копию для Windows и мобильную версию программы [Android, iOS]
21
34%
Активно использую 2 копии для Windows [2 компьютера в одной локальной сети (мобильные версии не в счет)]
2
3%
Активно использую 2 копии для Windows [2 компьютера в разных сетях, например, дома и на работе, или ноутбук(и) (мобильные версии не в счет)]
22
36%
Активно использую больше 2-х копий для Windows [несколько компьютеров в одной локальной сети (мобильные версии не в счет)]
0
No votes
Активно использую больше 2-х копий для Windows [несколько компьютеров в разных сетях (мобильные версии не в счет)]
4
7%
Я не понял смысла опроса [позже можно будет переголосовать]
3
5%
 
Total votes: 61

User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

guru wrote:С ЯндексДиском не получилось. Вроде все нормально, но периодически обновленные файлы не сохраняются на сервер.Синхронизация срабатывает через раз. Появляются копии файлов с индексами (2), (3)...Файл tc_close не помог. Он, почему-то, удаляется.
Каждый раз создавать ручками файл tc_close не удобно. И не понятно, из-за его отсутствия проблемы, или по какой-то другой причине.
Я нашел для себя другое решение, завтра опробую:
guru wrote:Ладно, воткну в роутер флешку с прогой, расшарю и буду по сети запускать.А кто в разных сетях пользует, носите флешку с собой.
MetalFan, спасибо за TrackChecker!
User avatar
MetalFan
Administator
Posts: 9143
Joined: Fri Sep 14, 2012 9:50 am
Location: Moscow
Has thanked: 348 times
Been thanked: 943 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by MetalFan »

guru wrote:Каждый раз создавать ручками файл tc_close не удобно.
А какие могут быть еще варианты? как "просигналить" другим копиям приложения, что им надо закрыться? Можно конечно ВСЕГДА создавать его при старте программы, ждать, к примеру, минуту, удалять и после этого стартовать...

А вообще, не вижу в чем проблема... попользовался программой - закрыл)
wbw, MetalFan
POMAH007
Posts: 30
Joined: Sun Dec 16, 2012 3:28 pm
Has thanked: 4 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by POMAH007 »

guru wrote:
POMAH007 wrote:Флешку прекрасно замещает облачный сервис.
Как оказалось, не замещает.
ЯндексДиск - облачный сервис, не проканал.
Фсад Яндекс! Переходите на Дропбокс. Проверено - работает. Правда, флешкой его назвать не совсем правильно, поскольку он синхронизирует копии назначенного каталога на диске. С ним нельзя зайти в первый попавшийся кафевафлю и запустить оттуда трекчекера.
Есть ещё Гуглодиск, но его я не пробовал.
User avatar
eLsIe
Posts: 721
Joined: Tue Dec 11, 2012 5:13 am
Has thanked: 57 times
Been thanked: 24 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by eLsIe »

"Я может сейчас глупость скажу" (C) А зачем вообще нужно иметь одновременно работающие копии программы? Для лишней нагрузки на сервисы? Сами мы-то не вездесущи, находимся где-то в одном месте - вот там и запусти/проверь/посмотри/закрой программу...
Это тело всегда находит отдохновение в праздности. Кто может обременить нас почётом или позором, приобретениями или утратами?
Это сердце всегда находит удовольствие в покое. Кто может смутить нас истиной или ложью, выгодой или ущербом?
Хун Цзычен.
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

MetalFan wrote:А вообще, не вижу в чем проблема... попользовался программой - закрыл)
Я так и делал. У меня при тестировании ЯндексДиска ни разу не работало одновременно 2 копии программы, но глюки все равно возникали регулярно. Видимо в данном случае не подходит сам принцип работы ЯД. Кому очень нужно, можно попробовать другие подобные сервисы. Я же пользуюсь в локалке, поэтому решу вопрос по-своему.
MetalFan, спасибо за TrackChecker!
POMAH007
Posts: 30
Joined: Sun Dec 16, 2012 3:28 pm
Has thanked: 4 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by POMAH007 »

eLsIe wrote:вот там и запусти/проверь/посмотри/закрой программу...
Есть такая болезнь. На "с" начинается и на "с" заканчивается. Склерос! :)
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

MetalFan wrote:А какие могут быть еще варианты? как "просигналить" другим копиям приложения, что им надо закрыться? Можно конечно ВСЕГДА создавать его при старте программы, ждать, к примеру, минуту, удалять и после этого стартовать...
Можно сделать следующим образом:
Нужно поменять tc_close на tc_open

Code: Select all

При старте программа ищет в папке tc_open
Если не находит:
   Создает tc_open сама и спокойно запускается
   При работе постоянно проверяет присутствие tc_open
      Если он исчез/удален программа закрывается (не создавая tc_open)
Если находит:
   Выдает сообщение_
           "Найден файл tc_open. Возможно запущена еще одна копия программы."_
            и 2 кнопки "Закрыть все кроме этой" + "Выход"
      Нажато "Выход"
         Выход из программы
      Нажато "Закрыть все кроме этой"
         Удаляется tc_open
         Программа запускается
         Запускается таймер (~1 мин), по истечении которого создается новый tc_open_
               и включается слежение за ним
                      Если он исчез/удален программа закрывается (не создавая tc_open)
         Эту минуту программа работает в режиме чтения
При закрытии вручную или системой(при отключении ПК) программа удаляет tc_open
Почему нельзя для этого использовать tc_close:
Потому, что у большинства пользователей вероятность работы старой копии программы мала. Только если программу или компьютер случайно забыли выключить. А при использовании tc_close, программа при каждом запуске будет ждать минуту или работать эту минуту в режиме чтения, чтобы не вызвать сбой или ошибку в файлах базы.
Вариант же с tc_open запускается с предупреждением (а после на 1 мин. в режиме чтения) только когда есть явный знак, что запущена копия (или программа некорректно завершена). Этим знаком и является присутствие в папке файла tc_open.
MetalFan, спасибо за TrackChecker!
User avatar
MetalFan
Administator
Posts: 9143
Joined: Fri Sep 14, 2012 9:50 am
Location: Moscow
Has thanked: 348 times
Been thanked: 943 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by MetalFan »

guru, имхо чот совсем жесть получилась) надо еще покумекать.
wbw, MetalFan
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

MetalFan wrote:имхо чот совсем жесть получилась) надо еще покумекать.
Да вроде всё просто)
MetalFan, спасибо за TrackChecker!
POMAH007
Posts: 30
Joined: Sun Dec 16, 2012 3:28 pm
Has thanked: 4 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by POMAH007 »

MetalFan wrote:guru, имхо чот совсем жесть получилась) надо еще покумекать.
А если другими словами? Всё-равно, это был пересказ моей идеи (guru :p) :))) :
Запускается программа и размещает в каталоге лок-файл. Следующая запускаемая программа находит лок-файл и спрашивает хозяина: "Уже запущена (где-то) программа. Запуститься (и прибить предыдущую версию) или нет?"
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

POMAH007, наша задача, не выяснять, чья это была идея, а сделать так, чтобы MetalFan подумал, что эта идея его)
MetalFan, спасибо за TrackChecker!
User avatar
MetalFan
Administator
Posts: 9143
Joined: Fri Sep 14, 2012 9:50 am
Location: Moscow
Has thanked: 348 times
Been thanked: 943 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by MetalFan »

да идею то я понял... и объяснено вроде б норм... осталось только рассмотреть ВСЕ возможные варианты, когда предложенный алгоритм может дать сбой.
wbw, MetalFan
detrin
Posts: 517
Joined: Wed Dec 05, 2012 2:45 pm
Has thanked: 17 times
Been thanked: 20 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by detrin »

Мне пока не нужна синхронизация, но думаю её можно было бы сделать так:
- синхронизировать ТОЛЬКО БД, а не программу.
- в настройках указать папку для синхронизации(в частности можно указать папку ЯндексДиска, Дропбокса и т.д.)
- в меню добавить кнопку ручной синхронизации при которой текущая БД копируется в синхронизируемую папку, а также наоборот - текущая БД заменяется синхронизируемой.
- в меню добавить опцию автоматической синхронизации при выходе из программы.
- при синхронизации старые БД не удалять, а переименовывать со штампом даты, на всякий случай.
- при старте программы сверять рабочую БД и синхронизируемую БД по дате/времени - если вторая более свежая, то предложить синхронизировать её.

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

Как мне кажется данная схема более простая, чем вышепредложенная.
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

detrin, 1 копия и так спокойно должна бы работать (в портабельном режиме) на облачных дисках. Для этого доработки не нужны. Но, к сожалению, на ЯД стабильной работы добиться не удалось. На других я не пробовал. Если кто пробовал, напишите, пожалуйста, о результатах.
А вопрос стоит так: Раз одновременная работа с одной базой нескольких копий пока невозможна, то было бы неплохо осуществить закрытие(по желанию пользователя) всех запущенных программ, кроме одной. Но алгоритм нужно продумать, чтобы всё работало стабильно и пользоваться было удобно.
Судя по результатам опроса, протолкнуть эту задачу получится только, если разработчики мобильных версий реализуют возможность синхронизации с облачной базой настольной версии. Что было бы удобно и не раз уже предлагалось.
Разработчики мобильных версий, что думаете по этому поводу?)
MetalFan, спасибо за TrackChecker!
troff
Posts: 187
Joined: Wed Dec 12, 2012 8:21 am
Has thanked: 1 time
Been thanked: 6 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by troff »

я просто выкидываю data.xml на гуглдиск, и забираю куда надо. при двух компах дома и одном на работе особых неудобств не испытываю.
больше напрягает невозможность синхронизации с андроидом. а на нем с гуглдиска даже файл не сохранить, только открыть какой-либо программой. кстати, как вариант - чтобы андроидная версия открывала этот файл с гуглдиска и всасывала обновления/добавления треков
Spon4ik
Posts: 3
Joined: Mon Aug 05, 2013 1:57 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by Spon4ik »

есть такая новая фишка, как BTSync, вариант как решение:
1. прога на РС (А) при включении читает БД
2. отпускает
3. если нужно внести новый трак:
3.1 открывает БД(снова)
3.2 вносит новую строку
3.3 сохраняет
3.4 отпускает
3.5 прога на РС (Б)/android, получает обновлённый БД(через дропбокс или бтсинк - не важно), но так как прога (Б) его не держит открытым, то изменения не видны
3.6 в ручную нажать на обновить...
при этом, если в программе (Б) или В/Г/Д...Я были внесены изменения, то в пункте 3.1 БД будет обновленна, и новая строка добавится уже после обновления а не до, что предотвратит потерю данных.
Spon4ik
Posts: 3
Joined: Mon Aug 05, 2013 1:57 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by Spon4ik »

дополнительный вариант:
так как вряд-ли пользователи будут держать в проге одновременно тысячи или даже сотни активных траков, то можно каждый трак вносить в виде отдельного ДБ файла, таким образом при кажом внесении нового номера, старые или правельнее сказать номера которые ещё только добавляются, не подвергаются воздействию, и не зависят друг от друга, при этом синхронизировать саму папку с базами данных, и по мере их поступления, прога авто-проверкой добавляет новые для неё строки номеров.
так как существует вероятность внесения изменений в один трак с нескольких инстанций, то можно совместить с предидущими предложениями, создав файл .темп с ID файла БД которая на данный момент находится в режиме записи, тогда на другом клиенте, нельзя будет перейти в режим записи конкретной БД, при этом другие будут доступны.
User avatar
MetalFan
Administator
Posts: 9143
Joined: Fri Sep 14, 2012 9:50 am
Location: Moscow
Has thanked: 348 times
Been thanked: 943 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by MetalFan »

Spon4ik, жесть...
wbw, MetalFan
Spon4ik
Posts: 3
Joined: Mon Aug 05, 2013 1:57 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by Spon4ik »

MetalFan wrote:Spon4ik, жесть...
с множеством файлов наверно погорячился
но если их не много, у меня к примеру единицы, то почему нет?
SAOPP
Posts: 13
Joined: Mon Aug 19, 2013 8:11 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by SAOPP »

Специально зашёл на форум, что бы отписаться по предложению... и увидел, что уже топик существует и люди имеют те же проблемы, что и я. :)

Сам давно ощущаю необходимость синхронизации базы с облачным хранилищем, как это сделано например в Safe In Cloud, где сколько хочешь копий ПО, как настольных, так и мобильных, и облачное хранилище на выбор, в котором содержится актуальная версия базы.

Сам же пока юзаю на обоих ПК дропбокс, где собственно и имею некоторые проблемы, особенно они возникают, если и настольный и лэптоп включены одновременно с рабочей копий трекера. Пока же, запуск приложения отложен при старте ОС на 5 минут, за это время дропбокс должен успеть обновить всё, что ему нужно, и по сути имею актуальную копию на всех ПК. Но пока же это танцы, а хочется реального результата аля Safe In Cloud. ;)
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

SAOPP, пока это нереально. Одновременная работа нескольких копий будет возможна только при переходе на БД
MetalFan, спасибо за TrackChecker!
SAOPP
Posts: 13
Joined: Mon Aug 19, 2013 8:11 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by SAOPP »

Естественно. Это и так понятно, следовательно, практически нужно начальную механику работы приложения переписывать. Но всё же, я думаю вскоре разработчики возьмётся за это, ибо на сегодня приложение, которое не умеет работать с облачными технологиями становится собственным заложником.

Неудобно ведь, добавлять трек в кучу устройств, это ведь, тоже и так, понятно. Ну, надеемся на продвижение в этом направлении. ;)
User avatar
guru
Moderator
Posts: 2848
Joined: Mon Dec 10, 2012 3:56 pm
Has thanked: 141 times
Been thanked: 182 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by guru »

SAOPP, согласен. Хорошобы :roll:
MetalFan, спасибо за TrackChecker!
detrin
Posts: 517
Joined: Wed Dec 05, 2012 2:45 pm
Has thanked: 17 times
Been thanked: 20 times

Re: Синхронизация копий программы (по локал.сети и не только

Post by detrin »

SAOPP wrote:Но всё же, я думаю вскоре разработчики возьмётся за это, ибо на сегодня приложение, которое не умеет работать с облачными технологиями становится собственным заложником.
Всегда есть альтернативы. Мне например проще держать домашний комп включенным, на который я имею доступ через TeamViewer. Т.к. помимо трекчекера хватает другого специфичного софта.
А TeamViewer сейчас доступен даже на Андроиде.
SAOPP
Posts: 13
Joined: Mon Aug 19, 2013 8:11 pm

Re: Синхронизация копий программы (по локал.сети и не только

Post by SAOPP »

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

А теперь, что касается сабжа, а если приложение будет сохранять треки и информацию о них для начала в текстовом файле в облачном хранилище?