Choosing the Deployment Method

In this server there will be several applications that use the WebSockets feature. We decided that the best way to deal with all of these WebSockets-enabled web applications is Using a Dedicated WebSockets Serverarrow-up-right. This way a single server will be used to serve all WebSocket requests. We only need to define one entry point to our server for WebSocket connections. This will simplify setup and deployment. Especially if you need a secure connection to your server it will be much easier to set up SSL for a single WebSockets server instead of setting it up for various HyperServer or single-application instances.

Our FMSoft Customer Portalarrow-up-right uses a secure connection to our server, so our WebSockets server should also support secure WebSocket connections (wss). In our scenario we will use standard ports, 80 for http (ws) and 443 for https (wss). This means that we need to dedicate a secondary IP address for our WebSockets server. As we have already mentioned our web server already owns three dedicated global IPs, so it won't pose a problem. Since our WebSockets server will be bound to a different IP we need to choose a new domain or subdomain for it, as SSL certificates can be issued for domains only. If you already own a domain-wide SSL certificate you can re-use it. For example, if your domain name is mysite.com and your SSL certificate supports wildcard then you can assign a subdomain such as ws.mysite.com to your configuration; otherwise you need to issue a new certificate for ws.mysite.com.

In our case our SSL certificate doesn't support wildcard so we need to issue a new certificate for our WebSockets domain. We already use a domain named fmsoft.net, so we will use a new subdomain socket.fmsoft.net for this purpose. There is no need to buy this subdomain because subdomains are included in the main domain. All we need is to map this subdomain to the correct IP address in the related DNS server settings. However, a new certificate must be issued for this subdomain, as our main certificate doesn't include a wildcard.