
? Snyp
13.05.2016
18:28:09
Мне нужен наставник)
Я с гитхабом еще не подружился)

Владислав
13.05.2016
18:28:57
напиши в личку)

Google

Владислав
13.05.2016
18:30:40
чего с чем
алгоритм синхронизации финансовых операций вводимых с разных устройств

Oleg
13.05.2016
18:32:46

Владислав
13.05.2016
18:41:35
одновременная запись и поддержка актуальной информации
т.е. если на одном устройстве удалили операцию, на другом она тоже должна удалиться

Денис
13.05.2016
18:42:59
Что есть устройство?

Владислав
13.05.2016
18:43:24
терминал)

Oleg
13.05.2016
18:45:07

Денис
13.05.2016
18:45:50
что если во время удаления произойдет дисконнект с центральным сервером?
информация должна удалиться или надо подождать, пока восстановится соединение и тогда удалить?

Oleg
13.05.2016
18:47:56
или нет сервера и она на всех устройствах лежит?

Денис
13.05.2016
18:49:39
если 2 вариант - на каждом терминале при удалении запрашивай центральный сервер. Сервер запросит у остальных терминалов удаление документа (можно пометить этот документ как is_deleted = true), как только все терминалы отвечают, что готовы - выполнить удаление, иначе при любой ошибке - запросить откат удаления документа
либо, на центральном сервере находится очередь, которая содержит документы, подлежащие удалению, как тоько в нее что-то попадает - каждый терминал забирает свою задачку из очереди и выполняет операцию, после выполнения - уведомляет центральный сервер

Oleg
13.05.2016
18:51:20

Google

Денис
13.05.2016
18:52:58
если терминалы знают только друг о друге - то по цепочке передавать задачу на удаление )
первая цепочка помечает на удаление, вторая - удаляет
если по каким-то причинам не удаляется документ - обратно по цепочке откатывать удаление

Oleg
13.05.2016
18:55:57
а вот с изменением могут быть проблемы - конфликты разруливать придется

Денис
13.05.2016
18:56:16
update инфы?

Oleg
13.05.2016
18:57:45
о а если один терминал изменяет а другой удаляет один и тотже объект))

Денис
13.05.2016
18:58:06
ну там придется реализовывать также, через транзакции с возможностью отката, лочить документ на время update-а всех остальных терминалов и нужно от терминала к терминалу передавать очеред команд
а если есть центральный сервер - то проще, также с очередью просто по времени все команды выстраивать и потом разбирать ее
на центре сделать апи, на терминалах - диспетчеры, апи будет принимать все входящие запросы, класть в очередь, диспетчеры разбирают оттуда и исполняют, как только все разобраны - следующая команда и тп

Oleg
13.05.2016
19:00:39
так то очевидные вещи и в чем проблема непонятно...

Денис
13.05.2016
19:00:45
хз
ну тут и очевиднее были вопросы от начинающих
)
вообще можно на эту тему посмотреть, как работает репликация мастер-мастер в монге или постгрисе или других хранилищах, сразу все прояснится

Владислав
13.05.2016
19:04:48
терминалы знают только о сервере

Oleg
13.05.2016
19:05:18

Денис
13.05.2016
19:07:51
как

Oleg
13.05.2016
19:09:26
возникает конфликт при одновременном изменении - первое изменение апдейтится и второму изменяющему прилетает конфликт

Владислав
13.05.2016
19:10:11
на терминалах не предусмотрено изменение, только добавление/удаление

Денис
13.05.2016
19:10:52
> @olegstuhin
возникает конфликт при одновременном изменении - первое изменение апдейтится и второму изменяющему прилетает конфликт
ну это уже тонкости реализации, можно и так

Google

Денис
13.05.2016
19:11:02
я думаю, смысл ясен, куда копать)

Владислав
13.05.2016
19:11:41
да, благодарю)
думаю реализую через очередь

Денис
13.05.2016
19:12:00
RabbitMQ в помощь)

Владислав
13.05.2016
19:23:59
так, задачи в таск трекере поставлены, можно и расслабиться теперь)
как вечер пятницы проходит?)

