1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Bwar-Nebula

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Nebula: мощный фреймворк для создания высококонкурентных, распределённых и отказоустойчивых приложений на C++, управляемых сообщениями

Автор Платформа Лицензия

  1. Обзор
  2. Особенности
  3. Начало работы
  4. Документация
  5. Зависимости
  6. Основные проекты
  7. Список задач
  8. Журнал изменений

Обзор

Nebula — это гибкий, высокопроизводительный бизнес-ориентированный IoC-фреймворк с распределённой сетью, разработанный на языке C++. Он предназначен для производственных сред и поддерживает множество протоколов связи прикладного уровня, включая proto3, http, https, http2, grpc, cassandra и websocket. Nebula упрощает развёртывание быстрых и высокопроизводительных распределённых сервисов на C++ при сохранении той же серверной архитектуры и API. NebulaBootstrap обеспечивает готовую интеграцию с сервисом Nebula, но может быть легко расширен для обслуживания других типов приложений.

Nebula представляет собой проект фреймворка и распределённого решения для мгновенных сообщений, сбора данных, вычислений в реальном времени, отправки сообщений и других приложений, а также веб-API-сервисов. В настоящее время существуют производственные приложения для мгновенных сообщений, сбора данных и анализа в реальном времени. Вскоре появится приложение механизма рекомендаций для большой пользовательской базы. Кстати, использование Nebula для проектов игрушечного уровня также полезно для изучения сетевой коммуникации. Bwar приглашает больше разработчиков присоединиться к проекту Nebula.

Nebula можно использовать как отдельный высокопроизводительный TCP-сервер, но создание кластера на основе Nebula действительно отражает его ценность. Для быстрого создания распределённых сервисных кластеров были разработаны кластерные решения Nebula Bootstrap, включающие различные типы сервисов.

Особенности

  • Коммуникация по протоколам, таким как http, protobuf, websocket и т. д.
  • Шифрование соединения SSL
  • Микросервисная архитектура
  • IoC-контейнер
  • Динамическое обновление сервисов
  • Регистрация и обнаружение сервисов
  • Мониторинг сервисов
  • Управление конфигурацией
  • Маршрутизация
  • Балансировка нагрузки
  • Автоматические выключатели
  • Выборы лидера и состояние кластера
  • Удобный способ расширения сторонних протоколов

Начало работы

Nebula был разработан с использованием стандарта C++11/C++14 и требует компилятора, поддерживающего стандарт C++11, и как минимум gcc4.8 (некоторые функции C++14 заменяются стандартом C++11 при использовании более низкой версии компилятора).

NebulaBootstrap предоставляет быстрый способ сборки и развёртывания Nebula. Распределённое решение на основе NebulaBootstrap упростит разработку микросервисных приложений на C++.

Все зависимости будут автоматически разрешены на следующих этапах сборки.

Сначала установите gcc и инструменты автосборки. CentOS:

sudo yum install -y gcc gcc-c++
sudo yum install -y autoconf automake libtool

Этап сборки:

  1. wget https://github.com/Bwar/NebulaBootstrap/archive/master.zip
  2. unzip master.zip; rm master.zip; mv NebulaBootstrap-master NebulaBootstrap; chmod u+x deploy.sh; chmod u+x deploy.sh
  3. ./deploy.sh

Запустите deploy.sh, и сборка распределённых служб Nebula будет завершена. Зависимости от Nebula также автоматически загружаются и компилируются из Интернета перед сборкой.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Nebula — это мощный распределённый сетевой фреймворк, который используется для быстрой разработки высоконагруженных, распределённых и эластичных приложений на C++. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/Bwar-Nebula.git
git@api.gitlife.ru:oschina-mirror/Bwar-Nebula.git
oschina-mirror
Bwar-Nebula
Bwar-Nebula
master