
Антон
20.09.2018
18:27:45
Плохо что эти модели часто для галочки внедряются ( всего на одном проекте, в котором я участвовал - agile был внедрен по уму, до сих пор с ностальгией вспоминаю. А при внедрении чдля галочки" зачастую проекты становились менее удобными.

Roman
20.09.2018
21:09:03

Kotani
21.09.2018
07:38:38
Бедный КарПрайс и Док+ всё никак не найдут тестера

Bigjoe
21.09.2018
07:41:14
ну карпрайс недавно ищут

Google

Bigjoe
21.09.2018
07:41:35
а доки вроде сливают всех и ищут богов тестирования на первый взгляд
хотя это судя по одному отзыву, могу ошибваться

Anna
21.09.2018
10:15:06
привет. может кто-то занимался подобной задачей. нужно сделать замеры времени на участках формирования файла (запрос клиента к браузеру, запрос к бд и т.д.). так вот, сколько нужно делать измерений, чтобы картина была исчерпывающей (хотя бы примерно :) )? делается это для того, чтобы определить проблемные участки
ну то есть я так понимаю, нужна статистика

Timur
21.09.2018
10:19:35
то есть профилирование?

Ilya
21.09.2018
10:19:49
а у вас для этого есть все необходимое?

Dimcho
21.09.2018
10:19:51

Timur
21.09.2018
10:19:54
можно и по одному измерению при профилированию найти бутылочное горлышко

Ilya
21.09.2018
10:20:30
вы же понимаете что просто так сходу отследить путь одного конкретного запроса не получится?)

Timur
21.09.2018
10:20:31
если нужна статистика в точных процентах - то вот простая фурмула: A = 1 / (N*N)
где A - точность в процентах, N - число измерений

Anna
21.09.2018
10:24:43

Google

Anna
21.09.2018
10:26:29

Timur
21.09.2018
10:26:36
объясните?
ну то есть если вы делаете это вручную - просто один раз делаете какую-то операцию - замеряете сколкьо времени на каждую операцию потратилось - выбираете самую долгую и пытаетесь ускорить - не обязательно нужно сто питсот повторов

Anna
21.09.2018
10:27:18

Timur
21.09.2018
10:27:30
если нужна прям статистика - тогда делайте 10 измерений и усредняйте по ним - погрешность измерений будет примерно 1% (статистическая, без учета погрешности метода измерения)

Anna
21.09.2018
10:27:48

Timur
21.09.2018
10:28:33
почему именно 10?
потому что 10 в квадрате это сто, а 1/100 это 1 процент, что в большинстве случаев можно считать избыточно маленькой погрешностью

Anna
21.09.2018
10:30:58

Timur
21.09.2018
10:36:30
давайте начнем с задачи. опишите что и как будете измерять

Anna
21.09.2018
10:43:52
давайте начнем с задачи. опишите что и как будете измерять
сначала я проанализировала логи с прода и составила отчет самых популярных запросов на скачивание файлов. отчет это таблица из ссылки на скачивание и количество скачиваний. затем расписала поэтапно операцию генерации и скачивания файла. сейчас я могу определить время запроса браузера к северу через devtools, остальные этапы вроде как уже есть в логах с тестовой среды (но пока на костылях и не все работает).
так вот вопрос. один файл скачивали 30 раз, а другой 3000 раз. оба файла надо проверять 10 раз? вот это непонятно

Timur
21.09.2018
10:46:07
оооо
это уже совсем другое
в целом зависит от задачи, которую Вы решаете

Anna
21.09.2018
10:47:11

Timur
21.09.2018
10:47:39
если вы хотите именно профилировку - то в вашей выборке файлов для скачивания должны жыть файлы маленького и большого размера, или разных типов (если скорость генерации зависит не от размера а от сложности фильтров, например)
составляете список из 5-10 разных типов файлов с яркими представителями (разбиваете на классы эквивалентности)
и потом для каждого файла делаете какое-то фиксированное число проверок (например по три)

Anna
21.09.2018
10:50:41

Google

Timur
21.09.2018
10:51:04
если же вы в целом хотите снизить нагрузку на сервера (и UX не важен) - тогда берите самые частые и самые тяжелые запросы и уже оптимизируйте их
почему именно по три?
здравый смысл. один - мало, потому что вдруг там на сервере что-то происходило и мы случайно замерим слишком большое время? три уже норм - если три измерения показывают что файл скачивался 6 секунд - значит верим этому. Можно и мильон раз проверить - но изменится ли результат?
то есть три - это минимум для того чтобы исключить случайности
но можно и больше - если есить время и нет других задачек)))

Anna
21.09.2018
10:55:34

Timur
21.09.2018
11:19:26

Anna
21.09.2018
11:26:55
да
так, я разобралась с количеством проверок, спасибо большое. теперь еще один вопрос. нужно параллельно измерять загрузку сервера (диска, процессора и памяти). сисадмина у нас нет. как мне измерять эти данные?

Timur
21.09.2018
11:29:01

Anna
21.09.2018
11:34:36

Timur
21.09.2018
11:39:39
и сори за глупый вопрос, где его устанавливать? на клиенте?
и еще важный момент - вам надо подумать сколкьо таких запросов приходит в мину ту - возможно проблема воспроизводится только при 1000+ запросов в минуту - тогда уже Вам надо полноценное тестирование нагрузки/произвоительности делать, а не замерятьв ручном режиме ))

Ilya
21.09.2018
11:47:16
идеально конечно не просто наблюдать, а отправлять результаты в заббикс или в графану, чтобы было наглядно от итерации к итерации как система меняет свое поведение

Timur
21.09.2018
11:47:42

Andrey
21.09.2018
11:49:54

Anna
21.09.2018
11:57:10

Timur
21.09.2018
11:59:18
если есть заббикс то да, он как раз для мониторинга

Google

Anna
21.09.2018
12:20:25

Timur
21.09.2018
12:21:52

Anna
21.09.2018
12:22:08

Timur
21.09.2018
12:23:45
делается это так - смотришь в заббиксе графики, если есть какие-то аномалии - пишешь о них в репорт цифрами (на графике можно посмотреть какая конкретная цифра была в нужной точке графика)

WiCKed
21.09.2018
13:23:44
Всем привет! Какой можете посоветовать инструмент для того чтобы протестировать объём трафика через канал связи между клиентом и сервером тестируемого приложения. Приложение под винду, то есть подойдет просто по процессу считать, чтобы можно было увидеть график в какое время какая загрузка канала была


Jacob
21.09.2018
14:25:38
❇️ Эта рабочая неделя оказалась весьма плодовита на интересные вопросы и статьи, которыми и спешу с вами поделиться в рамках очередной еженедельной подборки по C# и .NET.
Предлагаю вашему внимаю самые ? интересные статьи и вопросы этой недели:
C#:
? C# Intermediate – Properties in C#
? C# 8 Small Features
? Null coalescing operator IList, Array, Enumerable.Empty in foreach
? C# Asynchronous with task is slower than synchronous
Debugging:
? Отладка как процесс
? Breakpoints FAQ: How can I pause my code in Visual Studio?
Performance:
? Struct и readonly: как избежать падения производительности
? Performance of value-type vs reference-type enumerators
Common:
? Как мы создали технологичный продукт и провалились на дно
? 23 рекомендации для читабельного кода
Всем хороших и плодотворных выходных ?
#sof_weekly