Денис
13.05.2016
19:26:41
да вот тут спрашивают про синхронизацию всякие)
> @masunov
задачи в таск трекере поставлены
что за таск трекер?
jira/trello?

Noi
13.05.2016
20:06:36
фу
фигня джира
проектная система рулит
=)

Владислав
13.05.2016
20:08:12

[Anonymous]
13.05.2016
20:20:08

Владислав
13.05.2016
20:20:45
а вот и эксепшн выскочил:D

[Anonymous]
13.05.2016
20:21:15
в целом дизайн слова "палехче" продуман неплохо.

Владислав
13.05.2016
20:21:30
?
я тут нашел чипсы "ничоси"

[Anonymous]
13.05.2016
20:25:02
было бы неплохо найти где-нибудь группу компаний "чокомпания"

Google

[Anonymous]
13.05.2016
20:25:12
типа "чонада" для поисковых сервисов
"чобля" техподдержка

Владислав
13.05.2016
20:26:02
"Чотынепокупаешьбля" отдел продаж

Артур Евгеньевич
13.05.2016
20:26:36
Никто не знает, как можно в mysql сделать сквозной первичный ключ для нескольких таблиц?

[Anonymous]
13.05.2016
20:26:40
"ЧоЕХАЛ" логистика
всмысле всех сделать первичными?
разве так можно?

Admin
ERROR: S client not available

Владислав
13.05.2016
20:27:30
Серьёзно?) в 23:30 в пятницу кто-то работает?)

[Anonymous]
13.05.2016
20:27:52

Артур Евгеньевич
13.05.2016
20:28:10
нет, нужно чтобы id увеличивался при добавлении элемента в любую из таблиц, то есть добавили в первую таблицу 3 элемента, и при добавлении в следующую элемент уже получит id=4

Владислав
13.05.2016
20:28:13
Ну интернет анархия, но все же люди))

[Anonymous]
13.05.2016
20:28:24
если кто-то задаёт такие вопросы, значит скорее всего человек из дарк-маркетов))
там работа всегда кипит

Владислав
13.05.2016
20:28:31
Это иркремент

Артур Евгеньевич
13.05.2016
20:28:34
да и это не по работе, а свой проект

? Snyp
13.05.2016
20:28:58
.. скоро в продаже)

Владислав
13.05.2016
20:29:05
*инкремент)

Google

[Anonymous]
13.05.2016
20:29:18
:)

Владислав
13.05.2016
20:29:38
А сколько таблиц всего?)

Артур Евгеньевич
13.05.2016
20:30:38
Вобщем дело то вот какое, есть такая структура локаций : СТраны, области, города, округ, районы, метро, улицы. Вот и хотел сделать чтобы у них был общий id. В итоге склоняюсь к варианту все запихать в одну таблицу, и ввести поле "тип локации", но хочу рассмотреть все варианты
эт примерный план

Владислав
13.05.2016
20:38:01
Ну и пусть пишутся в таблицы
Для последующего запроса использовать last insert id для связки
Как-то так)

Артур Евгеньевич
13.05.2016
20:40:27

Владислав
13.05.2016
20:40:42
lf
да

Артур Евгеньевич
13.05.2016
20:41:36
Тут еще такая тема что например в мелких городах есть районы, но нету округов. Т.е в одном случае район ссылается на округ, а в другом сразу на город. В основном из за этого нужен id неповторяющийся

Владислав
13.05.2016
20:43:00
т.е. нужна структура как в яндекс метрики?

Артур Евгеньевич
13.05.2016
20:44:26

Денис
13.05.2016
20:44:40

Артур Евгеньевич
13.05.2016
20:45:34
Да, наверно если решу по разным таблицам разносить, то на них и остановлюсь

Денис
13.05.2016
20:45:56
Ведь

Артур Евгеньевич
13.05.2016
20:47:43
Кстати, а никто не знает где можно базу населенных пунктов взять для РФ? ну и Украина и казахстан пригодятся думаю

Денис
13.05.2016
20:47:54