Запуск PEAR канала Limb 3.x: pear.limb-project.com

pachanga

Новичок
Запуск PEAR канала Limb 3.x: pear.limb-project.com

Итак, после почти года мытарств и мучений Limb 3.x PEAR канал начинает свою работу официально. Не обращайте пока внимания на аскетичный и скромный дизайн, не это главное. Главное то, что команда разработчиков наконец-таки нашла в себе силы выложить более десятка пакетов, существенно, на наш взгляд, облегчающих жизнь web разработчика.

Самым, пожалуй, интересным пакетом является web_app, который "тянет" за собой почти все остальные пакеты. Этот пакет предоставляет средства для быстрой разработки web приложений схожим в чем-то с Rails образом. В этот пакет входят средства для маппинга модели приложения на базу данных(active_record), инструменты для обработки запросов с помощью различных видов контроллеров, мощная шаблонная система WACT и много еще чего вкусного. Если есть интерес, то первое что стоить посмотреть - пример создания CRUD приложения.

Установка web_app пакета будет выглядеть примерно следующим образом:

Код:
#на данный момент PEAR-1.5, который необходим для установки, находится в состоянии alpha
$ pear install PEAR-alpha 

$ pear channel-discover pear.limb-project.com

#да и мы тоже пока в "альфе"
$ pear install limb/web_app-alpha
И все!

Естественно, все пакеты пока в состоянии alpha, но мы больше чем уверены, что через несколько итераций у нас появятся и стабильные релизы(хотя пугаться состояния alpha не стоит :) нами уже сделаны несколько серьезных проектов на Limb 3.x, для нас alpha скорее говорит о том, что API пакета находится в нестабильном состоянии и может измениться). Мы можем смело заявить, что web_app может практически на равных конкурировать с ZendFramework, cake и другими PHP решениями для web разработки. Копируем ли мы Rails? В чем-то да и мы открыто об этом говорим, т.к. не стоит скрывать того факта, что в Rails определенные вещи реализованы достойным подражания образом.

Да, пока наша документация "подхрамывает", но мы активно над этим работаем.

С появлением Limb 3.x канала, мы надеемся, процесс доставки кода конечному разработчику значительно упростится. И в данный момент мы также работаем над организацией ночных билдов пакетов прямо из репозитория(хотя некое подобие задумки уже есть сейчас).

Мы всегда остаемся открытыми для ваших предложений, критики и коментариев. И, конечно же, лишняя пара рук, желающих влиться в процесс разработки Limb 3.x, нам никогда не помешает ;)
 

.des.

Поставил пиво кому надо ;-)
Что насчет скорости? Потянет ли Limb действительно нагруженные проекты!? Или он только для проектов с невысокой нагрузкой и административных модулей?
 

zerkms

TDD infected
Команда форума
[offtop]
создаётся впечатление, что
Потянет ли * действительно нагруженные проекты!?
из действительно вопросительного предложения перерос в "вопрос вежливости", который стоит задавать первым в подобных тредах
своеобразный программерский "первонах" ;)
[/offtop]
 

pachanga

Новичок
Автор оригинала: .des.
Что насчет скорости? Потянет ли Limb действительно нагруженные проекты!? Или он только для проектов с невысокой нагрузкой и административных модулей?
Скажу честно, пока огромных порталов с дикой посещаемостью нам реализовывать на Limb3 не приходилось, в основном - intranet приложения с порой довольно сложной бизнес логикой. Однако думаю, что вопрос несколько некорректен, т.к все, на самом деле, зависит от конкретного разработчика. Обычно действительно нагруженные проекты работаю с кешированной статикой через nginx ;) Limb3 не накладывает на разработчика никаких ограничений, предоставляя множество вариантов внедрения кеширования на разных уровнях приложения, например, начиная с цепочки фильтров и заканчивая частичным кешированием определенных зон WACT шаблона и т.д.
 

Vladson

Сильнобухер
Вопрос один появился...

Почему человек не похожий вроде на рекламного бота создаёт откровенно спамерский топик ?
(спамерский естественно не по содержанию а по стилю)
Т.е вроде как новость, а через каждые две строчки так и читается "мы самые супер-пупер, а скоро станем ещё суперЁвее"

Почемо нельзя информационное сообщение преподнисти как новость (т.е как и должна преподноситься новость из мира PHP) а не как сенсацию из мира жёлтой прессы ?

Когда мне хочется почитать "желтухи" я иду на "секлаб", а когда мне хочется не извращённого спама я иду mail.ru и читаю свою почту, но я то пришёл на форум где умные казалось бы люди сидят...

(Всё это имхо, можете смело не соглашаться)
 

pachanga

Новичок
Если модератор скажет свое веское слово, новость будет переделана в менее "эмоциональную"(насколько это возможно, т.к. таковой она и не задумывалась, но, может, и, правда, переборщили? :( ).
 

.des.

Поставил пиво кому надо ;-)
[offtop]создаётся впечатление, что
из действительно вопросительного предложения перерос в "вопрос вежливости", который стоит задавать первым в подобных тредах
своеобразный программерский "первонах"
[/offtop]
Отнюдь. Я код Limb смотрел очень много и поэтому ориентируюсь в его устройстве. Правда последний раз я заглядывал туда больше полугода назад. Поэтому и интересно, что авторы делают в этом направлении.
Скажу так, что для реализации интранет проектов, и небольших корпоративных сайтов, Limb действительно выглядит очень здорово, но опять же, то что
alpha скорее говорит о том, что API пакета находится в нестабильном состоянии и может измениться
лично мне не позволяет начать серьезно думать об использовании Limb.

Вообще cms/cmf особенно в alfa не обязана быть быстрой, но точно должны быть известны пути решения проблем с производительностью в дальнейшем развитии. Если конечно в дальнейшем не планируется использовать Limb для интранет решений only.


Автор оригинала: pachanga
...Однако думаю, что вопрос несколько некорректен, т.к все, на самом деле, зависит от конкретного разработчика. Обычно действительно нагруженные проекты работаю с кешированной статикой через nginx ;) Limb3 не накладывает на разработчика никаких ограничений, предоставляя множество вариантов внедрения кеширования на разных уровнях приложения, например, начиная с цепочки фильтров и заканчивая частичным кешированием определенных зон WACT шаблона и т.д.
Вопрос поверхностен, но абсолютно корректный.
То есть Вы, как разработчик, утверждаете, что я могу реализовать некий проект, допустим сервер объявлений или некоторый коммьюнити портал, и возникшие проблемы решить при помощи добавления многоуровневого кэширования?



2 Vladson
Cмело не соглашусь.

[offtop]zerkms, если я не ошибаюсь, многие идеи Limb нашли свою реализацию в mzz. Тестовая инсталяция дает мне среднюю скорость генерации страницы "Доступ запрещен" в 1-1.5 секунды (что я делаю не так?). Как Вы думаете, могу ли я после этого советовать использовать подобную систему в качестве cms или cmf, пока она находится на данном этапе развития? [/offtop]
 

syfisher

TDD infected!!
Автор оригинала: .des.
Отнюдь. Я код Limb смотрел очень много и поэтому ориентируюсь в его устройстве. Правда последний раз я заглядывал туда больше полугода назад. Поэтому и интересно, что авторы делают в этом направлении.
Изменилось действительно многое. За это время мы подошли к серьезному использованию фреймоворка: не на единичных проектах, а полностью перешли на кодовую базу 3.x ветки в рамках нашей компании. Это позволило выявить множество прецедентов использования, написать заново пакет ACTIVE_RECORD, а также пересмотреть многое, что было связано с контроллерами (в лучшую сторону, как нам кажется). Думаю, что для тех, кто уже смотрел ранее Limb, все эти изменения не будут революционными. ;)

Автор оригинала: .des.
Вообще cms/cmf особенно в alfa не обязана быть быстрой, но точно должны быть известны пути решения проблем с производительностью в дальнейшем развитии. Если конечно в дальнейшем не планируется использовать Limb для интранет решений only.
Zend Framework тоже находится в стадии alpha. Но это не мешает им интересоваться, высказывать свое мнение, использовать в тестовых проектах и т.д.

