Services Returned to Normal and Multiserver Preparations

in #steemdunk6 years ago

Services are working as normal once more

Now that everything is operating normally, it's preparation time to deploy the cluster. This means that @steemdunk will be running on multiple servers for higher availability, hurray! If you are encountering any issues, please report them on Discord.

If you paid for an upvote and have not received it, contact @samrg472 on Discord.

Cluster (multi-server) preparations

This has been planned for quite a while and has even paused development of new features on the platform until it was completed and deployed. Service uptime is still a high priority for all users and the last milestone has been reached for the preparations to be made. The milestone was the completion of a specialized cluster system. The delay has come from a new system for creating a cluster with stateless apps that has been in development for the past few weeks.

Setting up a cluster for the database

This is the first step that needs to be done for steemdunk. The two apps (bot and front end) that power steemdunk are stateless by itself and stores all data in a database. The db requires use of native clustering features to keep the data synchronized between multiple servers. The database that steemdunk uses in particular is ArangoDB. It currently runs in single mode (in other words, one server) and will be converted to use clustering. Data will remain synchronized with synchronous replication to ensure consistency on all machines.

Setting up a cluster for the bot and front end

After the database cluster is setup, the front end and bot are next to setup in a cluster.

I've been developing a specialized cluster daemon to turn (almost :) anything into a cluster, created specifically for steemdunk but can be used for anything. This system will be used for the bot and the front end web server. It was a project that was in the works for quite a while for cases exactly like this to minimize downtime. While it is rough around the edges (hard to setup), the majority of time went to ensuring it was as reliable as possible under different environments (this doesn't mean it's perfect). If for some reason it were to fail, I can take the server out of the cluster and manually deploy to avoid the downtime.

Read more details: Cluster Daemon - Creating an Automated Failover System - part 1


A big thank you for our premium users!

This project will continue living with your direct support. Premium helps support the hosting costs directly so the service will be as reliable as possible.

Running a witness

Please consider voting @samrg472 as witness! Hours of my time is dedicated to making @steemdunk the greatest it can be and hosting is expensive! There's still a lot to be done, by voting me for witness, you will help expand the service and keep the service cheap for our premium users! Click me to vote using SC2

Join the party on Discord

Come hang out with the steemdunk community. :)
Official invite - https://discord.gg/hT7gw4B



Sort:  

this is very useful information for all those truly extraordinary

Thanks for your hard work!

working hard I see! Thanks for the work you do Steemdunk!

Thanks for your hard work!

Awesome!!!

Great news, thanks!