Theme-Logo
  •   .Net
    •   C Sharp(C#)
    •   Web API
    •   Micro Services
    •   ASP.Net
    • ASP.Net MVC
    • .Net Core
  •   Database
    • SQL Server
    • Oracle
    • PostgreSQL
  •   jQuery
    • jQuery Tutorials
    • jQuery Plugins
    • jQuery UI
    • More on jquery
  •   Tutorials
    • Microservices Tutorials
    • DotNet Core Tutorials
    • PostgreSql Tutorials
Service-Oriented Architecture

Service-Oriented Architecture (SOA) is an architectural approach in which applications make use of services available in the network. In this architecture, services are provided to form applications, through a communication call over the internet.

SOA, or service-oriented architecture, defines a way to make software components reusable via service interfaces. These interfaces utilize common communication standards in such a way that they can be rapidly incorporated into new applications without having to perform deep integration each time.

Feature and Benefits of SOA

  • Ability to leverage legacy functionality in new markets: A well-crafted SOA enables developers to easily take functionality ‘locked’ in one computing platform or environment and extend it to new environments and markets. For example, many companies have used SOA to expose functionality from mainframe-based financial systems to the web, enabling their customers to serve themselves to processes and information previously accessible only through direct interaction with the company’s employees or business partners.
  • SOA allows users to combine a large number of facilities from existing services to form applications. The efficiency of assembling applications from reusable service interfaces, rather than rewriting and reintegrating with every new development project, enables developers to build applications much more quickly in response to new business opportunities.
  • SOA encompasses a set of design principles that structure system development and provide means for integrating components into a coherent and decentralized system.
  • SOA based computing packages functionalities into a set of interoperable services, which can be integrated into different software systems belonging to separate business domains.
  • Role of SOA

  • Service provider: The service provider (eg. any APIs or service url or link on server/local machine) is the maintainer of the service and the organization that makes available one or more services for others to use. This can be available for public or an organisation can decide to make it private(can be used within the organisation with lots of securities feature). To advertise services, the provider can publish them in a registry, together with a service contract that specifies the nature of the service, how to use it, the requirements for the service, and the fees charged.
  • Service consumer: The service consumer can locate the service metadata in the registry and develop the required client components to bind and use the service.
  • Generally, the services are exposed using standard network protocols—such as SOAP (simple object access protocol)/HTTP or JSON/HTTP—to send requests to read or change data. The services are published in a way that enables developers to quickly find them and reuse them to assemble new applications.

    Components of SOA

    DotNet Palace

    Advantages of SOA

  • Service reusability: In SOA, applications are made from existing services. Thus, services can be reused to make many applications.
  • Easy maintenance: As services are independent of each other they can be updated and modified easily without affecting other services.
  • Platform independent: SOA allows making a complex application by combining services picked from different sources, independent of the platform.
  • Availability: SOA facilities are easily available to anyone on request.
  • Reliability: SOA applications are more reliable because it is easy to debug small services rather than huge codes
  • Scalability: Services can run on different servers within an environment, this increases scalability
  • SOA vs. Microservices

  • SOA is an enterprise-wide concept. It enables existing applications to be exposed over loosely-coupled interfaces, each corresponding to a business function, that enables applications in one part of an extended enterprise to reuse functionality in other applications.
  • Microservices architecture is an application-scoped concept. It enables the internals of a single application to be broken up into small pieces that can be independently changed, scaled, and administered. It does not define how applications talk to one another—for that we are back to the enterprise scope of the service interfaces provided by SOA.
  • Platform independent: SOA allows making a complex application by combining services picked from different sources, independent of the platform.
  • Availability: SOA facilities are easily available to anyone on request.
  • Reliability: SOA applications are more reliable because it is easy to debug small services rather than huge codes
  • Scalability: Services can run on different servers within an environment, this increases scalability
  • Summary

    Hopefully this article will help you to understand SOA architecture. Please give your valuable suggestions/feedback regarding this article.

    Cheers!

    Trending Post
    Dependency Injection in C#
    Inversion of controls (IoC)
    Design patterns
    Service-Oriented Architecture(SOA)
    Interview Questions and Answers
    What is SOLID Principles?
    What is Design patterns?
    What is tight coupling and loose coupling?
    Advantage of design patterns?
    What is difference between IoC and DI?
    About us

    DotNet Palace is a community platform created and maintained by The articles are mainly focused on Microsoft stack technologies like C#, ASP.Net, MVC, .Net Core, SQL Server and Oracle, PostgreSQL, SQLite etc. To improve the site's content you can send your valuable suggestions at info.dotnetpalace@gmail.com

    Quick links
  • SOLID Principles
  • Questions
  • OOPS Principles
  • DotNet Palace Tutorials
  • Privacy Policy
  • Terms and Condition