Мы не могли назвать наши пакеты сразу stable, так как кроме нашей компании у нас нет откликов по использованию Limb в приложениях (целиком фреймворка, а не отдельных пакетов). Поэтому нам нужны отклики от сторонних разработчиков, чтобы понять, что и как можно улучшить, чтобы он удовлетворял требования большего количества разработчиков.

Автор оригинала: .des.
То есть Вы, как разработчик, утверждаете, что я могу реализовать некий проект, допустим сервер объявлений или некоторый коммьюнити портал, и возникшие проблемы решить при помощи добавления многоуровневого кэширования?
Думаю, что да. До определенных пределов, естественно. Limb для вас накладывает скоростные ограничения только в виде парсинга некоторого количества классов, которое он стремится уменьшить до минимума. Однако, нами были проведены серьезные работы, связанные с оптимизацией количества кода, который парсится для обработки одной страницы. Конкретные цифры требуют серьезных замеров, поэтому я лично их приводить не буду. Все остальное - оптимальные sql-запросы, индексы, кеширование в соответствие с вашей логикой - ложится на плечи конечного разработчика приложений.

Автор оригинала: .des.
2 Vladson
Cмело не соглашусь.
Спасибо.
 

pachanga

Новичок
Автор оригинала: .des.
Отнюдь. Я код Limb смотрел очень много и поэтому ориентируюсь в его устройстве. Правда последний раз я заглядывал туда больше полугода назад.
Поверь, очень многое. В основном изменения коснулись модели и контроллеров.

лично мне не позволяет начать серьезно думать об использовании Limb.
Сейчас статус альфа версии скорее для перестраховки, глобальные изменения не вносились уже длительное время и хотелось бы верить, что пора "революций" в коде окончена. К тому же разбиение на пакеты позволяет теперь локализовать изменения и в случае BC или багов и быстро откатываться к последней работающей версии.

Вообще cms/cmf особенно в alfa не обязана быть быстрой, но точно должны быть известны пути решения проблем с производительностью в дальнейшем развитии. Если конечно в дальнейшем не планируется использовать Limb для интранет решений only.
Мы позиционируем Limb3 как полноценное решение для любых web задач, не только для интранета. Опять же, Limb3 - это набор пакетов, не обязательно использовать их все, например, можно использовать только необходимые, комбинируя их с решениями от других разработчиков(ezComponents, ZendFramework и проч).


Вопрос поверхностен, но абсолютно корректный.
То есть Вы, как разработчик, утверждаете, что я могу реализовать некий проект, допустим сервер объявлений или некоторый коммьюнити портал, и возникшие проблемы решить при помощи добавления многоуровневого кэширования?
Скажем, это решение, которое первым мне пришло в голову. В любом случае, для действительно больших и серьезных проектов всегда имеет смысл стараться максимально избежать отработки PHP интерпретатора...
 

zerkms

TDD infected
Команда форума
[off]
Тестовая инсталяция дает мне среднюю скорость генерации страницы "Доступ запрещен" в 1-1.5 секунды (что я делаю не так?)
у меня на рабочем athlon 2500xp подобная страница генерится за 0.25-0.3
ps: под мзз есть своя тема
[/off]

многие идеи Limb нашли свою реализацию в ...
как говорил самизнаетекто - брать лучшее из разных вещей не есть зло ;)
 

master_x

Pitavale XXI wieku
pachanga
Если есть интерес, то первое что стоить посмотреть - пример создания CRUD приложения
[offtop]
Придирки по поводу языка, который использовался при написании этого руководства.
Читать невозможно, не потому, что непонятно, а потму что пишите вы все таки на русском... так что:
туториал - краткое руководство
шарится - используется, разделяется (выбрать подходящее по тексту)
и т.д.
[/offtop]
 

itprog

Cruftsman
[offtop]
zerkms, если я не ошибаюсь, многие идеи Limb нашли свою реализацию в mzz. Тестовая инсталяция дает мне среднюю скорость генерации страницы "Доступ запрещен" в 1-1.5 секунды (что я делаю не так?). Как Вы думаете, могу ли я после этого советовать использовать подобную систему в качестве cms или cmf, пока она находится на данном этапе развития?
Конечно некоторые идеи из limb взяты (тот же jip). Но limb и mzz нельзя назвать идентичными, их даже сравнивать бессмысленно. Limb отличный framework, когда mzz более cms-подобна.

