Поддерживать параллельные, идентичные базы данных: MySQL и SharePoint FBA - PullRequest
0 голосов
/ 24 августа 2011

У меня есть 2 веб-сайта, и на обоих есть система входа в систему, где пользователь может создать учетную запись для доступа к специальной части нашего веб-сайта.Веб-сайт A является стандартным созданием LAMP, и пользовательская информация, таким образом, сохраняется в базе данных MySQL.Веб-сайт B - это сайт, размещенный на SharePoint, и пользовательская информация хранится в базе данных проверки подлинности на основе форм (FBA) SharePoint.

Я хочу сделать так, чтобы, когда пользователь создает учетную запись на веб-сайте A,учетная запись автоматически создается на веб-сайте B.

Кто-нибудь знает простой способ сделать это?Я думаю, что когда учетная запись создается на веб-сайте A, веб-сайт может отправить запрос в обе базы данных и создать одну и ту же информацию.ИЛИ две базы данных можно было бы как-то синхронизировать.

Любая помощь будет принята с благодарностью!Большое спасибо.

1 Ответ

1 голос
/ 24 августа 2011

Относительно вашего первого метода: я думаю, что это не очень хорошее решение, потому что вы должны подождать, пока сервер b не ответит. Лучше использовать модель событий, основанную на очереди.

У вас есть очередь идентификаторов, которые являются вновь созданными пользователями, и добавьте user_id с первого сервера в эту очередь во время создания пользователя. С другой стороны у вас есть cron скрипт с бесконечным циклом

while(1) {
    sleep(10);
    //check new user_id in queue
    if (no) {
        continue;
    }
    //create a new user in server B and remove user_id from queue
}
...