Size: a a a

QA — Load & Performance

2021 February 11

NM

NoEndOutcry💡🔋🚓 Mikst... in QA — Load & Performance
Viktor Ganeles
Ласточка весом в 5 унций всё-таки не может нести кокос весом в 1 фунт
Это очень зависит от окружающих условий
источник

VG

Viktor Ganeles in QA — Load & Performance
Мы - коммуна анархо-синдикалистов. У нас нет короля, мы по-очереди правим по неделе!
источник

AR

Artem Rozhkov in QA — Load & Performance
— Это кто?
— Не знаю… Король, наверное.
— С чего ты решил?
— Так он тут единственный, кто не весь в дерьме.
источник

VG

Viktor Ganeles in QA — Load & Performance
Ладно, надо завязывать. Не все в теме.

ВЫНОСИТЕ ПОКОЙНИКА!
источник

VB

Viktor Bashkatov in QA — Load & Performance
Viktor Ganeles
Я ставлю на jsr
Но, конечно, зависит от того, как написать :)
Спасибо, буду экспериментировать.

Пытаюсь понять, как избежать убийства места на диске, если что-то пойдёт не так и джоб перестанет забирать файлы. Можно рассчитать, какое количество файлов окажется критическим и учитывать это при подаче нагрузки, после чего в tearDown вызывать rm *xml. Стоит ли городить более сложные конструкции?
источник

VG

Viktor Ganeles in QA — Load & Performance
Я всё ещё не понял, зачем файлы создавать :)
источник

VB

Viktor Bashkatov in QA — Load & Performance
Так работает джоб. Видит файл в определённой папке - забирает.
источник

VG

Viktor Ganeles in QA — Load & Performance
А!
То есть создание нагрузки - это генерация файлов.

А на проде куда файлы деваются?
источник

VB

Viktor Bashkatov in QA — Load & Performance
Мы грузим шину, но так получается, что для данного сервиса мы ещё будем грузить и джоб. Почему нам не сказали эмулировать результат работы джоба, сразу отправляя файл в шину, - не знаю. Ну, до кучи проверим, готов ли джоб к большому количеству файлов.

Файл идёт в шину, потом в нужную систему, эта система обрабатывает файл. Критерий прохождения обработки - либо сообщение в очереди (планирую его ловить джметром), либо вызов хранимой процедуры. С процедурой надо будет думать - возможно, попрошу разработку при вызове процедуры слать в очередь сообщение (ответы систем эмулируются нашими заглушками).
источник

VB

Viktor Bashkatov in QA — Load & Performance
Будет ли сообщение в очереди или вызов процедуры - зависит от параметра внутри запроса. Хотелось бы ставить рандомный вариант параметра и в обоих случаях ждать ответ в очереди.
источник

VG

Viktor Ganeles in QA — Load & Performance
Мы в такой ситуации генерили файл в папке прямо.
А после теста удаляли.

Вообще удалять должен был джоб, но он удалял ночью, нам ждать не хотелось :)
источник

VG

Viktor Ganeles in QA — Load & Performance
Единственный ньюанс - чтобы не случилось так, что файл ещё генерится, а система уже пытается его схавать, мы генерили файл с неверным расширением и потом переименовывали.
источник

VG

Viktor Ganeles in QA — Load & Performance
Я бы генерил с помощью jsr223
источник

VB

Viktor Bashkatov in QA — Load & Performance
Viktor Ganeles
Единственный ньюанс - чтобы не случилось так, что файл ещё генерится, а система уже пытается его схавать, мы генерили файл с неверным расширением и потом переименовывали.
О, а вот это интересный подводный камень. Спасибо.
источник

VG

Viktor Ganeles in QA — Load & Performance
Viktor Bashkatov
О, а вот это интересный подводный камень. Спасибо.
Ты лучше делай также, как и на проде будет.

А то у тебя выйдет гладко, а на проде сломается :)
источник

VB

Viktor Bashkatov in QA — Load & Performance
Viktor Ganeles
Ты лучше делай также, как и на проде будет.

А то у тебя выйдет гладко, а на проде сломается :)
На проде, я так понял, кладут уже готовый файл. Так что для корректности процесса буду подкладывать через mv.
источник

VG

Viktor Ganeles in QA — Load & Performance
Можно заранее сгенерить 100500 файлов и перекладывать

Но пулы генерить перед тестом - такое...
источник

VB

Viktor Bashkatov in QA — Load & Performance
Тогда нужно будет как-то отслеживать айдишники - они же внутри файлов. Если генерить и передавать, то айдишник будет известен внутри тред группы. Опять же, ответ надо брать из очереди, ища по айдишнику. Сгенерил - переместил - слушаешь очередь.

Сделаю генерацию с перекладыванием в папку и посмотрю, что будет.
источник

VG

Viktor Ganeles in QA — Load & Performance
Можно класть айдишники отправленных файлов в пул
источник

VG

Viktor Ganeles in QA — Load & Performance
Я использую vts
Можно юзать http simple table server или просто shared hashmap
источник