From 16817b67eda1a47fe655f43c1038a47a5f973343 Mon Sep 17 00:00:00 2001 From: Alex Hultman Date: Sun, 16 Sep 2018 00:01:52 +0200 Subject: [PATCH] Add READMORE.md --- README.md | 4 ++-- READMORE.md | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 READMORE.md diff --git a/README.md b/README.md index 1134d6c..217855d 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@
- + *µWS ("[micro](https://en.wikipedia.org/wiki/Micro-)WS") is simple and efficient messaging for the modern web.* -• [Fancy pants details & user manual](http://) +• [Fancy pants details & user manual](READMORE.md)
diff --git a/READMORE.md b/READMORE.md new file mode 100644 index 0000000..9d5be10 --- /dev/null +++ b/READMORE.md @@ -0,0 +1,23 @@ +## Motivation and goals +µWebSockets is a simple to use yet thoroughly optimized implementation of HTTP and WebSockets. +It comes with built-in pub/sub support, HTTP routing, TLS 1.3, IPv6, permessage-deflate and is thorougly battle tested as one of the most popular implementations. +Unlike other "pub/sub brokers", µWS does not assume or push any particular protocol but only operates over standard WebSockets. + +The implementation is header-only C++17, cross-platform and compiles down to a tiny binary of a handful kilobytes. +It depends on µSockets, which is a standard C project for Linux, macOS & Windows. + +Performance wise you can expect to outperform just about anything out there, that's the goal of the project. +I can show cases where µWS with SSL significantly outperforms Golang servers running non-SSL. You get the SSL for free in a sense. + +Another goal of the project is minimalism, simplicity and elegance. +Design wise it follows an ExpressJS-like interface where you attach callbacks to different URL routes. +This way you can easily build complete REST/WebSocket services in a few lines of code. + +The project is async only and runs local to one thread. You scale it as individual threads much like Node.js scales as individual processes. That is, the implementation only sees a single thread and is not thread-safe. There are simple ways to do threading via async delegates though, if you really need to. + +## Node.js +µWS is available as "uws" for Node.js where it can serve as a major boost for web related tasks. You can find "uws" on this page. + +## User manual +todo +