-
Notifications
You must be signed in to change notification settings - Fork 7
Plan
Michael Fabian Dirks edited this page Aug 21, 2018
·
1 revision
Datalane (Node.JS bindings)
Basics:
- Client/Server architecture, two way communication.
- Server can listen to one or more clients.
- Clients can connect to one or more servers.
- Should i use signals or semaphores for this? Make this an option?
Server:
- Listen for connections, with upper limit on connections or no upper limit (dynamically create additional listeners)
- Use ThreadPool for work?
- Listen() returns an object that is a server.
Client:
- Connect to one or more servers.
- Connect() returns an object that is a client.
- Uses single Thread to do work.
Client/Server:
- Event for Connect and Disconnect
- Event for Read
- Method for Write on each Connect returned object.
Node.Js helpers:
- Queue up read events per msec to lower v8 overhead? (optional)
- Implement nagle algorithm for lots of small writes? (optional)
Data:
- Just raw data, we don't care in C++?
Wie soll das Lesen/Schreiben funktionieren?
- write() sollte ein Objekt zurückgeben mit dem man den Status überprüfen kann. Diese Objekt sollte ohne Probleme ignoriert werden können.
- read() sollte ein Timeout haben und bei erfolg ein array aus bytes zurückgeben.