• Где закупить много дискового пространства?

    Jump
    @Jump
    Системный администратор со стажем.
    Если потребители данных находятся по всей планете - Amazon S3
    Если потребители данных сосредоточены в одном регионе - аренда серверов в ДЦ этого региона.
    Если потребители данных вы сами - размещение на своих серверах или аренда серверов в ближайшем ДЦ.

    Для точного ответа мало данных.
    Неизвестно насколько критична для вас скорость загрузки и выгрузки данных в хранилище и какая скорость нужна.
    Неизвестно где находятся потребители данных.
    Неизвестно холодные данные или горячие.
    Неизвестно какую нагрузку по чтению и записи должно выдерживать хранилище.
    Неизвестно какая цена является для вас приемлемой за объем и за трафик.
    Ответ написан
    Комментировать
  • Какой плагин кеширования в Вордпрессе лучше других?

    lamer350
    @lamer350
    กำลังสูงสุด
    nginx + php 7.3 + OPcache + MariaDB
    и никакие плагины не нужны
    Ответ написан
  • Как описать приготовление яичницы в терминах MVC?

    @Urukhayy
    С течением времени было множество трактовок.
    Одним из примеров MVC является - игровая приставка.

    Model - сама приставка
    View - телевизор, который подключается к приставке
    Controller - контроллер для игровой приставки (манипулятор), так и называется. Неофициально - "джойстик".

    Ключевым моментом является Model (сама приставка), в ней происходят все сложные процессы и вычисления, хранение данных и просчёты.
    View, что в соответствии телевизор, - это лишь средство представления информации с вида, удобного для приставки (нули и единицы), в вид, удобный для человека.
    Controller, что в соответствии игровой контроллер, - это способ преобразования команд с вида, удобного для человека (вперёд, прыжок), в вид, удобный для приставки.

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

    Картинка из вики:

    MVC-Process.png
    Ответ написан
    Комментировать
  • В php есть функция преобразования 1000 в k?

    vgorodilov
    @vgorodilov
    function format($size){
      $filesizename = array( " Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB" );
      return $size ?
      $format = round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $filesizename[$i] : '0 ' . $filesizename[0];
         return format;
        }
    Ответ написан
    1 комментарий
  • Что это за черная магия?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    Давным давно (года 2-3 назад) заварилась тема рисования с помощью CSS. Я тогда даже небольшую заметку на хабр писал по этому поводу. В те времена мы делали простые картинки вроде таких:

    Это было интересно и познавательно. С одной стороны это челлендж, с другой - способ самообразования. На тот момент картинки были не очень сложными для понимания и тема людям понравилась. Время шло, народ постепенно изучал основы CSS (правда как всегда не у нас, у нас это дело в основном критиковали со словами "фигней маятесь, зачем это нужно" или "ну я же фронтенд-сеньер-реакт-помидор-разработчик, зачем мне нужно знать CSS"), но так или иначе картинки становились все более интересными, появлялись новые квесты и на данный момент можно сказать, что это своеобразный вид искусства с практически полезной составляющей. Понятное дело, что в продакшен такие картинки делать долго - проще взять SVG, но для обучения они хорошо подходят. Магии там нет.
    Ответ написан
    1 комментарий
  • Зачем ставить фигурные скобки после вызова метода?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Фигурные скобки создают новый блок со своей областью видимости (к последнему выражению это отношения не имеет):
    int A = 0;
    
    {
        int A = 1;
        int B = 1;
        std::cout << A << "\n"; // 1
        std::cout << B << "\n"; // 1
    }
      
    std::cout << A << "\n"; // 0
    //std::cout << B << "\n"; // <-- error: B was not declared in this scope
    Ответ написан
    16 комментариев
  • Video Background с видеo в 1,5 минуты и весом в 250мб. Как реализовать правильно и без глюков?

    Astrohas
    @Astrohas
    Python/Django Developer
    250 мб / 90 секунд = 2.8 мегабайт в секунд = 23 мбит.
    Если вы все еще не поняли проясню - Никак. Не у всех такие скорости.

    Решения - Юзать VP9 с Fallback на mp4 (или наоборот).
    продолжение решения - несколько разрешений и качеств. Как-то определяете скорость клиента и на основе этой скорости показываете ему видео. Для низких скоростей низкое качество, для высоких высокое.
    Ответ написан
    6 комментариев
  • А чем вы обычно меряете в Laravel скорость работы скрипта?

    Рекомендую telescope там можно будет проанализировать подробно время, запросы к бд и многое другое, раньше пользовался laravel-debugbar но в telescope можно спокойно и подробно все посмотреть
    Ответ написан
    Комментировать
  • Существуют ли агенты фрилансеров?

    Jump
    @Jump
    Системный администратор со стажем.
    я имею опыт разработки, но не умею или не хочу продавать и заниматься организационными делами, как найти человека, который возьмёт это на себя.
    Таких предложений полно, называется это - работа.
    П
    риходите, проходите собеседование и работаете.
    Все организационные дела на себя берет работодатель, ищет заказы на постоянной основе, платит зарплату.

    Это довольно новое и модное направление - рекомендую.
    Ответ написан
    8 комментариев
  • Существуют ли агенты фрилансеров?

    zoozag
    @zoozag
    Opencart
    Чаще происходит так, что не вы нанимаете агента для поиска заказов, а есть посредник, который нанимает вас в качестве исполнителя.
    Таких много.
    Если найдете 3-5 адекватных посредников они легко загрузят вас работой настолько, что не придется самому искать заказы.
    Ответ написан
    Комментировать
  • Зачем нужен PHPDoc в php-7?

    @StepanRodionov
    Web-developer
    Существуют такие сценарии при которых функция возвращает значения, которые нельзя описать хинтом. Грубо говоря вот так
    /**
    *  @return Product|false
    */
    public function getProduct(int $id)
    {
        // ...
    }


    Как правило это неправильно (Битрикс особенно любит так делать), зато док-блок точно описывает что может вернуть метод. Здесь, кстати, еще один тонкий момент: можно написать не bool, а именно false, потому что хоть тип и bool, значения true там не будет никогда. Короче нужны эти штуки)
    Ответ написан
    1 комментарий
  • Как подключить svg sprite на wordpress?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Как подключить svg sprite на wordpress?

    так же как и не на wordpress, никакой разницы

    В верстке все отлично.

    ну и славненько

    Не могу перенести на вордпресс

    в чем сложность?

    Подскажите пожалуйста.

    что именно?
    Ответ написан
    8 комментариев
  • Объясните плиз, что тут eval(base64_decode())?

    @d-stream
    Готовые решения - не подаю, но...
    Если вкратце - то "удаление всего". На мой взгляд стоит побить разработчика, желательно ногами.
    Ответ написан
    2 комментария
  • Как увеличить скорость загрузки файла на сервер?

    martin74ua
    @martin74ua Куратор тега Сетевое администрирование
    Linux administrator
    обеспечить клиента производительным компом, чтобы гарантировать высокую скорость чтения и передачи в сеь, обеспечить клиенту широкий канал до вашего сервера, увеличить скорость записи данных на диск на вашем сервере
    Ответ написан
    1 комментарий
  • Преобразование строки в массив?

    riot26
    @riot26
    <:З )~~
    В комментариях к документации к print_r() есть функция print_r_reverse(), которая распарсит такой вывод. Но работать с таким дебильным сервисом я бы не стал.
    Ответ написан
    1 комментарий
  • Есть ли смысл в моем выборе. PHP или JS?

    kshshe
    @kshshe
    Frontend developer
    Если я изучу в достаточной мере JS ,то смогу потом изучить Node.Js и работать с серверной часть

    Знание JS однозначно поможет начать работать с JS на сервере. Язык тот же, только другие API, потому что другая среда. Я бы порекомендовал не распылять силы на разные языки и освоить сначала что-то одно. Тем более, что работа отдельно по фронтенду, вообще без бэкенда (вам надо будет понимать, как они взаимодействуют, но совсем не обязательно уметь это реализовывать самим), достаточно распространена.

    Отдельно отмечу, что бэкенд это не только PHP.
    Ответ написан
    1 комментарий
  • Какой лучший плагин доп.полей Wordpress?

    deniscopro
    @deniscopro Куратор тега WordPress
    WordPress-разработчик, denisco.pro
    Думаю, самый популярный плагин для произвольных полей — Advanced Custom Fields.
    Ответ написан
    Комментировать
  • Что за ошибка, плохо понимаю в php?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Лишний пробел после dbname=
    Ответ написан
    3 комментария
  • Как деплоить небольшие проекты?

    @Stqs
    senior software developer
    вопросы у вас философские, на каждый можно отвести часы обсуждения
    Полноценный CI/CD поднимать не вижу смысла ввиду размеров

    вы ж все равно собираетесь какие-то скрипты мутить и чото выдумывать,
    какая разница это будут крон скрипты на сервере или джоба в дженкинсе? по-скорости написания - одно и тоже будет. так что по-моему размер тут не имеет значение
    единственное что имеет значение - насколько явно у вас описан процесс(алгоритм) билда/разворачивания приложений
    с этой точки зрения мое видение примерно такое:

    1) git не есть инструмент для развертывания по, git лишь для версионирования кода
    и по-идее результатом вашей работы должен быть не код в гитхабе, а какой-то вменяемый артефакт, готовый к деплою (docker-image, pip пакет, npm пакет, deb пакет, jar, war, zip в крайнем случае, и тд и тп). Если производить артефакты то вопрос с тегами отпадет сам собой - у вас будет артефакт какой-то версии и все
    сервер не должен знать ни про какие гиты и ни про какие-то теги в нем
    Здесь я бы рекомендовал паковать все в докер-имеджи хотя бы только потому, что сервер в итоге не будет знать ничего о зависимостях приложения, нужных библиотеках, ниочем вообще, вам нужно установить только докер
    Огромное преимущество использование докера - в Dockerfile вы вынуждены волей/неволей описать точно и явно все шаги требуемые для установки приложения. И что самое замечательное - это все будет храниться в том же репозитории, под контролем гит - шикарно.
    Артефакты желательно хранить в каком-то артефактории,
    но если реально все просто - то можно хранить несколько последних версий прямо на сервере в какой-нибудь папочке

    2) как только вы получили артефакт - его можно деплоить
    неплохо было б знать особенности вашего проекта, но грубо говоря допустим что достаточно его зааплоадить на сервер, положить в нужное место
    опять же с этим дженкинс справится на ура и займет у вас это все дело 10 минут . Если вы опишете логику в Jenkinsfile вы выиграете еще раз потому что процесс развертывания(алгоритм) будет описан опять же ЯВНО. И будет тоже под контролем гита. (Jenkins должен знать только в каком репозитарии и в каком месте ему искать Jenkinsfile)
    Если же вы будете крутить какой-то спрятанный cron скрипт на сервере - о нем никому ничего не будет известно. Поверьте уже через короткое время все это дело начнет усложнятся, что-то забудется, что-то измениться и это все вместе больно ударит вас по яйцам.

    В чем еще преимущество такого подхода: если вам нужно сделать roll-back на предыдущую версию вам не нужно собирать проект заново выкачивая все с гита, ведь у вас есть предыдущие артефакты, ролбек в таком случае вообще не проблема - просто указываем предыдущую версию артефакта и деплоим еще раз и все

    3) Env Variables
    когда приложение стартует - считывает все что ему нужно из переменных окружения
    деплой джоба может каждый раз эти переменные устанавливать перед тем как деплоить - это было бы тоже круто потому что вы сделали бы это знание так же явным

    Итого имеем
    - логика сборки проекта описана в Dockerfile и находится под гитом
    - логика деплоя находится в Jenkinsfile и находится под гитом, и что самое главное является кодом (Jenkinsfile пишем на груви, для простых вещей вам понадобиться 30 минут изучения и все)
    - на сервере мы ничего не устанавливали совершенно кроме самого докера
    - мы храним несколько версий нашего приложения на всякий случай и можем быстро откатиться не прибегая к гиту вообще
    - сервер не знает ничего о гитах
    - на сервере нет НИКАКОЙ дополнительной логики по разворачиванию вашего приложения
    - имея все это очень легко добавлять другие сервера для деплоя - что нам нужно - грубо говоря указать другой айпи и набор env variables к нему ( если они конечно отличаются)
    giphy.gif
    Ответ написан
    5 комментариев
  • Нагружается ли сайт при большом количестве плагинов?

    yudinikita
    @yudinikita
    Инженер-программист из России
    Сам факт наличия плагинов никак не влияет на загруженность сайта. Всё зависит от того, что эти плагины делают и как написан код. То есть, если в 50 плагинах 10 строчек кода и они особо ничего не делают, а в 1 плагине 1000 строчек кода, и он совершает запросы в БД, включает фильтры, обновляет данные и т.д. то этот один плагин нагрузит сайт больше, чем все 50 плагинов вместе взятых.

    Подробнее
    Ответ написан
    Комментировать