Pull to refresh

Comments 2

Мы в своем проекте используем Wily Introscope, работает неплохо, но есть нюанс. Как вы упомянули, there ain't no such thing as a free lunch — и за инструментацию приходится платить. Wily хотя и добавляет минимум кода, и во время работы это никак не сказывается на производительности, зато перехват classloading-а замедляет старт нашего приложения довольно ощутимо. Более того, после того, как мы стартовали приложение, нам нужно его «разогреть», т.е. например у вас какой-то процессинг, и есть цепочка процессоров — пока вы не запустите процессинг, байткод процессоров не будет загружен, соответственно первый вызов цепочки выливается в инициализацию всех процессоров — что, как я уже сказал, затратно. Для примера, некая абстрактная цепочка в нормальных условиях у нас занимает 10-20мс. Первый же вызов ее — 120-200мс. (И да, я знаю про JIT — он тут ни при делах, я тестировал с отключенной инструментацией и разница между первым и последующими вызовами была порядка 10мс, а не порядок).
Sign up to leave a comment.

Articles

Change theme settings