Случайное совпадение 1 на 1

Я занимаюсь разработкой приложения для случайного чата, которое сопоставляет клиента с другим «случайным» клиентом. Псевдослучайный, потому что клиент будет запрашивать список «открытых» клиентов и выбирать из верхней части списка.

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

Какова была бы самая простая структура и процесс для соединения двух случайных клиентов для обмена информацией, когда оба находятся в пуле непревзойденных клиентов?

0

Решение

Я не уверен, что именно вы ищете, но, возможно, вместо того, чтобы каждый клиент активно искал другого для подключения в базе данных, вы могли бы попросить всех клиентов просто войти в пул поиска совпадений. Затем отдельный процесс, выполняющийся на сервере, будет проверять базу данных и подбирать людей согласно любым критериям, которые вы пожелаете, и удалять их из таблицы «поиск». Это гарантирует, что люди не могут быть сопоставлены одновременно с более чем одним человеком.

Я надеюсь, что это помогает несколько концептуально.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]