ruby - есть кто знает?

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

А сколько запросов в секунду ( и на какой конфе) в среднем получается? Какой сервер юзаешь - mongrel или thin? Руби 1.9?
ruby 1.8.6 обычный, не EE
Mogrel за балансировочным прокси, в качестве оного lighttpd
Через ab(Apache Benchmark) не прогонял, потому что локальная сеть нагрузки не делает, да и все сыро еще. С page_cache скорость ответа как обычная html страница через lighttpd(что собвстенно и просходит) , но этот кеш бесполезный в большинстве случаях.

С фьюжн пассенжером я не работал, просто потому что lighttpd и монгрелы(8 штук хватает, на разных портах) мне больше нравится.

В качестве DB сейчас пробую IBM DB2 Express-C, сейчас я больше экспериментирую чем пишу, потому что лето и все-такое.
 
ruby 1.8.6 обычный, не EE
Mogrel за балансировочным прокси, в качестве оного lighttpd
Через ab(Apache Benchmark) не прогонял, потому что локальная сеть нагрузки не делает, да и все сыро еще. С page_cache скорость ответа как обычная html страница через lighttpd(что собвстенно и просходит) , но этот кеш бесполезный в большинстве случаях.
Ну да, интересна именно динамика. Но ее может оказаться обескураживающе мало - и 10 в секунду, и 3! Особенно если пока не тестил и узкие места не искал. Поэтому если не поздно - лучше переходи на 1.9 - там и сам руби частями в 3 раза быстрей, и разработчики на него счас все переводят, за 1.8 уже цепляться бессмысленно. В рубях устаревшие хвосты достаточно резко обрубают, так что лучше успевать за майнстримом.

С фьюжн пассенжером я не работал, просто потому что lighttpd и монгрелы(8 штук хватает, на разных портах) мне больше нравится.
фьюжен и правда неособо интересен, а вот thin обязательно пробани, он сделан полностью на руби!!! и при этом даже быстрее mongrela. Как я понял, лучшие идейки из монгрела и взяты, но переработка и добавление собственных сделали вот такой суперовский руби-сервер. Устанавливается еще проще.

В качестве DB сейчас пробую IBM DB2 Express-C, сейчас я больше экспериментирую чем пишу, потому что лето и все-такое.

А что не postgres? Классная по настоящему опенсорсная база данных, просто суперовкая! По надежности и держанию нагрузки - тому же МуSQL просто как до луны(c DB2 не сталкивался). Ценность опенсорса и мощной группы разработки в том что в базу внедряются не те фичи которые нравятся менеджерам-продавцам этих баз, а фичи которые правда нужны в работе и развитии этой базы, поэтому Postgres - столь высококлассная бесплатная!! база данных.
 
Мда, вообщем-то думал что thin тормоз, а оказалось наоборот:
Thin is generally accepted to be faster than Mongrel. "Hello World" Test Results indicate that Thin is even faster than Evented Mongrel. Thin also uses less memory.
из Для просмотра ссылки Войди или Зарегистрируйся

Для просмотра ссылки Войди или Зарегистрируйся
это наглядное сравнение, и оно не в пользу монгрела, а жаль :(

Ruby я собираю, кстати через раз собирается Zlib,OpenSSL даже при наличии нужных библиотек и заголовков.
Оказалось что не 1.8.6:
[furyz@localhost ~]$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-linux]


С Postgres'ом не работал, еще пытался сдружить рельсы с Oracle, но это не получилось. IBM DB2 замечательная база по возможностям, которые нам никогда не пригодятся. Ограничение Express только на 2Gb оперативы, что вообщем не существенно на средних нагрузках.
 
Мда, вообщем-то думал что thin тормоз, а оказалось наоборот: это наглядное сравнение, и оно не в пользу монгрела, а жаль :(
Да ладна тебе грустить, это же здорово что идеи монгрела кто-то нашел как применить еще лучше и выдавить производительности еще больше. Считай его сыном монгрела, мы же живем, значит все должно развиваться и продолжаться!

Ruby я собираю, кстати через раз собирается Zlib,OpenSSL даже при наличии нужных библиотек и заголовков.
Оказалось что не 1.8.6:
[furyz@localhost ~]$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-linux]
Ну тем более, переходи на 1.9 раз еще на корнями прирос и версию-то не точно помнишь:)(Версию начинаешь точно помнить когда однажды натыкаешься на несовместимость кода)
Просто в 1.9 достаточно много серьезных изменений, и чем больше кода напишешь не на нем, тем больше проблем создашь себе когда все же поймешь что пора перейти. К тому же прирост производительности - сооовсем не помешает, потому как перед запуском еще будешь голову ломать как бы убыстрить все...

С Postgres'ом не работал, еще пытался сдружить рельсы с Oracle, но это не получилось. IBM DB2 замечательная база по возможностям, которые нам никогда не пригодятся. Ограничение Express только на 2Gb оперативы, что вообщем не существенно на средних нагрузках.

Постгрес имеет отличную поддержку для ROR - созданы спец. gem-ы, так что если хочешь надежную и безгеморройную работу с базой - для рора это идеальный выбор. И кстати без ограничений, надеюсь твой будущий портал потребует не только 2гб памяти под базу ;)
И кстати, это же не последний твой портал? Так что лучше сразу использовать то что изначально лишает ограничений и геморроя с настройкой/сопровождением. Всякие ораклы и остальные просто трата времени на упражнения в экзотике..
 
Зачем нужны специфические гемы если я пользуюсь миграцией,а поддержка любой DB дело ruby\ActiveRecord. Темболее я не планирую этим особо зарабатывать на жизнь, это скорее фан и подработка.

Можеш привести пример непереносимого кода 1.8 -> 1.9 на рельсах, в том то и дело что "ломают" только ruby-lib(она же stdlib ruby), а такого кода мало -- он в основном в плагинах, и в самих рельсах. Если ты не пользуешся экзотическими плагинами (hpricot или что там очень корявое, но не менее нужное) , то все обновится без проблем должно.
 
Можеш привести пример непереносимого кода 1.8 -> 1.9 на рельсах, в том то и дело что "ломают" только ruby-lib(она же stdlib ruby), а такого кода мало -- он в основном в плагинах, и в самих рельсах. Если ты не пользуешся экзотическими плагинами (hpricot или что там очень корявое, но не менее нужное) , то все обновится без проблем должно.

На самом деле непереносимо( в смысле надо кусками переписывать) - достаточно много кода, так как они местами серьезно поменяли синтаксис Ruby - вплоть до синтаксиса 'if' и 'case/when'.

Так что уж и не говоря об экзотических плагинах - само заработать ничего не должно :nezn: Скорее обязано не заработать, поэтому проще сразу писать на новом синтаксисе чем потом переписывать и переучиваться.
 
Самое интересное стоит на хабре почитать...
*** скрытое содержание ***
Да уж... там можно учитаться и блин на дело времени не найти.

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

А по конкретному - ну ничего для себя не вынес, все ж поиск конкретных решений конкретной проблемы, а не чтение всего интересного по теме - рулит (ну по крайней мере если есть надобность когда-нибудь что-нибудь из проектов доделывать :)
 
Есть кто может помочь с Руби (пусть за плату)? Нужно с одного хостинга на другой ruby-приложение перенести. Я в нём вообще не понимаю ничего :)
 
а с чего стоит начать изучать? какую книгу лучше купить, есть знания пхп

люблю держать книжку в руках а не смотреть на монитор :)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху