Microservices architecture allows companies to work better with Big Data, improve operational performance, and rapidly respond to customer requests for software upgrades. Microservices approaches are highly beneficial to application development, fast-tracking time to market, and improving robustness. The concept itself was popularized in 2011 and microservices architecture allows the continuous deployment of complex applications, while enabling evolution of an organization’s technology stack. This architectural style features services which are loosely coupled, can be deployed independently, combinations of highly testable systems, and is set up around business capabilities.
At its heart, microservices is a unique methodology whereby software systems can be developed with a focus on building single-function modular systems, replete with well-defined operations and user interfaces. It comes as no surprise that many of the world’s premier tech companies in PayPal, Amazon, Twitter, Netflix, eBay and others have evolved from what could be considered ‘monolithic architecture’ to ‘microservices architecture’. With microservices, the ability to make changes to the application is relatively easy since modifications can be made to individual components of code because they are modular. Microservices help to construct applications as independent sets of small services, each of which manages its own processes and can be deployed independently.
Microservices are typically associated with unique characteristics including fully decentralized systems, business focus, myriad components, failure resitance, and evolutionary architecture. A classic case study of microservices architecture is evident with a company named Atera. This company creates a Joint Remote Monitoring and Management (RMM), Professional Services Automation (PSS) remote access platform. It does this with a single code base.
Atera developed an evolutionary SaaS solution for MSPs which combines Remote Access, PSA and RMM and is user-friendly too. Atera uses cloud-based technology and offers fully-integrated services with greater daily work efficiency. Atera recently migrated to Microsoft Azure Service Fabric which makes it much easier to optimize performance and work with Big Data.
The CEO of Atera, Gil Pekelman was recently interviewed about his company’s experience with microservices and the migration to Microsoft Azure Service Fabric.
What has been your experience with the Microsoft Azure move?
‘We have been working side-by-side with Microsoft for over a year and we are happy that we recently launched our new platform. It comes as no surprise that Microsoft is the dominant platform in our industry. It offers full operational capacity and cutting-edge technology. From our perspective and from users’ perspectives, it makes sense.’
What makes the Microsoft Azure Service Fabric a better fit for Atera?
‘There is no doubt that in terms of technological prowess, Microsoft Azure Service Fabric is leaps and bounds ahead. For starters, the infrastructure is incredibly reliable and scalable. The problems we had related more to our software. It was monolithic-style software which had to be deconstructed into thousands of single microservices. That was the challenge. This whole process took about a year to complete after we fully tested the connectivity and conducted a beta.’
The migration was necessary. What were the primary reasons for it?
‘Correct. The migration of Atera software to Microsoft Azure Service Fabric from Microsoft Azure Cloud Services was absolutely necessary. Customer access was only available in 2017. Our users get to enjoy tremendous benefits of our multi-tenanted cloud system. This is great for efficiency and service delivery. In order to offer such services, it was essential to migrate from Microsoft Azure Cloud Services to Microsoft Azure Service Fabric. We had to make this move to construct new architecture in order to respond quickly and efficiently to customer requests and provide the necessary updates of the software.’
Why is it necessary to go from the monolithic to the microservices architecture anyway?
‘That’s a great question! If you think of a monolithic system, the entire system has to be changed in order for upgrades to be implemented. That’s a no-starter for us and many companies today. If you want to add a new feature to the software, you use small bites only and it only affects a small part of the system. This makes it so much easier to make changes without affecting all of the other software. For example, this enables easy scaling up specific elements, and we can release software upgrades every couple of weeks. This is highly effective for organizational evolution, enhancement, and modifications.’
What additional enhancements does Atera software now include?
‘Customer satisfaction is sacrosanct. Thanks to the new architecture, customers will enjoy improved performance. Further, we will be able to scale on a virtually unlimited number of machines. If MSPs require anything, this can be done rapidly, typically within three weeks. Value-added services such as crunching Big Data is easily done with enhanced performance. We have a more stable, more responsive, and more robust architecture.
Mac users will be pleased with our patch management tool for the rapid deployment of patches, updates and so forth. Our enhanced Mac support allows for improved organization and more visibility.
Additional enhancements are available in the form of full integration with ConnectWise Control for remote support, remote meeting capabilities, and remote access. We have also had an integration with SpashTop for remote control accessibility of devices, and this adds greater variety for users in terms of choice of applications to use.’
How important is microservices architecture with Mac?
‘Presently, some 50% of Atera’s MSPs are managing Macs. It makes sense to invest in this since it is a critical component of our operations. When an MSP needs to perform actions with a command line, it is much easier to do so. There is no need to connect to remote tools, everything can be performed from a browser. Multiple people can be operating in tandom with one another on the same machine. We’ve also added additional statuses to tickets including Change, Request, Problem, and Incident. This deeper visibility into status naturally enhances customer satisfaction.’
With microservices, code is deconstructed into independent services which run separately. This is particularly beneficial for organizations which do not have perfect information about the types of devices the applications will support. This is almost platform end device agnostic, making it easy to support an array of platforms and devices spanning IoT, mobile devices, fitness trackers and many others. The switch to microservices improves scalability, resilience, time to market, and maintenance. It also enhances return on investment and reduces operating costs. However, experts chime in that microservices is not advised for all types of businesses. Businesses must be fully equipped for app deployment and rapid provisioning, and the organization must be conducive to a ‘devops culture’ of operations.