Как стать автором
Обновить
33
0
Сергей Качеев @tailer

SRE

Отправить сообщение

Рассмотрим пример: 0b1001 + 0b01001. Здесь 0b1 + 0b1 == 0b10, и это компонента 2*(a&b) при том, что 0b1000 + 0b01000 == 0b11000 выражается через a^b

Написал автору оригинала, что тут ошибка. 0b1000 + 0b01000 == 0b11000 на самом деле равно 0b10_000 и в примере должно быть 0b01_000 + 0b10_000

И ещё вот это

0xdfff-0xd800=0x7fff

Должно быть 0xdfff-0xd800=0x7ff а не 0x7fff

Думал не писать коммент, но в переводе есть одна неточность

В Go отсутствует операция сдвига вправо

Операция сдвига вправо в Go есть, а вот функции обратной bits.RotateLeft8 нет, то есть нет операции ротации вправо.

сдвиг влево на 3 бита – это то же самое, что сдвиг вправо на 5 бит

Вот это уже совершенно не верно в контексте сдвигов, но верно в контексте ротации битов в числе.

Для новичков такие ошибки приводят к тому, что статью вроде прочитал, но ничего не понял.

Этот абзац конечно не очень удачный

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

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

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

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

Могу ещё добавить по своему опыту, что отделы QA с сильными SDET я видел только рядом с бизнес кодом, а всякие инфраструктурные отделы обычно не имеют выделенных QA отделов.

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

Держать для маленьких команд свои собственные выделенные QA отделы тоже не выгодно.

Можете считать, что в рамках этой задачи я временно стал SDET.

Я пробовал такое на коленке, в целом картина такая

  • потребление CPU сильно отличается, мьютексы почти его не используют

  • с мьютексами тайминги повышаются где-то в пределах от сотни микросекунд до единицы миллисекунд, но это измерение на глаз, я списал это на погрешность.

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

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность