For the past 20 years most IT organizations have been building monolithic applications. These consisted of large, single code base, web or desktop based applications with millions of lines of code. Due to their size they are typically two or three technology generations old due to the cost and effort required to keep them up to date. Code tended to be tightly coupled which made it difficult to test and very easy to break in unexpected and unanticipated ways. Adoption of new technologies or patterns was often difficult or impossible. Development resources with appropriate skills could be hard to find. Integration with other systems was difficult and cumbersome. They tend to have a monolithic data source that was itself, difficult to maintain. The result was a lot of time and effort spent in care and maintenance of these applications and minimal opportunity for innovation.
It's not fair to say that monolithic applications didn't have their advantages but they must be weighed with the disadvantages when weighed against todays modern technologies and approaches.
Recently there has been a concerted effort to move away from this outdated approach in favor of a more distributed approach. This has only been made possible by new tools and frameworks that have been released to more easily support the challenges a distributed architecture presents to an organization. Container technology makes it easy to build once and deploy many times. Container orchestration platforms like Kubernetes easily run one or more instances of a service in a cluster providing performance, scalability and redundancy. CI/CD pipelines provide the ability to easily build and deploy individual services. IDPs such as Cognito or Keycloak provide an easy means to secure any http service requests. Enterprise messaging platforms like Kafka enable inter-organizational communication when key events occur. Without these tools the dream of a true distributed architecture could not be fully realized.
As with anything, there are many ways to solve complex problems and while a distributed architecture can be an elegant approach it does require discipline, communication and oversight to fully realize.