Но появилась новая проблема. Иногда скрипт во время работы внезапно запрещает выделять действия. Т.е при клике на любое действие, оно просто не выделяется красным. Это второй баг, независимый от первого если что
Посоветуйте логику работы с удаленной mysql в многопотоке
-
Доброго времени!
Посоветуйте, пожалуйста, как организовать логику работы с удаленной базой (mysql). Нужно записывать в нее строки с одного сервера и брать с удалением в другом. Число потоков записи 100-150, взятия 150-200.
Гуглил, чтобы брать УНИКАЛЬНЫЕ строки без дублей с удалением нужно лочить базу на изменение для других потоков. Соответственно скорость взаимодействия с базой значительно падает. Мне пока только приходит в голову чтение БД в 1 поток и ее запись в локальную mongo, откуда другие потоки будут брать уникальные строки. Может быть у кого то есть другие мысли или готовые решения? Буду рад ознакомиться.P.S. @support сделай когда-нибудь, пожалуйста, доступ к удаленной mongodb через парольную аутентификацию. там и тариф бесплатный есть на 500 МB https://www.mongodb.com/cloud/atlas/pricing
-
Никто не придумал решение как синхронизировать несколько BAS с разных машин с одной удаленной БД, чтобы "Количество одновременных использований" со всех BAS было "1" для БД?
-
@eloventure используй промежуточный сервер
-
@korzhec said in Посоветуйте логику работы с удаленной mysql в многопотоке:
Соответственно скорость взаимодействия с базой значительно падает.
Значительно это на сколько ? Используй innodb подкрути базу, убери лишнее логирование базы.
И я подозреваю что 200 твоих потоков не в одну секунду будут ломиться ...
Вместо официального используй percona ну или машу
-
И скорее всего будет аффективнее не удалять, а добавлять метку true/false в колонку использования.
-
@eloventure мб в базу добавить еще строчку и проверять её заполненность?))
-
@eloventure said in Посоветуйте логику работы с удаленной mysql в многопотоке:
Никто не придумал решение как синхронизировать несколько BAS с разных машин с одной удаленной БД, чтобы "Количество одновременных использований" со всех BAS было "1" для БД?
Для вот этого))
-
как
@fluffik said in Посоветуйте логику работы с удаленной mysql в многопотоке:
@eloventure мб в базу добавить еще строчку и проверять её заполненность?))
может помочь с
@fluffik said in Посоветуйте логику работы с удаленной mysql в многопотоке:
@eloventure said in Посоветуйте логику работы с удаленной mysql в многопотоке:
Никто не придумал решение как синхронизировать несколько BAS с разных машин с одной удаленной БД, чтобы "Количество одновременных использований" со всех BAS было "1" для БД?
Для вот этого))
-
@korzhec said in Посоветуйте логику работы с удаленной mysql в многопотоке:
Самое грустное то, что баг с подключением к удаленной mongodb так и не фикснули
А с каких пор багом называют отсутствие какого то конкретного функционала?
@fluffik said in Посоветуйте логику работы с удаленной mysql в многопотоке:
@korzhec объясни в чем баг, укажи фокса в теме он проверит и передаст создателю, не вижу проблемы в сообщении проблемы)))
Ненавижу, когда без особой нужды просят "посмотреть мою тему"

Я уже писал о том, что я все темы вижу и читаю. У нас не такой большой поток, что бы "потерять" какую нибудь тему из виду. Но отвечаю я когда есть на это время
-
@tet-vivi said in Посоветуйте логику работы с удаленной mysql в многопотоке:
@eloventure используй промежуточный сервер
@tet-vivi не совсем понял идею, можете чуть подробнее, пожалуйста?
@Bigma said in Посоветуйте логику работы с удаленной mysql в многопотоке:
И скорее всего будет аффективнее не удалять, а добавлять метку true/false в колонку использования.
тоже так думал сделать, но для использования строк базы в цикле, необходимо возвращать значение false после итерации. а если происходит ошибка в потоке, в итоге true так и останется. и чтобы это обойти еще кучу костылей городить.
-
@eloventure said in Посоветуйте логику работы с удаленной mysql в многопотоке:
тоже так думал сделать, но для использования строк базы в цикле, необходимо возвращать значение false после итерации. а если происходит ошибка в потоке, в итоге true так и останется. и чтобы это обойти еще кучу костылей городить.
Не совсем понятно что вы имеете ввиду. В каком цикле и зачем вы собрались использовать строки.
То есть если вы более подробно опишите задачу, можно будет подумать над ее решением.