Size: a a a

Software Design/Architecture/Zen

2020 September 22

SM

Sergey Michaylovich in Software Design/Architecture/Zen
я не знал, узнаю все как всегда последний
источник

SM

Sergey Michaylovich in Software Design/Architecture/Zen
"пиши потом разберемся!"
источник

DB

D B in Software Design/Architecture/Zen
Возьми heidisql и там дамп сделай
источник
2020 September 23

IR

I Raimbayev in Software Design/Architecture/Zen
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
источник

МФ

Максим Федоров... in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
Метрики и профайлеры
источник

IR

I Raimbayev in Software Design/Architecture/Zen
Максим Федоров
Метрики и профайлеры
Да, я в курсе, что в эту сторону копать. А вот конкретней умные книжки там или чтиво какое-нибудь можете порекомендовать?)
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in Software Design/Architecture/Zen
Интересно, наверное должен быть аналогичный девопс чатик? Лично я в этом не спец
источник

m

militska in Software Design/Architecture/Zen
источник

AD

Andrey Dembitskyi in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
Google SRE book
источник

AL

Anton Lakotka in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
это вообще все сильно зависит от того что за приложение и как оно организовано. и от того для каких нужд тебе все это необходимо

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

SP

Sergey Protko in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
Можно руками (промитей или логи парсить) можно подключить какой ньюрелик или всякие dynatrace и там настраивать штуки

Нагрузочные тесты сделать тоже придется.
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
У newrelic неплохие агенты, да. Плюс там всякие APM есть.
Для нагрузочных можно loader.io
источник

Р

Руслан in Software Design/Architecture/Zen
Artem Zakirullin
У newrelic неплохие агенты, да. Плюс там всякие APM есть.
Для нагрузочных можно loader.io
Яндекс танк не пойдет?
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Руслан
Яндекс танк не пойдет?
Вполне. Было лень для него конфиги писать)
источник

AZ

Artem Zakirullin in Software Design/Architecture/Zen
Можно и siege обойтись, не совсем честно, конечно)
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
I Raimbayev
Добрый день!
Подскажите, что можно почитать, посмотреть на тему замеров производительности сервисов, баз, серверов и т.д.

Т.е., как правильно считать максимальное количество RPS (requests per second) на машину, или наоборот, как подобрать машину, если даётся требование по RPS, по времени обработки, по SLA и т.д.?

Все это руками и нагрузочными тестами считается или есть какие-то более формальные подходы/методики?
cла по латенси и рпс на инстанс - через нагрузочное тестирование. Инфраструктуру под задачи должны подбирать дево-псы, но обычно меряют кривую роста и экстраполируют.
источник

SP

Sergey Protko in Software Design/Architecture/Zen
Apache DOG™
cла по латенси и рпс на инстанс - через нагрузочное тестирование. Инфраструктуру под задачи должны подбирать дево-псы, но обычно меряют кривую роста и экстраполируют.
Кто такие дэвопсы? Это как опсы только ещё и дэвы?
источник

AD

Apache DOG™ in Software Design/Architecture/Zen
Sergey Protko
Кто такие дэвопсы? Это как опсы только ещё и дэвы?
Вы прекрасно знаете кто такой девопс  но чего то до меня докопались
источник

AK

Anatoly Kireev in Software Design/Architecture/Zen
Добрый день. Хочу понять как правильно организовать получение агрегатов. Сейчас существует такой агрегат - Инцидент. Он представляет собой инцидент ИБ со всякими связями и правилами. И вот в случае если инцидент удаленный (пометка такая) или архивный, правила меняются, в частности его нельзя просто так больше редактировать (под редактированием понимает заполнение набора полей доступных этому инциденту). Сейчас, когда приходит запрос в сервис на изменение, из репозитория инцидентов по идентификатору получаем агрегат Инцидент и выполняем над ним действия. И вот можно было б при попытке редактирования проверять соответсвующие флаги, но как-то не очень мне нравится этот подход. Думаю правильнее будет выделить удаленный и архивный инциденты в отдельные агрегаты типа DeletedIncident и ArchivedIncident, дабы и в будущем упростить реализацию правил только для них. Но тогда не понятно по поводу репозитория, который теперь должен возвращать и Incident и DeletedIncident и ArchivedIncident, что тоже не правильно. Как это лучше разрешить, в какую сторону смотреть?
источник

k

knopkod4v in Software Design/Architecture/Zen
Anatoly Kireev
Добрый день. Хочу понять как правильно организовать получение агрегатов. Сейчас существует такой агрегат - Инцидент. Он представляет собой инцидент ИБ со всякими связями и правилами. И вот в случае если инцидент удаленный (пометка такая) или архивный, правила меняются, в частности его нельзя просто так больше редактировать (под редактированием понимает заполнение набора полей доступных этому инциденту). Сейчас, когда приходит запрос в сервис на изменение, из репозитория инцидентов по идентификатору получаем агрегат Инцидент и выполняем над ним действия. И вот можно было б при попытке редактирования проверять соответсвующие флаги, но как-то не очень мне нравится этот подход. Думаю правильнее будет выделить удаленный и архивный инциденты в отдельные агрегаты типа DeletedIncident и ArchivedIncident, дабы и в будущем упростить реализацию правил только для них. Но тогда не понятно по поводу репозитория, который теперь должен возвращать и Incident и DeletedIncident и ArchivedIncident, что тоже не правильно. Как это лучше разрешить, в какую сторону смотреть?
тож задавался таким вопросом
наверное ответ в том, что раз методы у объектов разные - юзкейсы тоже будут разные. Тогда и репозитории будут разные и методы в апи будут разные. Короче всё отдельно будет.
Тут прикол в том, куда if засунуть по сути.
Можно на клиент (ведь клиент знает с каким типом объекта работает), можно на шлюз какой, если у тебя он есть перед приложением.
Мне кажется, что чем раньше это иф в юзкейсе будет, тем лучше. Т.е. в идеале на клиенте этот иф держать. Или если у тебя бек управляет фронтом (hateoas вот это вот всё) - при генерации экшенов для фронта
но это неточно, сам я такого не делал 🤔
источник