Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

Reactive programming the key to scalable software development

Traditional programming techniques that focus primarily on handling the request-response cycle tend to fall out of favor when it comes to dealing with the distributed load placed on modern enterprise applications. And in this case, the term distributed doesn't refer to the geographic distribution of the hardware or the clients. In this context, we are speaking about the manner in which a single request coming into a complex, modern application can spawn a distributed number of parallel and asynchronous processes, all of which will complete at indeterminate points in time in the future.

To deal with this new nature of modern applications, software development teams are adopting a reactive programming approach to problem solving.  Unfortunately, the move towards reactive programming is something that's much easier said than done, according to Ondrej Mihalyi, a software support specialist with Payara. "It's not an easy concept to grasp," said Mihalyi. "When people are used to a traditional approach, they need to think a bit differently and evaluate the approach from the beginning to the end."

Transitioning to reactive programming models

It's not an easy concept to grasp. When people are used to a traditional approach, they need to think a bit differently.
Ondrej Mihalyi, software support specialist with Payara

Another challenge with a reactive programming approach? "It's much more complex to write code in a reactive way," said Mihalyi. "You need to cope with data that is processed at a different time than when it was requested, and a different place and even a different computer than where the request came from.  People don't imagine just how complex it is."

And if a reactive programming model sounds complicated to architect and design, it can be just as complicated to debug. With parallel streams performing independent processing, and responses being generated repeatedly and asynchronously, figuring what caused a given error and its point of inception can be a harrowing task.

So given the potential difficulty involved with adopting a reactive approach to software development, is it all worth it? To find out, watch the full interview between TheServerSide's Cameron McKenzie and Payara's Ondrey Mihalyi.

View All Videos

Join the conversation

3 comments

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

What challenge has your organization encountered moving to a reactive programming model?
Cancel
Challenge is going through this site. Very ugly user interface 
Cancel
Hi, thank you for writing. We did a significant redesign of this site over in summer 2016, and hopefully improved upon the problems of how the old site looked and operated. What specifically don't you like about this UI right now? 
Thanks...Scott Wallask, Editorial Director, TechTarget
Cancel

-ADS BY GOOGLE

SearchCloudApplications

SearchSoftwareQuality

SearchFinancialApplications

SearchSAP

SearchManufacturingERP

DevOpsAgenda

Close