A new look

This commit is contained in:
Alex Hultman 2019-04-23 00:54:56 +02:00
parent 23b1ea8230
commit 7174dfc33e
2 changed files with 17 additions and 12 deletions

View File

@ -8,44 +8,49 @@
</div> </div>
#### In a nutshell. #### In a nutshell.
µWebSockets.js is the Google V8 bindings to [µWebSockets](https://github.com/uNetworking/uWebSockets), one of the most efficient web servers available for C++ programming<sup>[[2]](https://github.com/uNetworking/uWebSockets/tree/master/benchmarks)</sup>. Bypassing the entire I/O stack of Node.js allows for unprecedented efficiency in back-end JavaScript - what you build stands on nothing but the best of C and C++. Scales to millions of active WebSockets using half a GB of user space memory<sup>[[3]](https://medium.com/@alexhultman/millions-of-active-websockets-with-node-js-7dc575746a01)</sup>.
```
npm install uNetworking/uWebSockets.js#v15.9.0
```
, or any such tag (see [releases](https://github.com/uNetworking/uWebSockets.js/releases)).
#### Simple.
There are tons of [examples](examples) but here's the gist of it all: There are tons of [examples](examples) but here's the gist of it all:
```javascript ```javascript
const uWS = require('uWebSockets.js'); /* Non-SSL is simply App() */
require('uWebSockets.js').SSLApp({
/* Non-SSL is simply uWS.App() */
uWS.SSLApp({
/* There are tons of SSL options */ /* There are tons of SSL options */
key_file_name: 'misc/key.pem', key_file_name: 'misc/key.pem',
cert_file_name: 'misc/cert.pem', cert_file_name: 'misc/cert.pem',
}).ws('/*', { }).ws('/*', {
/* For brevity we skip the other events */ /* For brevity we skip the other events */
message: (ws, message, isBinary) => { message: (ws, message, isBinary) => {
let ok = ws.send(message, isBinary); let ok = ws.send(message, isBinary);
} }
}).any('/*', (res, req) => { }).any('/*', (res, req) => {
/* Let's deny all Http */ /* Let's deny all Http */
res.end('Nothing to see here!'); res.end('Nothing to see here!');
}).listen(9001, (listenSocket) => { }).listen(9001, (listenSocket) => {
if (listenSocket) { if (listenSocket) {
console.log('Listening to port 9001'); console.log('Listening to port 9001');
} }
}); });
``` ```
#### Ready all thrusters.
Install with `npm install uNetworking/uWebSockets.js#v15.10.0` or any such [release](https://github.com/uNetworking/uWebSockets.js/releases). No compiler needed.
![](misc/features_strip.png)
#### Pay what you want. #### Pay what you want.
Commercially developed on a sponsored/consulting basis; BitMEX, Bitfinex and Coinbase are current or previous sponsors. Contact [me, the author](https://github.com/alexhultman) for support, feature development or consulting/contracting. Commercially developed on a sponsored/consulting basis; BitMEX, Bitfinex and Coinbase are current or previous sponsors. Contact [me, the author](https://github.com/alexhultman) for support, feature development or consulting/contracting.
![](https://raw.githubusercontent.com/uNetworking/uWebSockets/master/misc/2018.png) ![](https://raw.githubusercontent.com/uNetworking/uWebSockets/master/misc/2018.png)
#### Know thy legal matters.
*µWebSockets.js is intellectual property licensed Apache 2.0 with limitations on trademark use. Forks must be clearly labelled as such and must not be confused with the original.* *µWebSockets.js is intellectual property licensed Apache 2.0 with limitations on trademark use. Forks must be clearly labelled as such and must not be confused with the original.*

BIN
misc/features_strip.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB