Я використовую Jetty 8 і в даний час є дваекземпляри, встановлені та запущені за круглим балансувальником навантаження. Я налаштував це використання реплікації сеансу через MongoDB. Він прекрасно працює за двома винятками. Я буду включати один тут, а інший - в інше питання.
- Це можливо для сеансу на одному звузли повинні зберігатися в живих, поки той самий сеанс на іншому вузлі закінчується. Як тільки ви потрапите на вузол, що вийшов із часу, поведінка така, як якщо закінчився сеанс, навіть якщо він є активністю від користувача на іншому вузлі.
Хто-небудь має будь-які пропозиції? Я збираюся почати копати в реалізації jetty-nosql, але хотів би, щоб хтось міг рятувати мене деякий час.
Відповіді:
0 для відповіді № 1Виявляється, поведінка, про яку йдеться вище, обумовленадо помилки в диспетчері nosqlSession. Це не оновлює останній доступний час при читанні сеансу з бази даних. Таким чином, якщо вузол не доступний протягом періоду очікування сеансу, це призведе до втрати сеансу, незалежно від того, чи був доступ до іншого вузла. Я подав цей звіт про помилку: https://bugs.eclipse.org/bugs/show_bug.cgi?id=397193
Ми виправили його шляхом внесення власних змін дофайли, зазначені в помилку, так що час доступу до сеансу було оновлено за час доступу, що зберігається в базі даних, коли сеанс було оновлено з бази даних.