Задать вопрос
  • Почему нет сильной Ecommerce платформы под node.js?

    @xfg
    Потому что на node.js как не пиши, но любое более менее сложное приложение превращается в процедурную лапшу. Абстракций и полиморфизма типов нет, приходится зависеть от конкретных реализаций. В метеоре на котором вы написали свое приложение нет di контейнера, всё валится в глобальную область видимости, используется монго, не поддерживаются транзакции между документами/коллекциями, сильная связанность, тяжело покрыть тестами.

    Впечатление от этого всего, что вернулся в начало 2000-ых. Нужно ждать, пока спецификацию ecmascript допилят до вменяемого состояния. Но я думаю, что к тому времени в том же php уже будет асинхронность из коробки, тем более у разработчиков это в планах.
    Ответ написан
    9 комментариев
  • Для чего фигурные скобки после объявления переменной в C++?

    @SMA2
    Инициализация пустым значением.
    Это универсальное обозначение для различных типов переменных.
    В данном случае речь идет о целом числе, потому эквивалентно = 0
    Но фигурные скобки более общий метод, подходящий для переменных различных типов.

    То, что пример работает без инициализации - просто везение.
    Использование неинициализированной переменной - частая ошибка.
    Ответ написан
    1 комментарий
  • Почему нет сильной Ecommerce платформы под node.js?

    @SMA2
    На днях перевели высоконагруженный(550,000 товаров и услуг)


    Нагрузка - это не количество товара.
    Для современных баз данных даже на слабом железе это не нагрузка, а смешно.

    Нагрузка - это количество посетителей.
    Даже на 100 товарах если большое количество посетителей нагрузка может быть в разы больше, чем у вас.

    На Ruby, Node, Go, Java, Python как правило делают решения под себя. Готовые - редкость.
    Готовые решения - существуют как правило на PHP.

    Так устроен этот мир.

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

    Или просто смотреть на факту - если вы сделаете полностью готовое решение не на PHP, то с большой вероятностью оно не будет востребовано большим количеством людей, ваши потребители будут только нишевые.

    Отсюда и оборотная сторона - наверняка на Node и пр. есть готовые решения интересующего вас типа. Их просто не может не быть. Просто вы их не нашли. Это не настолько массовый продукт, чтобы на каждом углу об них говорили, как, к примеру, об OpenCart.
    Ответ написан
    Комментировать
  • Как объединить скорость двух модемов?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Как объединить скорость двух модемов?
    Без дополнительного оборудования никак.
    В принципе можно и софтом, но для windows выбор не богат.
    Проще купить микротик и настроить round-robin. Серфинг по интернету будет глючить, авторизация будет отваливаться, но торрент будет работать с обоими провайдерами.

    Пару раз случайно получалось, подключался к WiFi затем вставлял кабель и скорость в 2 раза выше.
    Вам показалось. Случайно такого не бывает.
    Ответ написан
    3 комментария
  • Почему fwrite не переносит переменные?

    Melkij
    @Melkij
    DBA Team для вашего PostgreSQL?
    fwrite бинарно-безопасен и записывает ровно то, что ему сказали писать.
    Следовательно, вы именно так и записываете.

    Почему так себя ведёт конкретный ваш скрипт, описано в синтаксисе объявления строк: www.php.net/manual/ru/language.types.string.php

    И, разумеется, включите error_reporting в E_ALL в php.ini, а так же display_errors = On и display_startup_errors = On. Сейчас вы не видите крайне полезные сообщения самого языка.
    Ответ написан
    1 комментарий
  • Цикл с таймаутом ровно в 1 секунду?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Ваш вопрос можно приводить в качестве наглядного пособия на тему "Как именно вылазит боком кривая архитектура системы" :) Основная проблема в том, что интеграция компонент через storage есть зло, рано или поздно (чаще - рано) заставляющее разработчика выполнять стойку на ушах. Так что, если есть такая возможность, постарайтесь устранить зло в корне, т.е. найти способ узнавать об изменениях, ну, или хотя бы о самом факте, до того, а не после. Тогда не придется ничего опрашивать в цикле, а только реагировать на изменения. А это уже - половина проблемы!

    Если возможности нет, а делать все равно надо, сначала смитритесь с тем, что Вы никогда на PHP не добьетесь ровненько 86400 вызовов в сутки каждую секунду, если только не поставите ядро реального времени / не напишете соответствующий код на С и т.д. и т.п. Особенно, если storage крутится на том же процессоре в той же ОС, и количесво данных в нем будет со временем увеличиваться. Но это почти наверняка и не нужно, а нужно проанализировать задачу и понять, что на самом деле критично и какие отклонения от идеала возможны без ущерба для функциональности.

    "Примерно 0.03с" само по себе еще не о чем не говорит. Это всегда или в случае, если изменений нет, или если они небольшого объема? А если 90% данных обновились? Это - раз. Два: если изменения обнаружены, сколько может занять их обработка (в худшем случае)?.. И, наконец, три: если уже наступила "следующая секунда", а мы все еще не закончили обработку прошлых изменений, возникает целый ряд вопросов. Имеет ли в этом случае вообще смысл проверять новые изменения (сможем ли мы их осмысленно обработать, если найдем)? Если да, понадобится как минимум 2 потока. Если нет, насколько критично пропустить эту секунду? А сколько еще можно пропустить без ущерба для функционала? Предположим, это не критично, и мы уже пропустили секунду (или несколько), что нам важнее: чтоб следующая проверка выполнилась как можно ближе к границе "следующей секунды", или как можно быстрее? И т.д. и т.п.

    Не зная ответов на эти и подобные вопросы, невозможно предложить "правильное" решение. Но в качестве сферического коня в вакууме можно посоветовать бесконечный цикл, в котором выполняется проверка, реакция на найденные изменения, после чего вычисляется время до следующей проверки, на которое выполняется sleep().
    Ответ написан
    Комментировать
  • Можно ли установить 2 фильтра в одну переменную?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Как и везде:
    $options = [
        'admin_name' => FILTER_SANITIZE_FULL_SPECIAL_CHARS | FILTER_VALIDATE_BOOLEAN,
        'admin_pass' => FILTER_SANITIZE_STRING
    ];
    $name = filter_input_array(INPUT_POST, $options);
    Ответ написан
    2 комментария
  • Нужен ли сейчас Си?

    Nipheris
    @Nipheris Куратор тега C++
    Си как язык и экосистема, безусловно, нужны много где. Вопрос в том, нужны ли ВЫ этой экосистеме. Любой специались ценен не только знанием языка, но еще и знанием экосистемы и, самое главное, умением решать задачи, где вышеуказанный язык даёт наибольшую эффектиновсть с точки зрения бизнеса.
    Мало кому сегодня нужен человек, знающий PHP, но не знающий ничего о веб-разработке. С Си (да и с C++) то же самое. Чтобы вам давали те задачи, для решения которых имеет смысл использовать именно Си, вам нужно расти как специалист и в других областях. Например, хорошо разбираться в структурах данных. В управлении памятью. В машинной арифметике.
    Сравните например, человека, который просто знает, что в языке Си есть тип float, и человека, которому известно, что в Сишный float не запишешь значение 0.13, не потеряв в точности. А также человека, который понимает, почему точность теряется. И еще человека, который знает, что можно предпринять, если все-таки нужно как-то оперировать с десятичными дробями без потери точности.

    Этот ответ должен вас мотивировать на рост как IT-специалиста в целом, уделяющего дополнительное внимание принципам работы вычислительной техники и различным низкоуровневым вещам.
    Ответ написан
    2 комментария
  • Как ограничить доступ к локальной сети, но при этом сохранить доступ к интернету?

    ifaustrue
    @ifaustrue
    Пишу интересное в теллеграмм канале @cooladmin
    Ограничить гипотетическим файрволом в строенным в вашу гипотетическую операционную систему через гипотетические команды вашего командного процессора ввести правила блокирующие трафик на неизвестный нам диапазон вашей локальной сети.
    Ответ написан
    Комментировать
  • Я хочу хорошую библиотеку на PHP для MySQL. Я зажрался, или такое есть и активно используется?

    trevoga_su
    @trevoga_su
    Я хочу хорошую библиотеку на PHP для MySQL
    Нет ни ActiveRecord

    Вы определитесь, Вам автомобиль нужен или ящик с запчастями, из которых можно собрать автомобиль.
    Библиотека для работы с СУБД должна предоставлять ТОЛЬКО возможность работать с СУБД, с SQL и не более.
    Active-Record - это уже должен быть слой выше. Построитель запросов - отдельная сущность.

    Самая распространенная ошибка изобретателей библиотек в том, что они пишут все в кучу и в конце-концов выходит черте что.

    Моя обертка - www.phpinfo.su/articles/additionally/klass_dlja_be...
    Ответ написан
    3 комментария
  • Как обрезать теги в строке json?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    я бы рекомендовал делать это не в фильтрах (хотя и там можно конечно), а в сервисе, где вы получаете данные (или опять же фильтр там использовать).

    Убрать теги же лучше всего не регуляркой, как предлагает rakro, а используя DOM:

    function stripTags(html)
    {
        var tmp = document.createElement("DIV");
        tmp.innerHTML = html;
        
        return tmp.textContent || tmp.innerText;
    }
    Ответ написан
    Комментировать
  • Как проверить подключен ли jQuery на странице?

    if(!window.jQuery){
    document.write('<script type="text/javascript" src="/js/lib/jquery.js"></script>')
    }
    Ответ написан
    Комментировать
  • Можно ли как-то скрывать код при помощи комментариев?

    riky
    @riky
    Laravel
    в шторме можно https://www.jetbrains.com/phpstorm/help/folding-cu...

    пример

    #region Description
    $users = [];
    // ... 
    #endregion


    и кстати для переключения между ними есть горячие клавиши
    https://www.jetbrains.com/phpstorm/help/navigating...
    Ответ написан
    Комментировать
  • Как проверить открытие письма отправленного через mail()?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Вставить ссылку на картинку, хотя бы даже на пиксель с уникальным токеном, соответствующем данному письму, и отслеживать обращение к нему.
    Ответ написан
  • Почему не работает регулярка?

    @Olgeir
    не смущает что в [a-z0-9_-] нет русских букв?
    Ответ написан
    Комментировать
  • Как становятся программистами?

    ManWithBear
    @ManWithBear
    Swift Adept, Prague
    Не знаю. Меня укусил какой-то бородатый дядька, а дальше всё само пошло.
    Ответ написан
    2 комментария
  • Как использовать микроразметку для google и yandex?

    llgruff
    @llgruff
    Scala
    Recipe schema.org
    Смотри поля, отсутствующие в стандарте schema.org, но рекомендуемые Яндексом
    resultPhoto — (URL) URL изображения результата приготовления. Рекомендуем указать данное поле для формирования улучшенного сниппета.

    Откуда больше трафика тому и угождай
    Ответ написан
    Комментировать