Инструменты пользователя

Инструменты сайта


doc:1605:643.mgul.16051-01_32_01

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
doc:1605:643.mgul.16051-01_32_01 [2020/06/20 18:05]
kostylev
doc:1605:643.mgul.16051-01_32_01 [2020/06/23 12:59] (текущий)
kostylev [Программные зависимости]
Строка 29: Строка 29:
   * express-graphql - модуль,​ связывающий фреймворк express и graphql   * express-graphql - модуль,​ связывающий фреймворк express и graphql
   * fetch - модуль для отправки асинхронных запросов   * fetch - модуль для отправки асинхронных запросов
-Все вышеперечисленные модули ​устанавливаются по-отдельности с помощью команды:​+Все вышеперечисленные можно ​установить по-отдельности с помощью команды:​
  
 <​code>​$ npm install "​имя пакета"</​code>​ <​code>​$ npm install "​имя пакета"</​code>​
 +Также все программные зависимости можно установить одной командой. Данный процесс описан в разделе "​Установка программного интерфейса на сервер"​.
  
 Все вышеописанное программное обеспечение необходимо устанавливать на операционные системы семейства Linux и Windows. При использовании Windows единственным ограничением будет необходимое использование операционной системы Windows 7 или выше. Все вышеописанное программное обеспечение необходимо устанавливать на операционные системы семейства Linux и Windows. При использовании Windows единственным ограничением будет необходимое использование операционной системы Windows 7 или выше.
  
 +====== Установка программного интерфейса на сервер ======
 +===== Установка NO-SQL базы данных Redis =====
 +Сначала необходимо установить кэширующее средство Redis. Для этого:
 +  - Обновим пакет apt:
 +<​code>​$ sudo apt update</​code>​
 +2. Установим пакет build-essential:​
 +<​code>​$ sudo apt-get install build-essential</​code>​
 +3. Установим Redis:
 +<​code>​$ sudo apt install redis-server</​code>​
 +4. Перезагрузим Redis:
 +<​code>​$ sudo systemctl restart redis.service</​code>​
 +5. Поставим автозапуск сервера Redis при запуске сервера:​
 +<​code>​$ sudo systemctl enable redis.service</​code>​
 +6. Проверим работу Redis:
 +<​code>​$ redis-cli</​code>​
 +7. Введем команду:​
 +<​code>​$ ping</​code>​
 +В результате должно вывестись сообщение "​PONG",​ что будет означать успешную установку Redis
 +
 +===== Установка Node.js =====
 +
 +1. Установим сам Node.js:
 +<​code>​$sudo apt install nodejs </​code>​
 +2. Установим менеджер пакетов:​
 +<​code>​$sudo apt install npm </​code>​
 +
 +===== Установка программных зависимостей =====
 +Для установки ранее описанных программных зависимостей необходимо создать файл package.json,​ находящийся в приложении 1 данного программного документа,​ после чего, поместив его в директорию проекта,​ ввести команду:​
 +<​code>​$npm install</​code>​
 +Все необходимые программные зависимости установятся одной командой.
 ====== Настройка программного интерфейса ====== ====== Настройка программного интерфейса ======
  
Строка 43: Строка 74:
 app.use('/​GraphQL',​GraphQLRouter) app.use('/​GraphQL',​GraphQLRouter)
 </​code>​ </​code>​
 +Также допустимо и отчасти рекомендуется использовать GraphQL явно, вставляя его в основной файл Express-приложения для большего быстродействия,​ без добавления в папку routes.
  
 ====== Проверка работоспособности ====== ====== Проверка работоспособности ======
Строка 60: Строка 92:
 |Redis connection failed ​  ​| ​ База данных Redis, необходимая для работы программного интерфейса,​ либо выключена,​ либо работает неисправно. ​                 |   ​Проверить запущена ли база данных Redis. В случае повторного возникновения данного сообщения перезагрузить ее, или переустановить,​ при необходимости. ​           | |Redis connection failed ​  ​| ​ База данных Redis, необходимая для работы программного интерфейса,​ либо выключена,​ либо работает неисправно. ​                 |   ​Проверить запущена ли база данных Redis. В случае повторного возникновения данного сообщения перезагрузить ее, или переустановить,​ при необходимости. ​           |
  
 +====== Приложение 1 ======
 +===== Файл package.json =====
 +<​code>​
 +{
 +  "​name":​ "​diplom",​
 +  "​version":​ "​0.0.0",​
 +  "​private":​ true,
 +  "​scripts":​ {
 +    "​start":​ "node ./​bin/​www"​
 +  },
 +  "​dependencies":​ {
 +    "​cookie-parser":​ "​~1.4.4",​
 +    "​debug":​ "​~2.6.9",​
 +    "​express":​ "​~4.16.1",​
 +    "​express-graphql":​ "​^0.9.0",​
 +    "​fetch":​ "​^1.1.0",​
 +    "​graphql":​ "​^15.0.0",​
 +    "​http-errors":​ "​~1.6.3",​
 +    "​moment":​ "​^2.24.0",​
 +    "​morgan":​ "​~1.9.1",​
 +    "​node-fetch":​ "​^2.6.0",​
 +    "​node-jq":​ "​^1.11.0",​
 +    "​pug":​ "​2.0.0-beta11",​
 +    "​redis":​ "​^2.8.0",​
 +    "​request":​ "​^2.88.0",​
 +  }
 +}
 +
 +</​code>​
  
doc/1605/643.mgul.16051-01_32_01.1592665523.txt.gz · Последние изменения: 2020/06/20 18:05 — kostylev