Я занимаюсь разработкой приложения для случайного чата, которое сопоставляет клиента с другим «случайным» клиентом. Псевдослучайный, потому что клиент будет запрашивать список «открытых» клиентов и выбирать из верхней части списка.
Я искал ответ, но, по-видимому, не существует ресурсов для решения для поиска совпадений, основанного на реляционной базе данных в MySQL. Проблема, с которой я столкнулся, заключается в том, что если бы все клиенты были настроены на «поиск», то каждый (пользователь) попытался бы подключиться к одному (а), а один (а) попытался бы подключиться к другому (б). {* пользователь гонится за a, пока a гонится за b.}
Какова была бы самая простая структура и процесс для соединения двух случайных клиентов для обмена информацией, когда оба находятся в пуле непревзойденных клиентов?
Я не уверен, что именно вы ищете, но, возможно, вместо того, чтобы каждый клиент активно искал другого для подключения в базе данных, вы могли бы попросить всех клиентов просто войти в пул поиска совпадений. Затем отдельный процесс, выполняющийся на сервере, будет проверять базу данных и подбирать людей согласно любым критериям, которые вы пожелаете, и удалять их из таблицы «поиск». Это гарантирует, что люди не могут быть сопоставлены одновременно с более чем одним человеком.
Я надеюсь, что это помогает несколько концептуально.
Других решений пока нет …