Кластер сессии Tomcat: Это - производственный уровень? Это масштабируется?

Редактировать: добавлен скрипт Bash.

Ответы, данные здесь, работали только частично для меня; В кеше осталось много больших файлов. Что в итоге сработало (после нескольких часов работы в #git на freenode):

git clone --no-hardlinks file:///SOURCE /tmp/blubb
cd blubb
git filter-branch --subdirectory-filter ./PATH_TO_EXTRACT  --prune-empty --tag-name-filter cat -- --all
git clone file:///tmp/blubb/ /tmp/blooh
cd /tmp/blooh
git reflog expire --expire=now --all
git repack -ad
git gc --prune=now

В предыдущих решениях размер хранилища составлял около 100 МБ. Этот уменьшил его до 1,7 МБ. Может быть, это кому-нибудь поможет:)


Следующий скрипт bash автоматизирует задачу:

!/bin/bash

if (( $# < 3 ))
then
    echo "Usage:   [111] </path/to/repo/> <directory/to/extract/> <newName>"
    echo
    echo "Example: [111] /Projects/42.git first/answer/ firstAnswer"
    exit 1
fi


clone=/tmp/${3}Clone
newN=/tmp/${3}

git clone --no-hardlinks file://$1 ${clone}
cd ${clone}

git filter-branch --subdirectory-filter $2  --prune-empty --tag-name-filter cat -- --all

git clone file://${clone} ${newN}
cd ${newN}

git reflog expire --expire=now --all
git repack -ad
git gc --prune=now
9
задан Amro 2 July 2012 в 06:53
поделиться

2 ответа

    Мы используем Tomcat в качестве наших внутренних серверов, но проектируем наши приложения так, чтобы использовать как можно меньше информации о сеансах (в основном, только логины). Затем мы предлагаем Tomcats балансировщик нагрузки, такой как Apache или Nginx (последний, который я предпочитаю в последнее время), и используем липкие сессии. Если сервер переходит в автономный режим (что маловероятно), то пользователю просто нужно снова войти в систему, что в зависимости от того, как вы его настроите, может быть прозрачным для них.

    Когда я хотел сделать больше кластеризации на основе сеансов, Terracotta выглядела очень впечатляет. Но дизайн без сохранения состояния значительно упрощает масштабирование.

    который, в зависимости от того, как вы его настроите, может быть прозрачным для них.

    Когда я хотел сделать больше кластеризации на основе сеансов, Terracotta выглядела очень впечатляюще. Но дизайн без сохранения состояния значительно упрощает масштабирование.

    который, в зависимости от того, как вы его настроите, может быть прозрачным для них.

    Когда я хотел сделать больше кластеризации на основе сеансов, Terracotta выглядела очень впечатляюще. Но дизайн без сохранения состояния значительно упрощает масштабирование.

6
ответ дан 4 December 2019 в 14:30
поделиться

Другой альтернативой может быть memcached-session-manager, решение для отработки отказа сеанса для tomcat: http://code.google.com/p / memcached-session-manager /

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

Ура, Мартин

8
ответ дан 4 December 2019 в 14:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: