Представлена начальная реализация версии фреймворка node.js для языка C++
Node.native представляет собой асинхронный I/O-фреймворк, архитектурно и идейно сходный с фреймворком node.js. Однако, в отличие от последнего он не использует JavaScript-движок V8 и предназначен исключительно для программирования на языке C++11, возможности параллельного программирования которого и вдохновили автора на создание проекта. Как и оригинальная реализация, node.native перекладывает работу по обслуживанию запросов ввода-вывода на отдельные потоки, благодаря чему удается достичь высокого уровня производительности приложений.
В данный момент проект находится в начальной стадии разработки и пока не может предоставить разработчикам всех возможностей node.js, но опережает его в производительности в синтетических тестах на 80%. Если верить словам автора, он продолжит активно работать над реализацией и совсем скоро выпустит полноценную версию фреймворка, сходную по функциональности с node.js.
Простейший пример веб-сервера на node.native выглядит следующим образом:
#include <iostream> #include <native/native.h> using namespace native::http; int main() { http server; if(!server.listen("0.0.0.0", 8080, [](request& req, response& res) { res.set_status(200); res.set_header("Content-Type", "text/plain"); res.end("C++ FTW\n"); })) return 1; // Failed to run server. std::cout << "Server running at http://0.0.0.0:8080/" << std::endl; return native::run(); }
Источник: http://www.opennet.ru/opennews/art.shtml?num=33130
|
0 | Tweet | Нравится |
|