Service-based architectures distributed architectures

Service-based architectures distributed architectures

https://www.oreilly.com/programming/free/files/microservices-vs-service-oriented-architecture.pdf

Protocols
Representational State Transfer (REST),
Simple Object Access Protocol (SOAP),

Advanced Message Queuing Protocol (AMQP),

 

Remote Method Invocation (RMI)
Java Message Service (JMS),
MicrosoftMessage Queuing (MSMQ),

Distributed architectures also lend themselves to more loosely coupled and modular applications.

The trade-offs associated with those advantages are, primarily, increased complexity and cost. Maintaining service contracts, choosing the right remote-access
protocol, dealing with unresponsive or unavailable services, securing remote services, and managing distributed transactions are just
a few of the many complex issues you have to address when creating service-based architectures

Service Contracts

 service-based contracts and consumer-driven contracts.Open source tools such as Pact and Pacto
can help with maintaining and testing consumer-driven contracts.

https://github.com/realestate-com-au/pact

http://thoughtworks.github.io/pacto/

contract versioning : Contract versioning allows you to roll out new service features

 

 

circuit breaker pattern : circuit breaker pattern in Michael Nygard’s book Release It! (Pragmatic Bookshelf).

Security 

With microservices, security becomes a challenge primarily because no middleware component handles security-based functionality.
Instead, each service must handle security on its own, or in somecases the API layer can be made more intelligent to handle the security aspects of the application. 

Not understanding the impact of service granularity, architects frequently designed services that were too fine-grained, resulting in chatty and poorly performing applica‐
tions. Architects and component designers quickly learned that large, coarse-grained services with views into the data were the way to go

Service Orchestration and Choreography

The term service orchestration refers to the coordination of multiple
services through a centralized mediator such as a service consumer
or an integration hub (Mule, Camel, Spring Integration, etc.).

https://4overinc.atlassian.net/wiki/download/attachments/594214913/orche..." title="Technology > Microservices Research > orchestration.png" />

https://4overinc.atlassian.net/wiki/download/attachments/594214913/chore..." title="Technology > Microservices Research > choreagraphy2.png" />

Service choreography

Service choreography refers to the coordination of multiple service
calls without a central mediator. The term inter-service communica‐
tion

https://4overinc.atlassian.net/wiki/download/attachments/594214913/chore..." title="Technology > Microservices Research > choreagraphy.png" />

 

Both microservices and SOA share this capability, particularly with regard to a ser‐
vice registry or service-discovery component. However, with micro‐
services service orchestration is typically minimized or not used at
all, whereas with SOA it is frequently used.

Latest Post

Popular Post

Our Skills

Author

Project Director Information Architect Database Administrator Unix Administrator Senior Developer Project Manager Product Manager Web Marketer Cloud Engineer

Contact Us

For any questions or project ideas please contact me at the following.

I'm here