Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
и снова CURL - multi mode (php)
|
|||
|---|---|---|---|
|
#18+
З А Д А Ч А значит глобальная задача, которой я занимаюсь заключаеться в том, дабы паралельно запускать скачивание файлов. сразу 1 НО !! читал статьи где человек предлагает глупый вариант работы курла, просто он этого не замечает скачивая стартовые страницы яндекса и мейл ру. А вот если качать файл в 40МБ и видеть что он с локалхоста на локалхост качаеться по 100-300кб/сек - то не правильность работы очевидна. 2 НО работа предполагаеться следующая ОБОЗНАЧЕНИЯ С-старт К-конец П-процес скачивания Д - другая работа не связаная с цурлом совсем получаем 1Д С1 С2 2Д П1 П2 С3 3Д К1 П2 П3 С4 4Д П2 К3 К4 ..... тоесть вариант сразу имеем 10 заданий, и качаем пока не скачаем все 10 не подходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2014, 12:46 |
|
||
|
и снова CURL - multi mode (php)
|
|||
|---|---|---|---|
|
#18+
alex564657498765453, П О Д З А Д А Ч А № 1 Имеем несколько закачек, надо скачать не теряя зря времени и не делая холостых циклов я остановился на таком варианте Код: php 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. 36. PS curl_multi_exec теперь ни когда не возвращает CURLM_CALL_MULTI_PERFORM но пишем код чтоб автоматом использовать этот ответ при старой версии либкурла POINT1 как я понял, функция селект особено в начале выдаёт -1 пока осуществляеться подключение и поэтому гнать цикл вхолостую - не ускоряет процес закачки, но увеличивает нагрузку на процессор. собственно вопросы уже возникает сдесь верно ли я рассуждаю? что означает ответ -1 у curl_multi_select? (php.net читал) по тестам, без задержки в 10000 мс не качаеться быстрее. тоесть вначале вхолостую будет крутиться цикл, никакой записи на винчестер(скачиваемые файлы) нету. как можно всётаки замёрзнуть вначале, пока там чтото инициализируеться. раньше было проще - я знал, что если ответ CURLM_CALL_MULTI_PERFORM, то вызвать повторно curl_multi_exec теперь как быть? ЗЫ для тестов спецом качал один файл большой статический, другой маленький, но выдаёться по 4кб через интервалы в пол секунды, третий - просто фраза хеллоу но выдаёться с задержкой 10 сек. пользоваться вариантом без селекта, втупую вызывать в цикле curl_multi_exec - получим пару десятков холостого цикла вызова этой функции а с селектом акуратно код замерзает пока третий источник данных 10 секунд тормозит перед выдачей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2014, 13:18 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=92&tid=1463002]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 231ms |
| total: | 370ms |

| 0 / 0 |
