Сравнение скорости работы nodejs, php, python, lua, luajit

А захотелось мне протестировать, на сколько отличается скорость работы этих языков программирования. В их чистом виде, по самой простейшей задаче. Для этого создал новую, чистую виртуалку, и установил lua 5.3.3, luajit 2.0.4, nodejs 8.6, python 3.5 и php7.0.

[Continue reading]

Задачи по nodejs для начинающих

Это самые простейшие задачи, для тех, кто только начинает изучать javascript, а именно nodejs. Для их решения Вам потребуется знать: как работать с переменными, if else условия, циклы for, получение аргументов командной строки: process.argv, преобразование строки в число: parseInt и вывод строки в консоль: console.log.

[Continue reading]

Тормоза в sequelize

Конечно, sequelize очень удобен, но за всё приходится платить. Сейчас, пару критичных к скорости кусков кода, переписываю на нативный mysql драйвер. Потому, что запрос:

Выполняется в sequelize за 5.519 секунды, а через mysql драйвер за 1.525. Если же этот запрос выполнить напрямую, через консольку, то на ответ тратится всего 0.83c. Так что ещё и…

[Continue reading]

Правильные белые списки для google/yandex ботов

Типичное решение для этой задачи — посмотреть логи и взять от туда ip поисковых роботов, либо ещё хуже- найти список адресов в интернетах. Но это ошибочный путь, потому что адреса серверов меняются, и нам придётся постоянно следить за актуальностью списка.

[Continue reading]

Запуск нескольких экземпляров приложения на pm2 (fork mode)

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

[Continue reading]

Express API сервер Часть 3, process manager

Сейчас у нас есть практически готовый проект. Мы принимаем запросы, отправляем ответы, есть немного тестов и вроде всё ок. Но в продакшен нам ещё рано. Давайте создадим гипотетическую ситуацию, например, у нас есть в коде ошибка, приводящая к падению проекта, о которой мы типа не знаем.

[Continue reading]

Создаём API сервер на expressjs + websockets Часть 1

Привет, дорогие мои котяточки. Сегодня мы быстренько поднимем API сервер на expressjs и веб-сокетах. Как обычно нет времени объяснять зачем мне это нужно, just do it! Создаём папку с проектом («api-express» в моём случае), заходим в неё и инициализируем npm пакет:

[Continue reading]