6 простых способов ускорить экспресс

Вступление Express - безусловно, самый популярный веб-фреймворк для Node.js благодаря простому API, доступным плагинам и огромному сообществу. Благодаря сообществу нет недостатка в документации и примерах использования основного Express API, и это здорово, но не всегда сразу понятно, как улучшить производительность вашего веб-приложения по мере его роста. Здесь я покажу вам некоторые из самых простых и эффективных способов повысить производительность ваших приложений Express. gzip сжатие Сжатие gzip не является чем-то новым для веб-серверов, но о нем легко забыть, особенно если вы привыкли использовать фреймворки, которые включают его по умолчанию. [Далее]

Bookshelf.js: ORM для Node.js

Одним из наиболее распространенных ресурсов, с которыми вы будете взаимодействовать на таком языке, как Node.js (в основном это веб-язык), являются базы данных. А поскольку SQL является наиболее распространенным из всех различных типов, вам понадобится хорошая библиотека, которая поможет вам взаимодействовать с ним и его многочисленными функциями. Bookshelf.js - один из самых популярных ORM-пакетов Node.js. Он основан на Knex.js , гибком конструкторе запросов, который работает с PostgreSQL, MySQL и SQLite3. Bookshelf.js опирается на это, предоставляя функциональные возможности для создания моделей данных, формирования отношений между этими моделями и других общих задач, необходимых при запросе базы данных. [Далее]

Moment.js: улучшенная библиотека дат для JavaScript

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

NeDB: легкая база данных JavaScript

Когда вы думаете о базе данных, первое, что может прийти вам в голову, - это MySQL, MongoDB или PostgreSQL. Хотя все это отличный выбор для хранения данных, для большинства приложений они перегружены. Рассмотрим настольное приложение чата, написанное на платформе Electron на JavaScript. Хотя данные чата (сообщения, контакты, история и т. Д.), Скорее всего, будут исходить от сервера API, их также необходимо хранить локально в приложении. Потенциально у вас могут быть тысячи сообщений, и все они нужно будет хранить для быстрого доступа и поиска. [Далее]

Node.js Async Await в ES7

Одна из самых интересных особенностей JavaScript (и, следовательно, Node.js) - это async / await , представленный в ES7 . Хотя в основном это просто синтаксический сахар поверх обещаний, сами по себе эти два ключевых слова должны сделать написание асинхронного кода в Node гораздо более терпимым. Это почти устраняет проблему ада обратных вызовов , и даже давайте использовать структуры потока управления вокруг нашего асинхронного кода. В этой статье мы рассмотрим, что не так с Promises, как новая await может помочь и как вы можете начать использовать ее прямо сейчас . [Далее]

Запуск приложений Node с Forever

Вступление Для многих людей запуск вашего кода в производственной среде - это запоздалая мысль, и простое написание кода - вот где настоящая проблема. Хотя по моему опыту это в основном верно, найти надежный и простой способ запуска вашего приложения может быть довольно сложно. При запуске приложения необходимо учитывать несколько моментов. Куда пойдут вывод / логи? Что произойдет, если приложение выйдет из строя? Как мне отслеживать все мои процессы демона? Как предоставить конфигурации для каждого процесса? [Далее]

Запускайте периодические задачи в Node с помощью node-cron

Что такое Крон? Cron - это утилита планирования, которая запускается как процесс-демон в фоновом режиме Unix-подобных систем. Он чрезвычайно популярен для выполнения периодических задач, которые могут быть любыми по вашему выбору, например, создание резервной копии или удаление данных из базы данных. Вы можете добавлять задачи в Cron через командную строку, используя команду crontab -e . Использование -e переведет его в режим редактирования и откроет редактор по умолчанию, в который вы можете добавить задание. [Далее]

Защита вашего приложения Node.js

По умолчанию Node.js сам по себе достаточно безопасен. Хотя, безусловно, есть вещи, на которые стоит обратить внимание. Например, если ваше веб-приложение на Node начинает становиться все более и более популярным, вам нужно все больше и больше думать о безопасности, чтобы обеспечить безопасность данных ваших пользователей. Увидев несколько вопросов о безопасности Node.js в Интернете за последние несколько недель, я подумал, что было бы полезно написать краткое руководство о том, что вы можете сделать для защиты своих приложений. [Далее]

Использование NVM для установки узла

Только за последние 6 месяцев Node.js перешел с v0.12.x на v5.1.x. За этот период было выпущено более 35 выпусков, в каждом из которых добавлялись важные функции или исправления ошибок. Важной частью этого скачка стало слияние io.js с Node, разработка которого велась гораздо быстрее. Установка Node - не самый простой процесс, по крайней мере, неудобно постоянно удалять и переустанавливать его каждые несколько дней. Это стало большой проблемой для разработчиков, которым нужно было поддерживать несколько версий Node для своих библиотек, и для пользователей, которым приходилось переключаться между версиями для другого программного обеспечения. [Далее]

Итераторы и генераторы ES6

Итераторы и генераторы обычно второстепенны при написании кода, но если вы уделите несколько минут тому, чтобы подумать о том, как их использовать для упрощения кода, они избавят вас от множества проблем отладки и сложности. С новыми итераторами и генераторами ES6 JavaScript получает функциональность, аналогичную Iterable в Java, что позволяет нам настраивать нашу итерацию для объектов. Например, если у вас есть объект Graph, вы можете легко использовать генератор для обхода узлов или ребер. [Далее]