Questions tagged [soa]

SOA stands for Service-Oriented Architecture, a flexible set of design principles that allow multiple separate systems from several business domains to inter-operate. Service orientation is a paradigm that frames what you do. Service-oriented architecture (SOA) is a type of architecture that results from applying service orientation. ([From soa-manifesto.org][1] )

Service-oriented architecture (SOA) is a flexible set of design principles used during the phases of systems development and integration in computing. A system based on a SOA will package functionality as a suite of interoperable services that can be used within multiple separate systems from several business domains.

SOA make changes easier i.e. flexibility. Legacy architecture makes Rigid integration. SOA is easy to assemble and easily reconfigurable like building blocks.
SOA works modularly. Assemble any way we want. If any changes require, instead of starting from scratch we can re-use and add new block so, SOA is saving time and money.

The analogy
Imagine a house on the country side, that in many ways is part of a larger community, like a city or town. The city has it's own complex systems for providing water and electricity, handling sanitation, providing transportation and other utilities. The House is the consumer in this model, the City (or community) is the provider and the pipes, sewers, powerlines, optical fibers etc. is the Infrastructure in which they communicate.

This model could loosely be compared to a SOA. The people in the house uses a number of different "applications" like radiators, computers, toilets, lamps, underfloor heating, bathtubs etc. These applications don't care how the city generates the water, creates the electricity or handles the waste as long as it works. The components of the city are generators, water pumps and sanitation areas. It provides the house with all these needs but it's up to the house to use it in what ever way it sees fit.

1957 questions
1602
votes
22 answers

What exactly is Apache Camel?

I don't understand what exactly Camel does. If you could give in 101 words an introduction to Camel: What exactly is it? How does it interact with an application written in Java? Is it something that goes together with the server? Is it an…
Myy
  • 18,107
  • 11
  • 37
  • 57
281
votes
11 answers

Orchestration vs. Choreography

What are the differences between service orchestration and service choreography from an intra-organization point of view.
PetrosB
  • 4,134
  • 5
  • 22
  • 21
158
votes
2 answers

JSON, REST, SOAP, WSDL, and SOA: How do they all link together

Currently doing some exams and I'm struggling through some concepts. These have all been 'mentioned' in my notes really but I didn't really understand how they all linked together. As far as my understanding is: SOA - a solution to make service…
Jay
  • 2,107
  • 4
  • 20
  • 24
112
votes
20 answers

What is SOA "in plain english"?

Can someone explain in plain english what is SOA all about? I hear SOA here, SOA there but I cannot understand exacly what it is and what is used for. Was it some simple concept and later evolved into something huge or what? All documents,…
Elena
  • 1,155
  • 3
  • 8
  • 4
104
votes
12 answers

message driven vs. event driven approaches to application integration

I was wondering if there is a clear distinction between message driven and event driven environments when we refer to SOA or middleware and generally in cases of application and enterprise integration. I understand that a user interface resembles an…
denchr
  • 4,142
  • 13
  • 48
  • 51
65
votes
3 answers

Service Oriented Architecture - AMQP or HTTP

A little background. Very big monolithic Django application. All components use the same database. We need to separate services so we can independently upgrade some parts of the system without affecting the rest. We use RabbitMQ as a broker to…
jreid42
  • 1,240
  • 1
  • 12
  • 19
61
votes
3 answers

Are Doctrine2 repositories a good place to save my entities?

When I read docs about repositories, it is often to work with entities & collection but in a "read-only" manner. There are never examples where repositories have methods like insertUser(User $user) or updateUser(User $user). However, when using SOA,…
Trent
  • 5,785
  • 6
  • 32
  • 43
60
votes
12 answers

What is SOA (Service Oriented Architecture)?

Call me a troll if you want, but I'm serious: how exactly is the new SOA trend any different than the client-service architecture that I was building 15 years ago? I keep hearing SOA but I don't see how it's different than what we've always done.…
tavistmorph
  • 979
  • 3
  • 9
  • 8
48
votes
3 answers

OAuth 2: separating resource server and authorization server

The OAuth 2 spec leads me to believe that the "resource server" and "authorization server" do not necessarily have to be the same application but I'm struggling to figure out how this is actually implemented in practice. As an example, suppose the…
scttnlsn
  • 2,976
  • 1
  • 33
  • 39
45
votes
6 answers

Service-Orientation vs Object-Orientation - can they coexist?

There's been a lot of interest in Service-Oriented Architecture (SOA) at my company recently. Whenever I try to see how we might use it, I always run up against a mental block. Crudely: Object-orientation says: "keep data and methods that…
Dan Vinton
  • 26,401
  • 9
  • 37
  • 79
40
votes
8 answers

What is the difference between API Gateway and ESB?

ESB is traditional middleware used in SOA solutions for routing, message transformation, protocol bridging, among other things. A new category of middleware solutions called API Gateway are now offered by several vendors. These solutions are…
Paulo Merson
  • 13,270
  • 8
  • 79
  • 72
37
votes
4 answers

What is the difference between an API and SOA

There are a lot of What is the difference between... questions out there but I couldn't find this one. Wikipedia says this about an API An application programming interface (API) is a source code-based specification intended to be used as an…
Niklas
  • 13,005
  • 23
  • 79
  • 119
36
votes
7 answers

OpenSSO/OpenAM alternatives

Warning! I'm on a bit of a fishing trip here, and I'm not even sure if the questions that I'm asking entirely make sense. Please be kind with your responses! :) I recently took over a project that is currently based on a Java + Linux + Tomcat +…
David S
  • 12,967
  • 12
  • 55
  • 93
34
votes
6 answers

Microservices: What are smart endpoints and dumb pipes?

I have read an article "Microservices" by Martin Fowler and find it difficult to understand smart endpoints and dumb pipes. Please explain these terms, examples are welcome.
Ivan Voroshilin
  • 5,233
  • 3
  • 32
  • 61
34
votes
7 answers

Middleware & SOA by Example

I am an inexperienced Java developer trying to wrap my head around some fundamental middleware/SOA concepts and technologies, specifically: Service-Oriented Architecture (SOA) Message-Oriented Middleware (MOM) Message Queue Apache…
IAmYourFaja
  • 55,468
  • 181
  • 466
  • 756
1
2 3
99 100