<rmcreative>

RSS

Yii 2.0 AR сделал все PHP ORM в независимом тесте

6 декабря 2015

Carsten из команды Yii добавил в тесты kenjis AR Yii 1.1 и Yii 2.0. Получились вот такие результаты. Yii 2.0 рвёт в клочья всех, кроме Phalcon.

Сюрпризом это не стало, но, всё же, приятно.

Комментарии RSS

  1. №10086
    Алекс
    Алекс 06 дек. 2015 г., 18:05:58

    Это прекрасно, но почему памяти так много ест? Даже больше, чем yii1

  2. №10087
    Алекс
    Алекс 06 дек. 2015 г., 18:19:28

    Дилетант в этом деле, но нельзя ли скомпилировать yii в библиотеку, как phalcon?

  3. №10088
    Sam
    Sam 06 дек. 2015 г., 18:47:09

    Памяти больше ест, скорее всего, сам фреймворк, а не конкретно AR. Надо проверять...

    Скомпилировать как Phalcon можно, но необходимо немного пописать на Zephir.

  4. №10090
    Sergey
    Sergey 06 дек. 2015 г., 20:13:55

    Нужно разработчика, знающего Zephir из Phalcon переманить. Пусть потихонечку компилит кусочки )

  5. №10091
    pronskiy
    pronskiy 06 дек. 2015 г., 21:39:35

    А можно использовать Yii 2 AR как standalone компонент?

  6. №10094
    Sam
    Sam 07 дек. 2015 г., 2:00:58

    Sergey, Zephir не страшнее PHP. Его можно и изучить.

    pronskiy, нет.

  7. №10098
    panda_jj
    panda_jj 08 дек. 2015 г., 14:03:21

    А есть похожее сравнение с Laravel 5?

  8. №10099
    Виталик
    Виталик 08 дек. 2015 г., 15:12:29

    panda_jj, так Laravel использует eloquent. Какое еще сравнение необходимо?

  9. №10100
    Денис
    Денис 08 дек. 2015 г., 18:44:20

    panda_jj, если судить по этим тестам, orm ларавела (eloquent) почти в 5 раз медленнее.

  10. №10101
    alex
    alex 09 дек. 2015 г., 19:55:32

    а propel?

  11. №10102
    JhaoDa
    JhaoDa 10 дек. 2015 г., 17:39:11

    Денис, в тесте Eloquent ветки 4. Почему Yii две ветки, а Eloquent только старый?

  12. №10104
    Sam
    Sam 11 дек. 2015 г., 13:51:37

    alex, JhaoDa, добавляйте. Это ж OpenSource...

  13. №10114
    skr
    skr 14 дек. 2015 г., 0:54:23

    Если использовать yii2 AR в FuelPHP, то придется тянуть весь фреймворк, да?

  14. №10115
    Sam
    Sam 14 дек. 2015 г., 15:01:03

    Да.

  15. №10117
    Юрий
    Юрий 15 дек. 2015 г., 11:37:48

    не тест, а бред. как понимаю оно даже запускалось под Yii2, Doctrine без кеша и т.д.

    AR фигня ограниченная. Ничего больше уровня блога на нем не напишеш.

  16. №10119
    Sam
    Sam 15 дек. 2015 г., 12:15:56

    Юрий, то есть вот это всё уровня блога?

    и т.д.

  17. №10121
    Юрий
    Юрий 17 дек. 2015 г., 13:36:53

    наведенные сайты не выходят за рамки "блога". я бы даже сказал, что почти все приведенные выше сайты очень просты в сравнении с обычным функциональным блогом, типа wordpress.

    может лишь Wikimart более сложный, но я не уверен что он работает на AR и Yii. Он либо непопулярен, либо работает на чем-то другом. Максимум, это перед может быть на Yii, все остальное сервисы типа "облаков"

    п.с. kassir.ru глючный и явно на Yii. наверно его кто-то посещает. Это предел для Yii

  18. №10124
    Sam
    Sam 18 дек. 2015 г., 2:30:35

    Юрий, жгите ещё.

  19. №10131
    Денис
    Денис 21 дек. 2015 г., 7:31:44

    Sam, как известно, успех обычно измерятся в количестве врагов) Так что, все нормально)

  20. №10132
    Денис
    Денис 21 дек. 2015 г., 7:32:17

    измеряется*

  21. №10167
    BobrD
    BobrD 03 янв. 2016 г., 22:23:25

    файл: doctrine-bootstrap.php

    $isDevMode = true;

    Автор тестов понимает как работает доктрина в dev режиме?

    Тесты ни о чём.

  22. №10168
    BobrD
    BobrD 03 янв. 2016 г., 22:26:50

    define('YII_DEBUG', false);

    Тест YII2 :)

  23. №10171
    Sam
    Sam 04 янв. 2016 г., 1:06:34

    BobrD, тесты Yii 2 сабмитили мы. Мы понимаем, как работает Yii 2 :)

  24. №10267
    romeOz
    romeOz 20 февр. 2016 г., 6:21:52

    Не думаю, что кто-нибудь, кроме Александра прочитают этот комментарий из-за давности публикации поста, но всё же.

    pronskiy, skr: Я создал standalone реализации yii2 db, а также mongodb и sphinx search engine. Всё выше перечисленное актуально версии yii 2.0.5 + некоторые коммиты из dev ветки. Мне осталось привести данный набор библиотек к версии 2.0.7 (актуальной на текущий момент времени). А именно, добавить конструктор миграций (DDL), через методы и остальное по мелочи (см. в обзорах релизов здесь или на хабре). Естественно имеются отличия:

    • Валидация и санитизация модели (rules) производится через мои библиотеки Rock Validate и Rock Sanitize. К сожалению, я пока не писал документацию по синтаксису создания правил для моделей. Можно посмотреть в тесты.
    • Кэширование запросов производится с помощью библиотеки Rock Cache, которая позволяет использовать инвалидацию кеша тегами (два подхода: версионирование и группировка), а также избежать состояние гонки (race condition) через временные локи. Также присутствуют некоторые поведения/фильтры для модели знакомые по yii 2.

    Я уважаю и ценю труд разработчиков фреймворка и трезво оцениваю, что мой вклад в реализацию данных библиотек минимален (несколько незначительных PR - не в счёт), а потому, публиковать статьи или как-то иначе "пиарить" их я не намерен.

  25. №10841
    justdevelopit
    justdevelopit 21 янв. 2017 г., 21:19:45

    $isDevMode = true;

    nice, nice!

  26. №10902
    anon
    anon 23 марта 2017 г., 17:09:23

    Шикарные тесты. Поднятие Датамаппера жрет больше времени и памяти чем эктиврекорда на одну запись без методов.... вот это поворот, очень неожиданный результат...

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.