Пичалька. Давно это было? А то вдруг команда уже пофиксила.
Не успел детально изучить предложения этих сервисов, но пока не нашел у них упоминания про поддержку mutual ssl.В loader.io точно нет. Про остальные — не в курсе.
Согласно FAQ loader.io, это не совсем так.Значит не обновили FAQ. Мультирегионы и провайдеры уже давно крутятся на продакшене (хотя за эту фичу придется платить).
Могу я ответить. Любое тестирование при повышении количества клиентов ведет к тому, что вы начинаете мерять не свой ресурс, а производительность тестируемого оборудования (tsung, ab, прочее). Ведь с увилечение количества клиентов с тестирующего демона, он начинает упиратся в CPU (частая проблема), память (реже, но зависит от утилиты), сеть (одна из основных проблем) и реализацию логики тестирования (акторы, «зеленые треды», прочее). Тоесть с увиличением набора клиентов у Вас может начинаться проседание в тестах, потому что нода, на которой ведется тестирования не справляется с таким размером теста. 50-60k — это идеальный предел, но до даже с тюнингом такое тяжело достигнуть.
Так в этих сервисах можно указать зону тестирования (тоесть если инстансы на AWS, Rackspace, DigitalOcean — то тестирующие демоны будут в этих сетях)
На одном инстансе 50-60К это предел (и для этих целей уже придется не мало ядро тюнить)
тоесть вы проводили тест на тех же нодах, что и работал проект?
Почему не использовались какие то сервисы? Например www.blitz.io или loader.io (последний мы разрабатываем и 10k он позволяет тестировать без траты денег)
Можу запропонувати дві свої книги — leopard.in.ua/...and-chef-books Перша про PostgreSQL (на російській), друга — про Chef (на англійській).
Зависит от аргументации. Нужно понять почему он не согласен, в то время как остальные согласны (это его участок кода? он знает то, о чем остальные не в курсе? а может эти 4 человека знаю то, что 5 не в курсе, и риски намного меньше, чем он себе представляет?)
По моему опыту, технические проблемы решаются в команде достаточно просто. Некоторые идут на уступки в одном (например в выборе платформы разработки), но не дают уступок в другом (покрытие тестов не менее 95%).
Больше проблем начинается, когда продакт овнер хочет отойти от процесса разработки продукта («нужно релизит к этому числу», «не нужно писать тесты»). Тут ужа начинается проблема конфликта продакт офнера с командой. В этом случае (конфликт с продакт овнером) берется еще человек, у нас их называют «Leaison» (вроде скрам мастера, но на время конфликтов). Что самое интересное — этот человек может быть просто другим девелопером с другого проекта. Его задача — взглянуть на ситуацию под другим углом и помочь выбрать правильное решение. Далее — идет обсуждение проблемы (команда, leaison и продакт овнер). Иногда команда идет на уступок (например, зарелизить в нужный срок без полного покрытия), но потом клиент идет на подобный уступок в ответ — команда дополнительно тратит время покрыть созданый тех. долг (данное потраченное время не несен никакого «бенефита» продакт офнеру с его стороны).
Еще часто такое возникает, когда над продуктом работают разные команды (с разных контор), и у каждой команды свои методики. Тут уже командам придется активно договариваться как вести процесс вместе.
центр влияния — продакт овнер (что логично, он платит деньги). Остальные разработчики/дизайнеры равны, будь то со стажем 10 лет или всего год. Люди и их взаимодействия важнее процессов и инструментов.
Вы можете говорить, что так не возможно. Но мы так работаем без ПМ-ов/архитекторов/прочего бесполезного персонала (игра в испорченый телефон с продакт овнером у нас не работает) в командах. Решение принимаются всеми, если один будет не согласен — он потом будет не доволен процессом разработки. Зачем создавать такие проблемы?
Он входит в ТЗ. Например в TDD реализация любой фичи начинается с тестов.
Без понятия. Можете в подвале закрыть и паяльником мучать. Или всю ЗП на нужды АТО перевести :)
Я обожаю тим-ревью, но даже с таким подходом, на одном из проектов пролетела бага, которая убила регистрацию(!)
А тесты на регистрацию не?
Да не наказываю я. Я нахожусь с другой барикады. Данный подход пока не позволил допускать такие проблемы.
ЗЫ даже если проект большой — команды дробятся на
Разные (зависит от того: «оставили деление на ноль» или «удалил таблицу юзеров на продакшене без бекапов»). Но учитывая подход, у нас такие проблемы быстро находятся и «отсекаются».
Методом — про**ал один, недосмотрели — все. Один писал, другой сидел в паре, третий ревьюил результат.
Он знает возможные проблемы и их решения, что и для чего можно использовать
Тести показывают проблемы и как они решаются через код. Как это будет работать и реализовано решает команда, а не один человек (планирование «скоупа» работ и реализация). Ответственность несут тоже все. Написание контролируется тоже командой (code review, switch pairs and context). Нет hero-mode, он просто не нужен.
14. Четко разделяйте ответственность — за каждый участок кода должен отвечать один разработчик
Не работает. Человек может заболеть/уйти в отпуск/уволится. Тогда он становится узким местом в разработке (пример: один знает работу билинга — на него все молятся, ведь только он может его чинить). Команда вся должна быть в курсе всех частей проекта. Для решения подобных проблем используется система «review» кода перед принятием в основную ветку другим(и) разработчиком(ами). Также используется работа в паре и переключение с контекстных задач людей.
Спасибо за статью. У нас используется самописное mongodb-logger.catware.org или сервис www.loggly.com