|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
WPF 4.5, EF6.2.0 code first, Sql Server 2012. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
Выборка из таблицы с 1млн строк: ToList() ~ 26сек Task.Run ToList() ~ 29сек ToListAsync() ~ 81сек Почему такая разница между GetDataTaskRun() и GetDataToListAsync()? Подскажите, как работать с async в EF6? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 14:08 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mПодскажите, как работать с async в EF6?пагинация. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 14:24 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Petro123sa13mПодскажите, как работать с async в EF6?пагинация. Это не выход для меня. Что не так с ToListAsync()? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 19:41 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Профайлером SQL смотрели? Запросы отличаются? Время запроса то же самое? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 19:42 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mЭто не выход для меня.Конечно. Меня лимон смотрят через пол сек. А у тебя пол минуты пялятся в пустой экран. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 20:42 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.ProПрофайлером SQL смотрели? Запросы отличаются? Время запроса то же самое? В профайлере запросы одинаковые. Этот же запрос через Management studio выполняется ~50 сек ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:06 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mВ профайлере запросы одинаковые. Этот же запрос через Management studio выполняется ~50 секЧерез студию - пофиг. Меня интересует - время выполнения трех запросов из вышеприведенного теста по профайлеру одинаковое? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:07 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Petro123sa13mЭто не выход для меня.Конечно. Меня лимон смотрят через пол сек. А у тебя пол минуты пялятся в пустой экран. Через пол секунды смотрят первые 1000 строк? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:09 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mPetro123пропущено... Конечно. Меня лимон смотрят через пол сек. А у тебя пол минуты пялятся в пустой экран. Через пол секунды смотрят первые 1000 строк?Забей. Petro123FloodFactory.Instance.AutoReply() ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:10 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.Prosa13mВ профайлере запросы одинаковые. Этот же запрос через Management studio выполняется ~50 секЧерез студию - пофиг. Меня интересует - время выполнения трех запросов из вышеприведенного теста по профайлеру одинаковое? Время одинаковое перепроверил несколько раз ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:20 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mВремя одинаковое перепроверил несколько раз тогда надо заглянуть в исходник ToListAsync и проанализировать его. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:23 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Хм. Там итерации выполняются с помощью ForEachAsync, который на каждую итерацию создает отдельную таску, да еще без ConfugireAwait(false) Похоже, много времени уходит на накладные расходы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:33 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mЧерез пол секунды смотрят первые 1000 строк?в настройках сколько им удобно. Неужели не видел настройку в любом инет магазине: Показывать столько то строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 21:58 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Petro123в настройках сколько им удобно. Неужели не видел настройку в любом инет магазине: Показывать столько то строк.Кто тебе с казал, что это вообще сайт, что эти строки отображдаются пользователю? Ты мыслишь только с высоты своего опыта (два вершка) и не можешь придумать иных юзеркейсов. К автору: тем не менее - тащить миллион записей на клиента требуется крайне редко, действительно неляз обойтись обработкой на сервере? Или это просто тестовая задача для проверки производительности? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 22:34 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.ProКто тебе с казал, что это вообще сайт, что эти строки отображдаются пользователю? Ты мыслишь только с высоты своего опыта (два вершка) и не можешь придумать иных юзеркейсов.у меня по шахматам разряд)) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 22:39 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.ProPetro123в настройках сколько им удобно. Неужели не видел настройку в любом инет магазине: Показывать столько то строк.Кто тебе с казал, что это вообще сайт, что эти строки отображдаются пользователю? Ты мыслишь только с высоты своего опыта (два вершка) и не можешь придумать иных юзеркейсов. К автору: тем не менее - тащить миллион записей на клиента требуется крайне редко, действительно неляз обойтись обработкой на сервере? Или это просто тестовая задача для проверки производительности? После перевода EF запросов на async стал замечать потерю быстродействия. Таблица с миллионом записей взята для тестирования. Пока остановился на Task.Run(...).ConfigureAwait(false), время выполнения близко к ToList(). Спасибо Вам за помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 22:48 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Petro123, нулевой? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 22:48 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
sa13mПосле перевода EF запросов на async стал замечать потерю быстродействия. Таблица с миллионом записей взята для тестирования. Пока остановился на Task.Run(...).ConfigureAwait(false), время выполнения близко к ToList(). Спасибо Вам за помощь.Глянул в EF Core - навскидку там иначе, возможно такого косяка нет ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 22:55 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
ViPRosPetro123, нулевой?ты программист? Ты че тут делаешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 23:14 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.Proтакого косяка нетTask. Run подойдет к любым вариантам. К бабке не ходи. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2018, 23:18 |
|
EF6 ToList() и ToListAsync() время выполнения
|
|||
---|---|---|---|
#18+
Shocker.Prosa13mПосле перевода EF запросов на async стал замечать потерю быстродействия. Таблица с миллионом записей взята для тестирования. Пока остановился на Task.Run(...).ConfigureAwait(false), время выполнения близко к ToList(). Спасибо Вам за помощь.Глянул в EF Core - навскидку там иначе, возможно такого косяка нет В EF Core такой же долгий ToListAsync() ... |
|||
:
Нравится:
Не нравится:
|
|||
08.11.2018, 01:13 |
|
|
start [/forum/topic.php?fid=17&msg=39729631&tid=1349156]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
159ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 262ms |
total: | 518ms |
0 / 0 |