Hi Fredrick,
I think microservices in general are in a long-line of distributed computing approaches. One of the reasons why I think JSON/REST based services are different then other approaches is that they follow an emergent behavior (e.g their industry adopted practices HTTP/JSON/REST) rather then heavy, industry imposed standards (e.g.
EJB, CORBA, DCOM, etc....) I think the concept of a JSON/REST-based interface is here to stay, but one of the more interesting things I think will be falling out in the next few year is whether we will continued to have microservices as standlone servers or if they the logic in a microservice is supplanted with serverless functions like AWS Lambdas or Google's FaaS offerings. With the current microservices approach, every service instance is a running server which means in a large scale microservices environment you could easily have 1000s of server instances running. Thats a lot of operational overhead. I can see a point where we still maintain a JSON/REST-based interface (ala AWS API Gateway), but the actual microservice logic runs in a function rather then a service.
Thanks,
John