The Ant
нет такой задачи парсинга, где пхп не справится никак и надо полюбому бежать на джаву или питончик
попробуй начать парсить хотябы десяток ресурсов одновременно, посмотрю я на тебя :D
The Ant
https://a-parser.com/ и посмотри просто возможности десктопного парсера. Подумай, сколько стоит такой будет на пхп и будет ли он эффективен с теми же плюшками
Alexey
а давно на пхп начали десктопные приложения писать?
Artem
а давно на пхп начали десктопные приложения писать?
Очень-очень давно была такая шняга как PHP DevelStudio
Alexey
tk экстеншн мертвец же
The Ant
а давно на пхп начали десктопные приложения писать?
ну чел утверждает что пхп в парсинге хорош. Но это же не так. В первую очередь из-за потребляемых ресурсов и отсутствия вменяемой многопоточности.
Alexey
Вполне хорош
Alexey
Многопоточность есть
The Ant
для 1 сайта
Alexey
С нюансами
Alexey
Асинхронность на уровне ноды есть
The Ant
т.е. такая же говняная как в ноде. ну я в курсе ага
Alexey
Промисы есть, генераторы есть, интеграции основных event библиотек есть
The Ant
и все это очень очень медленное )
Alexey
Вполне себе быстрое
The Ant
я ж говорю, запусти десяток сайтов одновременно парсить и посмотри что с сервером будет
Alexey
На уровне пайтона
Alexey
Ну ты хотяб опкод кэшер задействуй
The Ant
чем он поможет?
Alexey
Хз
The Ant
опкод работает когда парсится скрипт. когда скрипт работает в режиме демона (условно вечный) опкод ваще никак не поможет
Alexey
https://blog.famzah.net/2016/02/09/cpp-vs-python-vs-perl-vs-php-performance-benchmark-2016/
Alexey
в общем ты кругом не прав
The Ant
ладно
Дмитрий
/
Alexey
проблемы у пхп другие
Alexey
их две
Alexey
а) куча легаси говна
Alexey
б) отсутствие нормальной поддержки уникода
Alexey
с остальным более-менее можно мириться и находить воркэраунды )
The Ant
с) потребление ресурсов. особенно при использоваении ооп
Steel
в 2004-2005м году я заработал на квартиру пхп-ботами, которые ногибали майспейс (он тогда ещё был жив) (да, сейчас мне стыдно за свою спамо-молодость, но тогда многие тем промышляли, времена были дикие, этакие 90е в инторнете. это щас это зашквар, а тогда было норм) но с тех пор, когда мне рассказывают, что пхп не умеет в многопоточность или там парсинг — остаётся только улыбаться было бы желание — и всё похапе умеет я не спорю, что на джаве это могло бы получиться тогда лучше, но тогда важен был результат, а джаву я не знал, а учить было некогда, надо было херачить код
Steel
и это ж был ещё 4й! щас на него смотришь и думаешь как тот батя «ух бля»
Alexey
с) потребление ресурсов. особенно при использоваении ооп
Объекты жрут меньше памяти чем даже масствы
Alexey
Мне лень бенчи писать)
Alexey
Вечерком мож займусь
Steel
это с каких это пор
с 5.4 примерно
Steel
ну нихуя себе новость
но это правда :)
The Ant
с 5.4 примерно
в 5.6 это точно не так
Steel
доооо
Steel
https://gist.github.com/nikic/5015323
Steel
N | Array | Object ------------------ 1 | 200 | 136 3 | 392 | 152 10 | 1064 | 208
Steel
«Not using objects because they are "too heavy on the memory" is dumb. At least if arrays are the alternative.» там и бенчи и всё такое
👻
чето я находил обратную инфу
Steel
¯\_(ツ)_/¯
The Ant
доооо
объясни тогда дорогой, как же так получилось, что при отказе от объектов время генерации страницы сократилось в три раза и объем потребляемой памяти примерно 40%?
👻
и тоже с тестами
The Ant
в реальном рабочем проекте. С твоих слов должно быть ровно наоборот
Steel
щас бы мне всё бросить и решать задачу быстродействия/памяти по общему предложению
The Ant
потому что гладиолус, очевидно же
ну и я о томже. пиздеть не мешки ворочать )
👻
недавно вроде как было выступление кото то с коре yii и там как раз рассказывалось почему в yii много чего на масивах а не объектах
Steel
ну вот ссылочка на тесты принеси обратные доказательства, чо уж
PowerAxis
Мне тоже интересно как это массивы тяжелее объектов
👀
объясни тогда дорогой, как же так получилось, что при отказе от объектов время генерации страницы сократилось в три раза и объем потребляемой памяти примерно 40%?
ну вот я такую же ситуацию наблюдаю, но это скорее всего из-за фрейма, который тащит в модельку шопопало наверное с чистыми объектами быстрее и будет
Steel
объясни тогда дорогой, как же так получилось, что при отказе от объектов время генерации страницы сократилось в три раза и объем потребляемой памяти примерно 40%?
наверное наговнокодили, как всегда взять тотже yii там asArray() будет меньше памяти потреблять чем та же запись в AR и работать будет быстрее надо пояснять, почему, или так понятно?
Steel
https://stackoverflow.com/questions/2193049/php-objects-vs-arrays
👀
ща попробую по логике автора написать бенч, затестить
👀
благо время есть :)
Steel
вот ещё…  1. Class is fasts than Arrays (but marginally). 2. stdClass is evil. 3. Class uses less memory than Arrays. (about 30-40% less!!)
The Ant
объекты меньше жрут чем массивы
Steel
с твоих слов должно быть больше
я ж и привёл пример, как объект может занимать больше памяти, чем массив значит ты таки не понял шутки
The Ant
сложные шутки да
Steel
в том же АР лежит ещё стопицот оверхедов (те же _oldValues) исессно он больше занимает надо ж головой пользоваться, а не в тупую «объекты лучше/хуже» в чистом виде объект занимает места больше, вот факт, о котором мы говорим
Steel
Ты дальше почитай
ага «Class still uses less memory than Arrays. (about 30-40% less!!). »
Steel
да, 5.5+ массивы стали быстрее но мы ж говорим про память
PowerAxis
Ага, еще дальше
Steel
Ага, еще дальше
objects are slower even on PHP 5.2 что ещё? :) ты пиши прямо, что сказать-то хочешь
Steel
(не забывайте, что мы говорим про Object, а не stdClass, это там тоже отдельно помечено в статейках)
Steel
в общем, принесите уже тест для пхп 5.6+ (ну ниже не вижу смысла смотреть, кто этим говном уже пользуется), который показывает, что объекты занимают больше памяти, чем массивы и позырим чо там как
Дмитрий
Зачем 5.6 ???
Steel
зачем 5.6 ЧТО? (там плюсик, есичо, обрати внимание)
👀
ну я вот потестил
👀
пхп 7.2
👻
и