SOA, Service Oriented Architecture, is the concept of designing infrastructure based on the services that are needed instead of focusing on the servers themselves. Designing with SOA in mind makes it easier to not only upgrade for future technologies, but also allows you to create layers of security that many be overlooked in standard client/ server architecture.
- Services such as MySQL Databases can be provided from local MySQL Servers, Digital Ocean DBaaS Database as a Service offerings, or AWS MySQL “Compatible” options such as Aurora.
- SOA requires administrators to look at services as “black boxes”. They design their infrastructure based on simply connecting to services, and not focusing on how the services are specifically provided. Think of “email service” vs. Exchange Server.
- Designing for SOA can provide built in security improvements as you add firewalls and network routes that prevent all systems from seeing all other systems.
- “Like” or “Compatible” services offer the ability for legacy connections to systems whose backend may not be the original software. AWS Aurora uses a proprietary database backend, but allows software that requires MySQL to use MySQL type connections and SQL Statements so that there needs to be no modification of code.