[offtop]Тестовая инсталяция дает мне среднюю скорость генерации страницы "Доступ запрещен" в 1-1.5 секунды (что я делаю не так?). Как Вы думаете, могу ли я после этого советовать использовать подобную систему в качестве cms или cmf, пока она находится на данном этапе развития?
На моем athlon 3000xp тоже порядка 0.25-0.3. Конечно это не мало. Немного убавит время кэширование, да и например тестовый Б. (на котором, судя по банеру, 3500+ сайтов)на том же атлоне генерится примерно 1 секунду.
[/offtop]
 

BeGe

Вождь Апачей, блин (c)
Тут было много сказанно о производительности приложений.

Вот только мне что-то не верится что TDD infected не провели ни одного стрес теста, при наличии некторых готовых проектов.

предложу всё таки выложить результаты тестирования =)
Есть программы которые достаточно легко позволяют провести такое тестирование - http://www.software-testing.ru/lib/brod/wapt.htm
http://opensta.org/

Недеюсь увидеть результат стресс тестов, какими бы они не были =).
 

pachanga

Новичок
Автор оригинала: BeGe
Тут было много сказанно о производительности приложений.

Вот только мне что-то не верится что TDD infected не провели ни одного стрес теста, при наличии некторых готовых проектов.
Видишь ли, в чем проблема, нет типичного приложения на Limb3 - что именно тестировать? Обычно приложение на Limb3 состоит из определенного количества фильтров, с помощью которых добавляются различные части логики приложения. В разных приложениях, может быть совершенно разное количество фильтров... Попробовать замерить еще один "hello world", как это делал Paul Jones? Много ли будет от этого смысла?

предложу всё таки выложить результаты тестирования =)
Есть программы которые достаточно легко позволяют провести такое тестирование - http://www.software-testing.ru/lib/brod/wapt.htm
http://opensta.org/

Недеюсь увидеть результат стресс тестов, какими бы они не были =).
Как на счет того, чтобы завести эту же тему на нашем форуме? (Спасибо за ссылки, мы обычно пользуемся http_load, ab и WAST для этих целей)
 

BeGe

Вождь Апачей, блин (c)
pachanga меня не очень интерсует проект Limb.
В этом форуме поднялся вопрос производительности, вот и мне стало интерестно поменятся ли моё мнение насчёт Limb или нет.


pachanga, если я Вас правильно понял, Вы используете Limb для приложений уровня "hello world" ?

P.S.
Ожидалось результатов.

Проект такой-то, работает на таком-то железе.
При этом 1 страница - аля солянки, последних 5 новостей, последня статья ещё какие-то блоки. следующий шаг лог пользователя, дальше страница с большой выборкой из базы данных тут мы "рисуем" Gridobject.

При таком пути пользователя - сайт может обслужить n клиентов , за m минут, со скоротью отдачи страницы за l секунд.

пока для меня Limb остаётся программированием ради программирования.
 

pachanga

Новичок
Автор оригинала: BeGe
pachanga меня не очень интерсует проект Limb.

...

Ожидалось результатов.
Не кажется ли тебе, что ты сам себе немного противоречишь? ;)

Проект такой-то, работает на таком-то железе.
При этом 1 страница - аля солянки, последних 5 новостей, последня статья ещё какие-то блоки. следующий шаг лог пользователя, дальше страница с большой выборкой из базы данных тут мы "рисуем" Gridobject.

При таком пути пользователя - сайт может обслужить n клиентов , за m минут, со скоротью отдачи страницы за l секунд.
Вот с чем бы тебе провести аналогию, чтобы убедить, что сделать подобные замеры довольно сложно...скажем, тебе дают конструктор и спрашивают, как быстро будет ехать модель, построенная на его основе?(причем способов собрать модель великое множество) .

Я бы очень не хотел захламлять этот тред техническими деталями, поэтому и предложил перенести дискуссию на тему производительности в наш форум, где мы и могли бы пообщаться на этот счет намного более продуктивно.
 
Сверху