Интернет-эквайринг криптовалют — как это работает и кому нужно?

Платить биткоином за интернет-покупки в России пока невозможно. Фактически, платить криптовалютой пока нельзя вообще, просто потому что криптоактивы не являются платежным средством. Но системы интернет-эквайринга криптовалют создаются тестируются и даже, возможно, будут внедрены. Как это работает, насколько это законно и зачем это нужно — в нашем материале. (далее…)

Laravel Nova и Laravel Backpack: сравнение и обзор возможностей

Предлагаю ознакомиться с моим вариантом перевода статьи Laravel Nova vs Laravel Backpack: a review of the features. Если вы видите какие-либо ошибки, не стесняйтесь комментировать, я исправлю это. Может ли Laravel Nova стать преемником Laravel Backpack? Являются ли эти два продукта взаимодополняющими? Давайте сравним их. Релиз Laravel Nova состоялся в конце августа 2018 года, и принят Laravel-сообществом с большим интузиазмом, даже несмотря на то,  что этот продукт платный. Я сразу же купил его, чтобы посмотреть и изучить его. Сможет ли Nova заменить мне Laravel Backpack? Я тестировал также другие продукты в категории «admin panel», такие как Laravel Voyager или Laravel Admin Architect, но мой выбор всегда останавливался на Backpack. В этот раз я был уверен, что Nova будет хорошим конкурентом. (далее…)

Best practices по контейнерам от Google

один контейнер — один процесс и его сабпроцессы нужно уметь обрабатывать сигналы правильно обязательно использовать докер кэш чистить контейнер от всего ненужного по-максимуму делать контейнер как можно меньше правильно тегировать и версионирвать контейнеры аккуратно выбирать родительский паблик image

Как получить EntityManager через сервис-контейнер в Symfony 3.4

В Симфони (напоминаю, что это худший PHP фреймворк современности) нельзя просто так взять и вызвать:

$EntityManager = $this->getContainer()->get(EntityManager::class)
Потому что в ответ можно получить эксепшен Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException с таким текстом:
You have requested a non-existent service "Doctrine\ORM\EntityManager".
И что же делать честным программистам? (далее…)

Различия библиотек predis и phpredis для PHP

Для работы с Redis в PHP существует множество библиотек. Рассмотрим самые известные из них: phpredis/phpredis и predis/predis, также известную как nrk/predis. Phpredis это полноценное расширение (extension) для PHP написанное на языке C. На данный момент эта библиотека набрала на гитхабе 6 425 звёзд и 1 667 форков. Последнее обновление 25 апреля 2018. Так как это нативное расширение, оно должно работать быстрее и потреблять меньше памяти, что критично для highload-проектов. (далее…)

Highload для самых маленьких

Это скорее не статья, а так заметка, на которую следует ссылаться, если кто-то не думает о том что в проекте может быть записей больше, нежели в тестовой базе данных, а скорость интернета меньше нежели доступ по локальной сети в 100мбит. Исходя из моего опыта разработки (да и не только моего), зачастую, «бутылочным горлышком» вашего приложения является база данных, таким образом перво-наперво включаем slow query log (← это ссылка на гугло-поиск) и смотрим какой запрос у нас самый медленный, и думаем что с ним делать, если не можем вкурить проблему — зовём старших, пусть тоже повтыкают в EXPLAIN(← ссылка на документацию → на хабр) вашего чудо-запроса. (далее…)

Установка Selenium chromedriver

http://chromedriver.storage.googleapis.com/2.31/chromedriver_linux32.zip http://chromedriver.storage.googleapis.com/2.29/chromedriver_linux32.zip sudo apt-get install unzip wget -N http://chromedriver.storage.googleapis.com/2.10/chromedriver_linux64.zip -P ~/Downloads unzip ~/Downloads/chromedriver_linux64.zip -d ~/Downloads chmod +x ~/Downloads/chromedriver sudo mv -f ~/Downloads/chromedriver /usr/local/share/chromedriver Change the directory to /usr/bin/chromedriver sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver Now run the script and add the following in the environment file. (далее…)

Dive into Centrifugo

В предыдущей статье о Центрифуге я рассказывал, что сервер был переписан с Python на Go (код Centrifugo на github, описание на opensource.mail.ru). C тех пор прошло несколько месяцев, за это время Центрифуга успела получить версию 1.0.0 и даже уйти немного дальше (последняя версия на момент этого поста — 1.4.2). В этой статье нас ждет быстрый старт работы с Центрифугой, примеры реального использования, размышления о месте и предназначении Центрифуги в реалиях 2016 года, описание некоторых архитектурных особенностей/возможностей реал-тайм-сервера и примеры кода на Go, отвечающие за реализацию главных фич. Welcome aboard! (далее…)

Основы Android-приложения

Android - основанная на linux платформа для мобильных устройств использующая изменённую виртуальную машину Java построенную для учёта компактности файлов и энергоэффективности Dalvik. Из-за этого используется не Mobile Edition и тем более не Java SE, а свои библиотеки. Приложения соответсвенно пишутся на Java, либо же через обходные пути  — TitaniumAppInventorAdobe AIR. Интересно что из библиотек есть SQLite и OpenGL - не прийдётся изобретать велосипеды. Кроме того в системе есть менеджеры для обмена данными между приложениями, сенсорами и тп. (далее…)


Любишь мемасики?

Подпишись на мой телеграм-канал!

Открыть
Закрыть