Как я могу протестировать, как приложение обрабатывает тысячи соединений TCP?

поскольку Hubert говорит, svnadmin pack упакует все отдельные repo файлы в каталоге в единственный большой файл. Это сохранит Вас некоторое пространство, но оно только откладывает час расплаты для Вас. (это должно сделать операции истории быстрее, хотя, таким образом, это - хорошее предложение так или иначе). Одна вещь отметить состоит в том, что это только работает над каталогами черепка (т.е. новая структура каталогов должна поместить 1 000 изменений в единственный каталог, затем запустить новый каталог), и это только упаковывает старые каталоги черепка, не тот с текущим пересмотром в нем.

Так, Ваша единственная опция состоит в том, чтобы удалить старые изменения из Вашей истории. Это требует, чтобы дамп svnadmin и загрузка, с дополнительно фильтром удалили каталоги в Вашем repo, которого Вы больше не требуете. (например, старые временные ответвления).

Вывести легко: svnadmin dump -r xxx:HEAD где xxx является самым старым пересмотром, Вы хотите сохранить (т.е. это выведет новые, таким образом, Ваш древний пересмотр будет отброшен, как архивация). Можно сохранить архив старых изменений путем дампа их также (svnadmin dump -r 1:xxx)

После того как у Вас есть свой dumpfile, загружение его так же легко как работающий svnadmin передача загрузки на имя dumpfile. это могла бы быть хорошая идея удалить старый repo прежде, чем загрузить новый - затем Вы извлекаете пользу из последних свойств файловой системы сервера, если у Вас уже нет их.

Если Вы хотите сохранить все старые изменения, но отфильтровывать определенные каталоги, Вы захотите выполнить dumpfile через svndumpfilter, который удалит указанные пути. Знайте, что Вы захотите вывести, не используя - возрастающая опция.

Очевидно, протестируйте все операции локально - дамп в локальный файл, затем загрузите его во временный файл repo на Вашем локальном диске (это будет быстрее также), и протестируйте ту историю и работы последней версии хорошо - я экспортирую последний пересмотр каталога и использую winmerge, чтобы проверить, что файлы идентичны экспорту последнего пересмотра от живого repo. Попробуйте его историческим пересмотром также, если Вы хотите быть параноиками.

0
задан 18 September 2012 в 19:35
1 ответ

Вы можете использовать hping для генерации трафика. Но лучше попытаться воспроизвести реальную нагрузку.

hping Примеры

Отправлять TCP SYN-пакеты на порт 0 на хосте example.com (обратите внимание, что hping увеличит значение порта источника на 1 для каждого отправленного пакета):

hping example.com -S -V

Отправлять TCP SYN-пакеты на порт 443 на хосте example.com:[125 visiblehping example.com -S -V -p 443

Отправлять TCP-пакеты на порт 443 на хосте example.com с установленными флагами SYN + ACK:

hping example.com -S -A -V -p 443

Отправлять TCP-пакеты на порт 443 на хосте example.com с установленными флагами SYN + ACK + FIN:

hping example.com -S -A -F -V -p 443

Отправлять TCP SYN-пакеты каждые 5 секунд на порт 443 на хосте example.com:

hping example.com -S -V -p 443 -i 5

Отправлять TCP SYN-пакеты каждые 100, 000 микросекунд (т.е. каждые 0,1 секунды или 10 в секунду) на порт 443 на хосте example.com. Обратите внимание, что подробные сведения были удалены:

hping example.com -S -p 443 -i u100000

Отправлять TCP SYN-пакеты каждые 10 000 микросекунд (то есть каждые 0,01 секунды или 100 в секунду) на порт 443 на хосте example.com :

hping example.com -S -p 443 -i u10000

Отправлять TCP SYN-пакеты каждые 10 000 микросекунд (то есть каждые 0,01 секунды или 100 в секунду) на порт 443 на хосте example.com. Остановить после 500 пакетов:

hping example.com -S -p 443 -i u10000 -c 500

4
ответ дан 4 December 2019 в 11:56

Теги

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