Notes Du 07 03 2024 Architecture Réseau
Notes Du 07 03 2024 Architecture Réseau
2024
Created by David Marsoni
Group M Mathias.Pitteloud
Tags
Docs
HESSO-VS-62-41-Architecture-CH03_History2.pdf
Monolithic architecture
A monolithic architecture is a singular, large computing
network with one code base that couples all of the
business concerns together
Often
SOA
Notes du 07.03.2024 1
A service-oriented architecture is a composition of
distributed isolated services, which interacts by calling
each other services. Its composition serves a business-
case (use-case)
Often
RMI
Notes du 07.03.2024 2
The RMI registry allow the client to know the server (like yellow pages)
Notes du 07.03.2024 3
Stub accepts the same messages as the remote object
Calls to the stub, are transparently send to the remote server (programmer
does not recognize)
Server: Skeleton
Receives messages send from the stubs, initiate computation, and returns
answer
Intermediary Summary
Okay… so getting rid of the ”one machine” constraint is not that difficult (for
most reasonable programming languages)
BUT
We still are fixed on one programming language…, Spoiler: That turned out to
be much harder.
OMG Standard (Version 1.0 1991) (latest update version 3.4. (Feb/21)
Notes du 07.03.2024 4
IDL (Interface definition
language)
Similar to the RPCs case, we need to
describe the interface… but now in a
programming-language independent
way
Bank.idl
Stub & Skeleton are being created based on the IDL description
Notes du 07.03.2024 5
CORBA Services
CORBA infrastructure allowed for a number of services for having a dynamic
composition of services from different teams.
Naming Service
Trading Service
Event Service
Relationship Service
Summary
Description of CORBA here is incomplete
Building a SOA with CORBA is feasible (so SOA is not that ”new”)
BUT
Web Services
(SOAP -based) Web-Services
2nd try to make it programming language independent…
Notes du 07.03.2024 6
But this time with XML (and all experience of what made CORBA horrible to
work with)
📌 NOTE
XML is there to increase automatic machine processing (not
recommended for humans)
Schéma
Service Requester = Client
Services provider = Server
Service Broker = Registry
Platform-independent
Programming-language independent
Protocol independent
Notes du 07.03.2024 7
Describes
The offered functions,
Data,
It defines
How the functionalities can be
assessed
Notes du 07.03.2024 8
We look which implementation is the best, and that gets included at runtime…
Business to offer services (as it is today in the cloud)
📌 That is specific for a SOAP-based WS, CORBA had the same idea)
Price
Performance
Availability
SOAP Message
Notes du 07.03.2024 9
</Body>
<s:Envelope>
more exemple
Source code for the “stub", is automatically created with one command
based on a WSDL file…
Notes du 07.03.2024 10
Representational State Transfer
In practice
URL also as path to a resource
URL allows to describe complex data structures as URLs
Template : http://www.myservice.com/order/{oid}/item/{iid}
Notes du 07.03.2024 11
HTTP methods as different methods to call
A method is called on a ”data object” / resource.
Stateless: i.e. the http call has all necessary information, and is sufficient,
there is no dependency to previous calls
Clear interface via the http primitive. GET, POST, PUT and DELETE.
RESTful WS
REST services are not standardized, but there exists conventions on what good
designed REST services look like.
→ They’re called RESTful
Notes du 07.03.2024 12
Base URI + Hierarchy (data structures, are clearly visible)
Stateless
WS vs REST
Notes du 07.03.2024 13
🗣 MOST Web-API / Cloud functionality today comes to you via REST
Outlook Microservices
Microservices are an architectural style
Follow the principle: "Do one thing and do it well”, so fine grained services,
Notes du 07.03.2024 14
Microservices allow a large application to be separated into smaller
independent parts, with each part having its own realm of responsibility.
Allows for continuously delivery, as only small parts needs to be re-build &
deployed when changed, so all along with the DevOps philosophy
Notes du 07.03.2024 15