Phil Helm: There are lots of ways to do microservices architecture. The way we’re doing this POC right now is we’ve got a bunch of VMs that sit out. This is Azure, for us, and then inside these VMs, we’ve got a jar. This could be a business capability, this could be … This would be the API gateway, so like the proxy comes in here. This guy proxies, he’s sort of the gatekeeper in bound to your services. Then you have a … this could be a load balancer.
Paul Preiss: When you say a jar, what’s in the jar?
Phil Helm: Inside here is the code for the service, and also this is Tomcat embedded application server. You just really need a lightweight servlet container to do this.
Paul Preiss: What does the
Phil Helm: You can store it within the VM, so we use Mongo onsite here. Also, the data that this stores … There’s part of this, there’s a configuration, spring configuration … This guy knows about these services, right? We’ve got a business capability, so these guys read their config from here, but this guy actually connects to a git repo, and he knows in his configuration, “Okay, I’ve got service one, and environment … if this is a policy service, and I’m in the deb environment, and I have this particular profile. I know exactly what config to pull, so this config could be the data source, it could be any number of things that are specific to this business capability.”
When this guy comes up, this is kind of a [lazian knit 00:02:24], and this guy, as soon as this service gets invoked, this config service will say, “Okay, for this service, for this environment, this profile, here’s your config.” Then this guy loads it, and then he can go off and do … he can execute his business logic. He can go off, if there’s some system of record back here, and this could be an ESP, or whatever it is. The proxy comes in, and then the load balancer, he says, “Yes, you’re okay.” There could be an [oh-op 00:03:00] server here as well. Spring Boot allows you to do that as well. Then you get an [oh-op 00:03:07] token, and then you go to load balancer, and he says, “Which of my services are available? I might have a little redundancy here for these servers.” Then this guy comes in and drives to the particular service that he wants to run.
There’s also … this could be a monitoring, and then there’s a dashboard that you can hit, to say, these guys … this is like a circuit breaker, so this guy says, “This service has not responded within the last five pings that I’ve given him, so I’m going to cut that guy off, and I’m going to report, hey, that service is down.” Then this load balancer understands that the circuit breaker has flipped off this particular service, so then he can just load balance to these other two.
The full interview is available to FULL MEMBERS