• Почему sub быстрее, чем add?

    VenomBlood
    @VenomBlood
    sub reg, reg — специальный случай, обрабатываемый процессором также как и xor reg, reg, в этом случае специальный блок «ranamer» выполняет обнуление и удаляет инструкцию из pipeline еще до ее исполнения в engine.
    Ответ написан
    4 комментария
  • Использовать ли ActiveRecord в высоконагруженных проектах?

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

    Если возникают проблемы с производительностью:

    1) Во всех проектах используем:CProfileLogRoute с настройкой CDbConnection.enableProfiling=true
    Расскажет много полезного.

    2) Если видим lazy Loading — не забываем добавлять в with("") нужных релейшинов, используем together() принудительно где нужно.

    3) Если используем findAll() на большом количестве записей — используйте CDbCriteria.select и перечисляйте только необходимые колонки, это поможет значительно повысить производительность.

    Рекомендую детально изучить изнутри — как работает CActiveRecord, CActiveFinder
    Используйте расширения типа XDebug для детального профайлинга проекта.
    Основные потери производительности происходят внутри метода
    CActiveRecord.populateRecord — посмотрите — что происходит внутри.

    4) Все редкообновляемые данные очень легко кэшировать связкой:
    CTimestampBehavior + CDbCacheDependency('SELECT MAX(update_time) .... where...');
    Если таблица редко обновляется, то и этот запрос будет отрабатывать мгновенно. Mysql тоже сам кэширует результаты таких запросов.

    В результате — мест, где приходится отказываться от ActiveRecord остается очень мало.
    Скорость отдачи страниц держим на уровне не более 0.1 с.

    Если у Вас будут действительно высокие нагрузки, Вас врятли спасет один только отказ от ActiveRecord:
    Посмотрите:
    Yii: устройство ActiveRecord и Шардинг
    Шардинг MySQL на Yii Framework

    Также задумываем для одного проекта попробывать www.yiiframework.com/extension/yiimongodbsuite/ с auto-sharding
    Ответ написан
    Комментировать
  • Стоит ли учить пхп новичку?

    @mithraen
    Вы начали не с PHP а с JavaScript :)

    PHP в качестве первого языка при изучения программирования плох тем, что позволяет писать очень грязный код, и при этом весьма беден в плане возможностей как языка (а не библиотек).
    Человек, который имел опыт программирования на другом языке, на PHP часто пишет лучше.

    JavaScript как язык гораздо мощнее — в нем даже есть элементы функционального программирования. Для поднятия своих скиллов как программиста очень рекомендую с ними ознакомиться.

    Для web-разработчика сейчас знать PHP надо. Хотя бы потому, что код на нем наверняка придется в жизни не только писать, но и читать.

    Так что раз вам нужно делать web-сайт — изучайте PHP, и не напрягайтесь по этому поводу. Если же хотите в будущем выбиться в верхний ценовой сегмент по квалификации, даже если будете делать сайты на PHP, все равно ознакомьтесь с другими языками и предлагаемыми ими парадигмами.
    Ответ написан
    6 комментариев
  • Валидатор 'safe'?

    wartur
    @wartur
    www.yiiframework.com/doc/guide/1.1/ru/form.model

    Все очень просто. Эта такая штука, которая позволяет понять фреймворку, что данный атрибут модели, пришедший из атрибутов (cmodel::attributes) является разрешенным к присвоению к атрибутам модели без валидации. Эту штуку надо юзать осторожно.

    например $model->attributes = $_POST['Article'];
    Ответ написан
    5 комментариев
  • Какое Comet-решение выбрать?

    @lehha
    Dklab_Realplexor
    несмотря на свой возраст не теряет актуальности. Запущен на сервере уже 3й год подряд и работает без сбоев (7к каналов, онлайн ~ 200 сессий). Естественно через nginx.
    Ответ написан
    Комментировать
  • Задачка по html-верстке. Как ее решить?

    @relic
    еще можно использовать псевдокласс :nth-child:

    div:nth-child(3n) { margin-right: 0; /* убираем отступ у каждого 3го элемента */ }
    Ответ написан
    1 комментарий
  • Как победить CClientScript?

    miraage
    @miraage Автор вопроса
    Старый прогер
                        'ucc' => array(
                            'basePath' => 'application.assets',
                            'js' => array('js/ucc.js'),
                            'css' => array('css/css.css'),
                        ),
    


    Сорри, я тупой сегодня.
    Ответ написан
    Комментировать
  • Какое key-value хранилище лучше?

    denver
    @denver
    Нет лучшего NoSQL хранилища вообще, есть под задачи, у каждого плюсы и ограничения. Redis супербыстр когда оперативки больше чем данных, иначе он часто подгружает с диска и сводит на нет скорость (если это еще не переделали), хорош для очередей сообщений, списков (встроены сортировки), всякой мелкой инфы. memcache (не memcached) самый быстрый но не флашит на диск ничего (собсвенно оттого и). memcached простейший key-value с флашем (хорош для очередей сообщений и всяких счетчиков). У последних двух особенность multiget — взять много ключей за раз работает столько же сколько и один, так что хорош для хранения «превьюшек» данных по их id, когда сортированные списки хранятся где-то еще (в редис). MongoDB не просто key-value, в ней можно хранить целые документы (пост со всеми комментариями), некий компромисс между nosql и RDBMS. Hbase уже совсем замена RDBMS, один из самых быстрых когда речь идет о IO диска, соответственно эта NoSQL для постоянного хранения стопитцот миллиардов данных. Cassandra похоже конкурент Hbase, но аутсайдер, т.к. фейсбук/твиттер от нее отказываются ;) Про CouchDB и Riak я ничего особенного не слышал (может кто дополнит — мне интересно)
    Ответ написан
    12 комментариев
  • Как подключить Memcached?

    miraage
    @miraage
    Старый прогер
    У Memcache есть addServer :)
    Ответ написан
    2 комментария
  • Есть способ использования памяти видеокарты системой?

    Akson87
    @Akson87
    Нельзя по-человечески, да и смысла в этом нет, видеопамять имеет жутко большую латентность и жутко маленькую производительность при случайном доступе, толку особо не будет в общем случае.
    Ответ написан
    2 комментария
  • Есть способ использования памяти видеокарты системой?

    sdevalex
    @sdevalex
    Там другая архитектура, а OS пока не научились использовать видео-мощности.
    Ответ написан
    1 комментарий
  • В каких языках/фреймворках присутствует класс для HTML-формы (аналог Zend_Form)?

    avalak
    @avalak
    WTForms для Python.
    Ответ написан
    Комментировать
  • Стоит перестать ходить на пары и пойти на работу?

    izmalk
    @izmalk
    Определитесь что даст вам учеба и что — работа.
    Учеба может дать шанс засветиться перед крупными рекрутерами перед выпуском (олимпиады и именные стипендии для программистов это как раз то, на что обращают внимание хэадхантеры).
    Работа даст ГОРАЗДО больше опыта и знаний в практической сфере. Вы лучше будете понимать что изучать чтобы продвигаться вперед, что вам нравится делать и т.д.
    Так что решайте что для вас важнее — практический опыт, или академические успехи. С одной стороны пойдя на работу сразу на крутую должность не попасть, и ВОЗМОЖНО (но не обязательно) продолжение учебы по максимуму позволит взять сразу звезду с неба (программист в Гугл, Microsoft и т.п. по вкусу). Особенно при наличии аспирантуры, олимпиад, грантов и т.п.
    С другой стороны талантливый программист и без вышки наберется опыта и вырвется на высоты соответсвующие его амбициям. В этом случае важно уметь себя продавать подороже (опять же участие в соревнованиях например никто не отменял, но уже по индивидуальной программе, а не от ВУЗа).

    С точки зрения получения знаний в ВУЗе вы будете учиться в два раза медленнее чем могли бы сами, это точно для всего, кроме академических или научных высот (там все зависит от преподавательского состава).
    Ответ написан
    Комментировать
  • Сколько стоит ждать ответа при сообщении о наличии уязвимости на сайте?

    @ComodoHacker
    Если компания не ИТ-профиля, это будет непростой квест.

    Для начала ваше описание уязвимости должно дойти до человека, который способен его понять (и может быть среагировать). То есть вам нужно пробиться через первую линию поддержки, вторую линию, их начальство, и бог знает кого еще, вплоть до директора по продажам :) (крайний случай, если с ИТ процессами там все плохо). Поэтому сначала вам придется писать на языке, понятном этим людям. И описывать не уязвимость, а ее возможные последствия для бизнеса. Причем это дложны быть очень конкретные вещи, а не абстрактные понятия. Типа «можно будет выкачать весь каталог с ценами», «получить все email-ы сотрудников», «повесить порнобаннеры» и т.д. Результат первого уровня — контакты админа или разработчика и обязательно руководства.
    Дальше уже пишите админу об уязвимости, а руководству — о ситуации в целом, «уведомлены такие-то сотрудники, срок до публикации столько-то дней, проконтролируйте».

    Да, быть этичным непросто.
    Ответ написан
    Комментировать
  • где можно заказать ноутбук своей конфигурации?

    @rPman
    любой конструктор будет в конце концов представлять из себя выбор из 3-4 моделей… ваши пожелания еще легкие, как раз в ноутбуках можно сменить винт и оперативку…

    а вот напихать себе в ноутбук нужную комбинацию аккумулятора, картридера, биометрической системы и нормальную шуструю вебкамеру — из разряда фантастики и топать в раздел DIY. Я уже не говорю про выбор экрана (матовый! матовый! + сенсор) и экзотики вида gps/акселометр/компас/…
    Ответ написан
    Комментировать
  • Какие есть методы тренировки памяти?

    Evengard
    @Evengard
    Совет знакомого врача:
    Судя по вашим словам («диагноз для галочки», «врач утверждает, что стану идиотом»), вас осматривал не очень профессиональный врач. Первым делом срочно обратитесь к квалифицированным специалистам в данной области, получите консультацию известных специалистов. Вам ещё неизвестно, что именно за патология, более того, непонятно, МРТ сделали впервые в жизни или была какая-то динамика? Какие-нибудь ещё обследования проводили? Были ли в семье случаи ранней смерти от неврологических заболеваний?
    Болезнь Паркинсона в 37 лет — это весьма маловероятно. Не исключён даже вариант, при котором симптомы обусловлены снижением кровообращения и хронической ишемией мозга (по сути транзиторные ишемические атаки, микроинсульты), в таком случае вам может помочь восстановление кровообращения по сосудам (чаще это сонные артерии). Так что пока у вас нет ясного диагноза, не впадайте в панику, а сосредоточьте усилия на том, чтобы его всё-таки получить.
    Что до советов по сохранению функций левого полушария и тренировки памяти — учите стихи, имена сотрудников, музыкальные произведения, даты исторических событий. Старайтесь говорить с подчёркнутой артикуляцией, максимально чётко. Решайте задачи по точным наукам.
    Ответ написан
    2 комментария
  • Бросать университет в пользу самообразования и работы?

    zzeneg
    @zzeneg
    В примерно такой же ситуации выбрал переход на заочное. Диплом будет, учеба работе не мешает.
    Ответ написан
    2 комментария