Настройте Vibe.d в Ubuntu 14.04

Vibe.d - это веб-фреймворк, написанный на D для программистов D, разрабатывающих веб-приложения и сетевые приложения. Vibe.d известен своей способностью разрабатывать и развертывать серверы. В этой статье мы покажем вам, как настроить Vibe.d в Ubuntu 14.04 x64. Это также должно работать на Ubuntu 12.04 и 14.10, но результаты могут отличаться.

Требования

  • Вультр VPS с Ubuntu 14.04 x64.
  • Базовые знания о Д.
  • У вас должны быть установлены DMD , LDC или GDC (рекомендуется DMD).
  • Иметь DUB установлен.

Установить библиотеки

Прежде чем начать, вам нужно будет установить несколько зависимостей, чтобы ваш проект собирался:

apt-get install libssl-dev libevent-dev

Создать проект

Используя dub, создайте проект, выполнив следующую команду в каталоге:

dub init server vibe.d

Что это будет сделать , это создать новый проект с шаблоном Vibe.d встроенного в dub.

Обновить dub.json

Как и package.jsonдля NPM (Node.js), dub.jsonхранит информацию о вашем приложении, которая будет использоваться для сборки или развертывания. Внутри вашего dub.jsonфайла вы можете увидеть что-то похожее на:

{
        "name": "server",
        "description": "A simple vibe.d server application.",
        "copyright": "Copyright © 2014, root",
        "authors": ["root"],
        "dependencies": {
                "vibe-d": "~>0.7.19"
        },
        "versions": ["VibeDefaultMain"]
}

При желании вы можете изменить имя, описание, авторские права, автора и т. Д. На данный момент мы собираемся сосредоточиться на данных в dependenciesразделе. Изменить текущую версию с 0.7.19на 0.7.21. Это гарантирует, что вы используете последнюю версию Vibe.d. После изменения версии и сохранения файла вы можете перейти к следующему шагу.

Обновить источник / app.d

Внутри вашего source/app.dфайла вы должны увидеть строку, которая показывает:

settings.bindAddresses = ["::1", "127.0.0.1"];

Это устанавливает адрес, который сервер будет прослушивать. В этом случае используются петлевые адреса ::1(IPv6) и 127.0.0.1(IPv4). У вас есть несколько вариантов здесь. Вы можете изменить адреса на общедоступный IP-адрес, доступный на Vultr VPS, или закомментировать эту строку, чтобы прослушивать любой доступный адрес. Это чисто ваш выбор, но сейчас изменить , 127.0.0.1чтобы 0.0.0.0предотвратить путаницу. Это заставит ваше приложение прослушивать любой IP, назначенный серверу.

Построить проект

Запустите следующую команду, чтобы построить ваше приложение:

dub build

Это будет проходить через процесс извлечения ваших зависимостей, их построения, а затем построения вашего приложения. После завершения (при условии, что ошибок нет), у вас должен появиться файл serverв корневом каталоге вашего каталога. Запустите его, выполнив, ./serverи он покажет следующее:

Listening for HTTP requests on ::1:8080
Listening for HTTP requests on 0.0.0.0:8080
Please open http://127.0.0.1:8080/ in your browser.

Если вы не видите сообщение об ошибке, перейдите в веб-браузер и введите IP-адрес, а также порт. Например: http://0.0.0.0:8080с 0.0.0.0изменена соответствующим образом .

Если вы видите Hello, World!в своем браузере, то вы успешно настроили Vibe.d на вашем сервере.

Понимание Vibe.d

Разработка сервера

Vibe.d прошел долгий путь, предоставив разработчикам возможность разрабатывать серверные приложения. Это включает в себя приложения веб-сервера, которые Vibe.d поддерживает изначально.

Шаблоны диет

Когда дело доходит до веб-разработки, шаблоны диеты полностью основаны на Jade, за исключением того, что шаблоны диеты компилируются непосредственно в ваше приложение. Это использует D внутри вашего проекта (очень похоже на то, как вы можете использовать встроенный Javascript внутри Jade). Использование шаблонов диеты повышает гибкость контента, который ваше приложение отображает в веб-браузере.

Спектакль

Когда дело доходит до производительности, Vibe.d показал очень высокий уровень. Благодаря асинхронному вводу-выводу он создает издержки памяти, которые намного ниже, чем вы обычно находите в приложениях, созданных с помощью Node.js, Java и Python. Для обработки числа одновременных операций требуется только один аппаратный поток.



Leave a Comment

Установите Node.JS через Node Version Manager в Ubuntu 14.04.

Установите Node.JS через Node Version Manager в Ubuntu 14.04.

Легко устанавливайте и управляйте любой версией Node.JS с помощью Node Version Manager (NVM). NVM похож на Rubys RVM, что позволяет устанавливать и переключать между

Использование Tango в Ubuntu 14.04

Использование Tango в Ubuntu 14.04

Tango - это микро-подключаемый веб-фреймворк, созданный с помощью Golang. Он имеет мощную маршрутизацию и гибкие комбинации маршрутов, встраивание зависимостей,

