Last couple weeks, we have noticed some delays and intermittent issues with our notification service. It is crucial part of our infrastructure to deliver notifications to everyone using Ecency mobile app as well as website and desktop apps.
After some investigation we have decided to improve socket connections which seem to get overwhelmed with so many notifications being sent to many active users.
So far, we noticed slight higher CPU usage but quite stable connection and message delivery. We will keep an eye on it to see if messages are delivered and service is stable.
Notification service Ecency developed is a bit different than what other apps in ecosystem use because our solution is custom. We wrote this piece of software more than 3 years ago and it is websocket notifications service that will also send push notifications to our mobile users.
Another major difference from Hivemind notifications, our notification service is
pull & push, meaning any new activity is pulled from database and pushed to user's device, not only
pulled from database the way Hivemind notifications work. This in turn gives us ability to do browser notifications, desktop notifications and mobile notifications. Like this for example: