FastCGI запускает несколько инстансов процесса и направляет пользовательские запросы на них. Вопрос в том, какие существуют решения, чтобы использовать что-то наподобие "singelton'a" между этими несколькими процессами? Идея такая, что есть некая информация, которую необходимо расшарить между всеми инстансами приложения. Приложение на с++, коросс-платформенное.
Другой вариант, заставить одного и того же пользователя (сессии) приходить с каждым запросом на один и тот же инстанс приложения. Если так возможно, то это помогло бы решить проблему.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте!
А>FastCGI запускает несколько инстансов процесса и направляет пользовательские запросы на них. Вопрос в том, какие существуют решения, чтобы использовать что-то наподобие "singelton'a" между этими несколькими процессами? Идея такая, что есть некая информация, которую необходимо расшарить между всеми инстансами приложения. Приложение на с++, коросс-платформенное.
Boost.MPI
А>Другой вариант, заставить одного и того же пользователя (сессии) приходить с каждым запросом на один и тот же инстанс приложения. Если так возможно, то это помогло бы решить проблему.
Это к веб-серверу, скорее всего будет не очень кросс-платформенно.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Ops>Здравствуйте, Аноним, Вы писали:
А>>FastCGI запускает несколько инстансов процесса и направляет пользовательские запросы на них. Вопрос в том, какие существуют решения, чтобы использовать что-то наподобие "singelton'a" между этими несколькими процессами? Идея такая, что есть некая информация, которую необходимо расшарить между всеми инстансами приложения. Приложение на с++, коросс-платформенное.
Ops>Boost.MPI
+1
А как можно архитектурно решить проблему например с манагером сессий для такого приложения ?
Ведь этот манагер будет сидеть в каждом инстансе приложения, а запросы от клиента могут приходить в разные инстансы всегда.
Здравствуйте, iHomer, Вы писали:
H>А как можно архитектурно решить проблему например с манагером сессий для такого приложения ? H>Ведь этот манагер будет сидеть в каждом инстансе приложения, а запросы от клиента могут приходить в разные инстансы всегда.
Поищите по форуму, вроде ремарк описывал синглтон с двойной блокировкой (могу ошибаться, вполне мог участвовать в обсуждении). Если изменить на именованный — все просто. А после инициализации — сложностей уже не будет.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте!
А>FastCGI запускает несколько инстансов процесса и направляет пользовательские запросы на них. Вопрос в том, какие существуют решения, чтобы использовать что-то наподобие "singelton'a" между этими несколькими процессами? Идея такая, что есть некая информация, которую необходимо расшарить между всеми инстансами приложения. Приложение на с++, коросс-платформенное. А>Другой вариант, заставить одного и того же пользователя (сессии) приходить с каждым запросом на один и тот же инстанс приложения. Если так возможно, то это помогло бы решить проблему.
Посмотри здесь http://redis.io видимо то, что тебе нужно. Кратко это простая база данных в возможностью репликации между инстансами.