-
Notifications
You must be signed in to change notification settings - Fork 0
Servers
Ivaylo Ivanov edited this page Feb 14, 2016
·
7 revisions
Defined in Esrol-servers and implemented in Esrol-server-app
At the moment, Esrol allows you to create 4 different server types in your application: HTTP, TCP, UDP and HTTP WEBSOCKET. The process of enabling a server is pretty easy:
app/config/config.json
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": true,
"port": 3333,
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": false
},
"tcp": {
"enabled": false,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": false,
"type": "udp4",
"port": 3335
}
}
}You can also set a namespace of your server by setting a namespace property with value as follow:
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": true,
"port": 3333,
"namespace": "/v1",
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": false
},
"tcp": {
"enabled": false,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": false,
"type": "udp4",
"port": 3335
}
}This will evaluate www.example.com:3333/v1
app/config/config.json
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": false,
"port": 3333,
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": false
},
"tcp": {
"enabled": true,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": false,
"type": "udp4",
"port": 3335
}
}
}app/config/config.json
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": false,
"port": 3333,
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": false
},
"tcp": {
"enabled": false,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": true,
"type": "udp4",
"port": 3335
}
}
}app/config/config.json
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": true,
"port": 3333,
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": true
},
"tcp": {
"enabled": false,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": false,
"type": "udp4",
"port": 3335
}
}
}Note: you need to enable both HTTP server and HTTP webSockets in order to use HTTP WEBSOCKETS
If you need for some unknown reason to create all servers in one instance, just enable them:
app/config/config.json
{
"cluster": {
"enabled": false,
"cores": "auto"
},
"servers": {
"http": {
"enabled": true,
"port": 3333,
"methods": ["get", "put", "post", "delete", "options"],
"webSockets": true
},
"tcp": {
"enabled": true,
"port": 3334,
"allowHalfOpen": false,
"pauseOnConnect": false
},
"udp": {
"enabled": true,
"type": "udp4",
"port": 3335
}
}
}