In today’s fast-paced technology world, change is constant and rapid. New concepts continually emerge, gain traction, disappear, and reemerge. While it’s important to embrace this evolution, core concepts that work in older technology should not be tossed out either.
During his closing keynote at WSO2Con USA 2015, Dr. Donald Ferguson – former vice president and CTO of Dell, identified concepts independent of the specific technology realization in order to highlight requirements that current technologies don’t meet.
He noted that although concepts such as loose coupling, service delivery, and asynchronous messaging have been used for various different technologies like common object request broker architecture (CORBA), Web services, and service-oriented architecture (SOA), each of these is just an improvement, yet based on the same ideas. “The key thing when going forward is to make sure that we don’t loose some of the things that we managed to bring forward because they were good,” he adds.
He explains these similarities, improvements, and limitations are apparent when comparing SOA to microservices for instance; features such as programming style, code type, messaging type, and the use of databases are similar in both concepts whereas there are certain important distinctions in means of evolution, systematic change, and scaling. “It’s more about how you do it – the internal architecture, than the externals. With one exception – smart endpoints and dumb pipes” says Ferguson. This concept encourages the microservice community to use a light-weight message bus (a hub) that acts solely as a message router and leaves the smart part of things (receiving a request, applying appropriate logic and producing a response) to the service itself.
But as Ferguson states, “You don’t want just a hub, you want it to be active”. If you open any book on enterprise application design patterns, they first show you what not to do – a monolithic point-to-point architecture. To avoid doing this you need to connect everything through a hub that needs to be able to reformat, route and combine messages as well as understand different protocols and data types that will travel across it. This is where middleware, or specifically the enterprise service bus (ESB) becomes important.
Ferguson notes that dumb fast messaging seems more appealing than using a powerful ESB but it just repeats the fallacies of quick point-to-point connections. Using an active hub and taking advantage of middleware to do it is much more advantageous because it adds value and improves robustness, reusability and scalability.
He further adds that any organization can realize tremendous value from microservices and other new technology; however, this could sometimes result in the risk of losing benefits like interface dependency and optimized composition that emerged in the past. “This needs to be done through application design patterns and middleware that empowers them…that’s part of the value WSO2 is,”he concludes.
WSO2’s complete middleware stack includes the WSO2 integration, API management, security and analytics platforms. By leveraging these components and more you can easily develop modern solutions despite what technology you use.