Настройте Sails.js для разработки на CentOS 7

Настройте Sails.js для разработки на CentOS 7

Используете другую систему? Введение Sails.js - это инфраструктура MVC для Node.js, аналогичная Ruby on Rails. Это делает для разработки современных приложений вер

Настройка Adonis.js в Ubuntu 14

Настройка Adonis.js в Ubuntu 14

Введение Adonis.js - это MVC Framework для NodeJ, который позволяет писать веб-приложения с меньшим количеством кода. Он заимствует концепции из других твердых рамок, таких как

Как настроить приложение узла Koa.js в Ubuntu 16.04 LTS

Как настроить приложение узла Koa.js в Ubuntu 16.04 LTS

В этом руководстве мы узнаем, как настроить веб-приложение Koa.js для работы с использованием Node.js. Мы также будем связывать образец домена, с

Как установить Gitea на CentOS 7

Как установить Gitea на CentOS 7

Используете другую систему? Gitea - это альтернативная система управления версиями с открытым исходным кодом, работающая на Git. Гитея написана на Голанге и является

Настройка Sails.js для разработки на Ubuntu 14

Настройка Sails.js для разработки на Ubuntu 14

Используете другую систему? Введение Sails.js - это инфраструктура MVC для Node.js, аналогичная Ruby on Rails. Это делает для разработки современных приложений вер

Как установить Scala на CentOS 7

Как установить Scala на CentOS 7

Scala - это объектно-ориентированный и функциональный язык программирования. Это популярный язык, который использовался для разработки приложений, таких как Spark, Akka,

DMD на Ubuntu 14.04

DMD на Ubuntu 14.04

D, язык программирования, который считается надмножеством C, является низкоуровневым, но высокопродуктивным языком, который позволяет разрабатывать множество типов

Установите Ruby с RVM в Ubuntu 18.04 и 19.10

Установите Ruby с RVM в Ubuntu 18.04 и 19.10

Введение В этом руководстве объясняется, как установить Ruby с использованием RVM в Ubuntu 18.04 и Ubuntu 19.10. Ruby - это популярный язык разработки. RVM управлять

Настройка веб-сервера Express.js в Ubuntu 16.04 LTS

Настройка веб-сервера Express.js в Ubuntu 16.04 LTS

В этом руководстве мы будем устанавливать на нашем Vultr VP базовый веб-сервер Express.js с использованием Node.js, среды выполнения Javascript, основанной на движке Chromes V8.

Как использовать библиотеку Vultr Go для получения информации о сервере

Как использовать библиотеку Vultr Go для получения информации о сервере

Введение Официальная библиотека Vultr Go может использоваться для взаимодействия с API Vultr. Vultr API позволяет вам контролировать ресурсы, связанные с вами

Как установить Golang 1.8 на Ubuntu 16.04

Как установить Golang 1.8 на Ubuntu 16.04

Go (Golang) - это современный язык программирования, разработанный в Google и ориентированный на простоту и безопасность. Это стало популярным языком, используемым для сервера-sid

Как установить и настроить Ruby с помощью Rbenv, Rails, MariaDB, Nginx, SSL и Passenger в Ubuntu 17.04

Как установить и настроить Ruby с помощью Rbenv, Rails, MariaDB, Nginx, SSL и Passenger в Ubuntu 17.04

Ruby on Rails - популярный веб-фреймворк для Ruby, разработанный для повышения производительности труда программистов. Тем не менее, получение различных драгоценных камней и зависимостей т

Как установить Gitea на Fedora 29

Как установить Gitea на Fedora 29

Используете другую систему? Gitea - это альтернативная система управления версиями с открытым исходным кодом, работающая на Git. Гитея написана на Голанге и является

Установите GitLab CE на CentOS

Установите GitLab CE на CentOS

Введение Когда речь идет об онлайн-сервисах Git, популярным вариантом является GitHub. Но в целях конфиденциальности, гибкости и / или скорости сети вы можете

Управление рабочими очередями Laravel с Beanstalk и Supervisor в Ubuntu 16.04

Управление рабочими очередями Laravel с Beanstalk и Supervisor в Ubuntu 16.04

Beanstalk - это быстрая и простая рабочая очередь. Он позволяет асинхронно выполнять трудоемкие задачи, такие как отправка электронных писем, подключение к внешним API-интерфейсам. O

Как установить Django на CentOS 7

Как установить Django на CentOS 7

Django - это популярный Python-фреймворк для написания веб-приложений. С Django вы можете создавать приложения быстрее, не изобретая велосипед. Если ты хочешь

Загрузка, установка и использование Composer в Ubuntu 14.04

Загрузка, установка и использование Composer в Ubuntu 14.04

Composer - чрезвычайно популярный инструмент управления PHP-зависимостями, используемый для облегчения установки и обновления проектов. Он также проверяет, что

Как установить SonarQube на Ubuntu 16.04

Как установить SonarQube на Ubuntu 16.04

Используете другую систему? SonarQube - это инструмент с открытым исходным кодом для разработки систем качества. Он написан на Java и поддерживает несколько баз данных. Это обеспечивает

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше