What is the Best Practice for LoRa Server Deployment? If we want to offer commercial services?
It entirely depends on your use-case, number of gateways etc.
As far as I know, there isn’t a “best practice” document as yet, however given the modularity of the application, it’s relatively trivial to configure it as an n-tier application.
You’ll need to work out how to make the database, message queues, and lora-server-* components highly available/clustered, however this is simple to do if you’ve setup clustered environments in the past.
Do you have thoughts on how you might do this already?
I have not thought of yet…but we can list down key inputs to design any server . For example -
- Network Server - How many messages going to handle in next 6month or 1 years
- Joining Server - How many devices supported by any specific instance
- App Server - How many messages it is going to handle in North and South bound etc…
To avoid any botttle neck in future.
ok, so assuming that you have experience of running a clustered setup for something else (webhosting or similar), then you’re going to want to have at least the following:
- Loadbalancers for traffic between the outside world and the various components of the system
- TLS certificates configure for the various public and private end-points
- N+1 architecture for the components on the platform to ensure high-availability
and then all of the usual stuff around monitoring/backups/etc. that goes with running a platform such as this one.
The “capacity planning” that you’re talking about is definitely a key part of this, but I’d get a working, scalable test cluster in place first and then start to test it to see how well it scales.