Jan 2, 2021 04:04 AM
(This post was last modified: Jan 2, 2021 04:05 AM by Shprqness.)
Before we begin, I've recorded a video version of this, however, this thread will contain more details: https://www.youtube.com/watch?v=9rTnycgSk00
Key:
SOA = Service-Oriented Architecture
Summary
In layman's terms, SOA is one of the best forms of architecture for backend systems, it essentially entails creating multiple services for parts of your system, this would dramatically improve performance and resource consumption.
The fun part
Ideally, a good way to integrate this is to have one, or many different servers running different services, this is because, depending on your service load you may be required to spread out your services in order to lower resource consumption on a single node, which is why a lot of large systems are required to do this.
Let's assume we are developing a large e-commerce website, due to the amount of traffic we would be receiving we may be required to outsource our login, register, and purchasing parts of our website into microservices that will handle, process, and deal with data accordingly.
The way this would work is as follows (as an example): [For our Login Service]
[Our Website] -
| (Transmitting data via likely TCP due to its speed)
|
|
[Data sent to the login service would be, for example: "user:pass"]
|
|
[Login-Service]
Our login service would then process this data, check if its valid and would return a response confirming the validity of these credentials, this would relieve the processing stress from our web server dramatically as all it is required to do is send out some very light data and wait for a response rather than create database queries, etc.
Now here is an image of an even more complicated Service-Oriented Setup:
![[Image: 2Ssc6nI.png]](https://i.imgur.com/2Ssc6nI.png)
Any questions leave below.
Note - OUR MS HANDLER will keep open sockets to each service, this means you don't need to create multiple socks over and over again, you just create one that waits for data while the MS handler sends through open socket bridges its made to our services, an ideal situation would be to have multiple handlers for different services based on weight.
Key:
SOA = Service-Oriented Architecture
Summary
In layman's terms, SOA is one of the best forms of architecture for backend systems, it essentially entails creating multiple services for parts of your system, this would dramatically improve performance and resource consumption.
The fun part
Ideally, a good way to integrate this is to have one, or many different servers running different services, this is because, depending on your service load you may be required to spread out your services in order to lower resource consumption on a single node, which is why a lot of large systems are required to do this.
Let's assume we are developing a large e-commerce website, due to the amount of traffic we would be receiving we may be required to outsource our login, register, and purchasing parts of our website into microservices that will handle, process, and deal with data accordingly.
The way this would work is as follows (as an example): [For our Login Service]
[Our Website] -
| (Transmitting data via likely TCP due to its speed)
|
|
[Data sent to the login service would be, for example: "user:pass"]
|
|
[Login-Service]
Our login service would then process this data, check if its valid and would return a response confirming the validity of these credentials, this would relieve the processing stress from our web server dramatically as all it is required to do is send out some very light data and wait for a response rather than create database queries, etc.
Now here is an image of an even more complicated Service-Oriented Setup:
![[Image: 2Ssc6nI.png]](https://i.imgur.com/2Ssc6nI.png)
Any questions leave below.
Note - OUR MS HANDLER will keep open sockets to each service, this means you don't need to create multiple socks over and over again, you just create one that waits for data while the MS handler sends through open socket bridges its made to our services, an ideal situation would be to have multiple handlers for different services based on weight.


