Найти значительное узкое место в производительности стандартной библиотеки или зрелого приложения — это редкость.
Я был удивлён, когда в top10 списке CPU-профиля hugo при сборке digitalgov.gov на первой позиции находился метод reflect.Type.MethodByName().
flat flat% sum% cum cum%
8.84s 6.28% 6.28% 57.85s 41.10% reflect.(*rtype).MethodByName
7.93s 5.63% 11.92% 8.50s 6.04% reflect.name.readVarint
7.56s 5.37% 17.29% 111.79s 79.43% reflect.Value.call
7.53s 5.35% 22.64% 23.33s 16.58% runtime.mallocgc
7.29s 5.18% 27.82% 16.10s 11.44% reflect.name.name
В этой статье я расскажу вам о том, как так вышло и что с этим можно было бы сделать.





![Ещё 20+ игр, которые прокачивают логику, алгоритмы и радуют умный мозг [по следам комментариев на Habr] - 1 image](https://www.pvsm.ru/images/2022/01/15/eshyo-20-igr-kotorye-prokachivayut-logiku-algoritmy-i-raduyut-umnyi-mozg-po-sledam-kommentariev-na-Habr.gif)
![Ещё 20+ игр, которые прокачивают логику, алгоритмы и радуют умный мозг [по следам комментариев на Habr] - 2 Ещё 20+ игр, которые прокачивают логику, алгоритмы и радуют умный мозг [по следам комментариев на Habr] - 2](https://www.pvsm.ru/images/2022/01/15/eshyo-20-igr-kotorye-prokachivayut-logiku-algoritmy-i-raduyut-umnyi-mozg-po-sledam-kommentariev-na-Habr-2.gif)