кто-то активно юзал. Вот админка модх их юзает и жутко тормозит из-за холостых вызовов и ненужных проверок. - они должны быть опциональны-чтобы их отключить можно было. хотя можно из вызвать в цикле - считать код и выполнить сразу над всеми, если надо быстро, если нет, то как обычно.
То что я делаю - это далеко не всем надо, а тем кому надо быстрее, я же на чистом пхп мимо модх пишу это все. а ускоряю за счет разных алгоритмов, например считать 100тв по именам/заголовкам за два запроса а не за 300 как стандартно. читаю все тв ид, имя, заголовок, зн.по умолч в массив заранее. потом читаю эти 100 тв и в цикле с 2 мя условиями заполняю словарь ключ-значение. Если надо что то над ними сделать то не дергаем событие для каждого а в этом же цикле вызывем val=f(val) которая сделает тоже самое. у меня вот если тип тв listbox то меняется 1 на "да" 0 на "нет" и пересчет валют и скидок. Почему это не сделано в самом классе модх - вот вопрос, это очень нужная штука.
Запись 100тв почти тоже самое, но сложнее. И все это в итоге быстрее в 1000+ раз. т.к запрос это через сокет- это намного медленней чем ф-ю вызвать. чтение/запись 100 ресурсов с нужными тв тоже также примерно, но алгоритм сильно сложнее- куча буферов, вспомогательных вызовов и автозамен, но быстрее. Да это обычное дело- короткий простой код работает обычно дольше, а сложный и большой - быстрее- там подготовка, а потом за один проход, а не цикл в цикле или рекурсия.
То же самое с классами - яркий пример либа spout-писал о ней-ищите выше. там запись 1000х100 это 100к объектов создать, записать через встроенный вызов и тут же их уничтожить. Причем там все объекты- лист,строка, ячейки, зачем? это использование хороших технологий в не том месте. как из пушки по воробьям. Тот кто математику учил знает это. Если такой типа "инженер" построит дом то он будет стоить как золотой и через год рухнет. а в нормальных странах за такое вобще растреливают :)
а я пишу в 2х циклах в 2 байтовых буфера сразу в нужном формате, и при заполнении скидываю порциями в файлы, потом в zip и ексель файл готов- 1 к 1 но в _МИЛЛИОН_ раз быстрее. вот тебе и классы, да может в играх где то удобно-персонажей клепать через классы, их там мало, а когда миллион записей, то про классы/объекты лучше забыть и все на циклах и максимум пороцедурах- которые лучше в цикл включить и заменить все развилки арифметикой и сдвигами. на Си есть INLINE - они при компиляции в код встраиваются- это сильно ускоряет. тут нету-ручками.
На асемблере тоже можно сделать и вызвать из пхп, но очень гиморойно. Это не DLL писать на винде-я их тьму написал,а тут это неюзабельно, поэтому и нет ничего. идут там либы в комплекте с пхп вот их можно юзать, а свои хрен.из питона вроде можно длл-ки из винды юзать, но на линуксе надо компилировать заново, ось другая, форматы другие,все это надо изучать и учитывать.. мне некогда. только за очень большие деньги :)
вот ты не угомонишься)
ты же вкурсе что такое попадание в кэш в ЦПУ? что такое компилятор?
Обсуждают сегодня