zoukankan      html  css  js  c++  java
  • service oriented architecture 构造分布式计算的应用程序的方法 面向服务的架构 分解技术

    zh.wikipedia.org/wiki/面向服务的架构

    【程序功能做为服务】

    面向服务的体系结构英语:service-oriented architecture)是构造分布式計算的应用程序的方法。它将应用程序功能作为服务发送给最终用户或者其他服务

    它采用开放标准、与软件资源进行交互并采用表示的标准方式。

    • 服務封裝
    • 服務鬆耦合(Loosely coupled) - 服務之間的關係最小化,只是互相知道。
    • 服務契約 - 服務按照服務描述文檔所定義的服務契約行事。
    • 服務抽象 - 除了服務契約中所描述的內容,服務將對外部隱藏邏輯。
    • 服務的重用性 - 將邏輯分佈在不同的服務中,以提高服務的重用性。
    • 服務的可組合性 - 一組服務可以協調工作並組合起來形成一個組合服務。
    • 服務自治 – 服務對所封裝的邏輯具有控制權
    • 服務無狀態 – 服務將一個活動所需保存的資訊最小化。
    • 服務的可被發現性 – 服務需要對外部提供描述資訊,這樣可以通過現有的發現機制發現並訪問這些服務。

    en.wikipedia.org/wiki/Service-oriented_architecture

    【不强调模块  分布式】

    Different services can be used in conjunction to provide the functionality of a large software application.[4] So far, the definition could be a definition of modular programming in the 1970s. Service-oriented architecture is less about how to modularize an application, and more about how to compose an application by integration of distributed, separately-maintained and deployed software components. It is enabled by technologies and standards that make it easier for components to communicate and cooperate over a network, especially an IP network.

    Standardized service contract

    Services adhere to a standard communications agreements, as defined collectively by one or more service-description documents within a given set of services.Service reference autonomy (an aspect of loose coupling)The relationship between services is minimized to the level that they are only aware of their existence.Service location transparency (an aspect of loose coupling)Services can be called from anywhere within the network that it is located no matter where it is present.Service longevityServices should be designed to be long lived. Where possible services should avoid forcing consumers to change if they do not require new features, if you call a service today you should be able to call the same service tomorrow.

    Service abstraction

    The services act as black boxes, that is their inner logic is hidden from the consumers.

    Service autonomy

    Services are independent and control the functionality they encapsulate, from a Design-time and a run-time perspective.

    Service statelessness

    Services are stateless, that is either return the requested value or give an exception hence minimizing resource use.

    Service granularity

    A principle to ensure services have an adequate size and scope. The functionality provided by the service to the user must be relevant.Service normalizationServices are decomposed or consolidated (normalized) to minimize redundancy. In some, this may not be done, These are the cases where performance optimization, access, and aggregation are required.[15]

    Service composability

    Services can be used to compose other services.

    Service discovery

    Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.

    Service reusability

    Logic is divided into various services, to promote reuse of code.

    Service encapsulation

    Many services which were not initially planned under SOA, may get encapsulated or become a part of SOA.

    单块应用程序

    通信协议、中间件、服务粒度  的确定  

    其他分解技术

    库 模块   的缺点

  • 相关阅读:
    User Profile Service 应用程序的新增功能
    内容管理互操作性服务 (CMIS) 连接器概述 (SharePoint Server 2010)
    AD二次开发提示“出现了一个操作错误”的解决办法
    Excel2010与MOSS2010数据同步配置
    InfoPath2010表单IE浏览器2个“微型内嵌工具”的使用和介绍
    洗礼灵魂,修炼python(1)python简介
    洗礼灵魂,修炼python(2)python安装和配置
    C语言标准定义的32个关键字
    【学习笔记】.NET知识体系结构
    【读】自定义博客园皮肤:暗色流体响应式布局
  • 原文地址:https://www.cnblogs.com/rsapaper/p/7745482.html
Copyright © 2011-2022 走看看