`
buliedian
  • 浏览: 1222678 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

什么是服务(Service)

阅读更多

SOA(service oriented architecture)面向服务 架构是很多企业现在正在探究的问题。

那么什么是面向服务的架构呢,最简单的解释就是以服务为中心的架构,那么什么又是服务呢。这就是我这里要解释的一个东东。

关于服务的定义,找了很多地方也没有找到明确的一个定义。
在w3c上对web service倒是有这样的一段描述
1.4 What is a Web service?
For the purpose of this Working Group and this architecture, and without prejudice toward other definitions, we will use the following definition:
[Definition: A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.] 参考http://www.w3.org/TR/ws-arch/#whatis
这里未免把service的描述的太过于狭隘一些了,对于web service倒是比较合适,正如他的title所描述的。

java world有篇文章What is service-oriented architecture?,比较不错的描述了一些SOA,但是对service这个还是没有进行一个定义。

可见这个service还真的不好给他定义,就如同我们在OOA的时候,如果来定义一个对象一样,知道那个意思,就是没有一个准确的定义性的东西来描述一 下,的确,个人感觉OOA也好,SOA也罢,其实是思想上的一个差异,而要把思想上的差异给定义的那么清楚,确实还不是一个容易的事情。

这里我对服务的理解为,服务就是黑盒子,你不需要关心里面的内容,你仅仅需要知道的是,这个盒子可以进去什么东东,东东最后又是怎样的状态。这里已经没有 我们OOA里常见的对象的思想了。文字上理解这些还是非常抽象的,通过对SOA的理解,我把service的特点理解为以下几点

1. 服务是可重用的。

2. 服务是有服务的接口的(服务合同)

3. 服务不公开自己的逻辑

4.服务是自治的(AUTONOMOUS)

5.服务是无状态的,至少在服务级别上

6.服务是松耦合的

7.服务是可以查找的

8.服务可以组合

这些服务的特点,各自并不独立,而相互进行关联。其实服务的特点,也就是我们在做SOA的实现和实施过程中的指导思想,也是我们在做SOA的设计过程中的设计基本原则,SOA的中心就是服务,服务的这些特性就是我们要在设计中收要表现出来的。


关于SOA的实施,现在已经很多的企业开始着手了。也可能有大部分企业本身对SOA的理解上并不全面,所以在现实的环境中,只是对SOA的炒作和概念而已。但是SOA势必成为新的信息化的趋势。至少,现在的几大商业软件巨头都在做此间的部署。

***相关主题****************************************

Udi dahan讲SOA

Java实现SOA的标准途径

分享到:
评论

相关推荐

    基于Qt的window service服务封装

    总的来说,基于Qt的window service服务封装是一种将强大的Qt库应用于系统级服务开发的方法,它简化了Windows Service的创建和管理,使得开发者能够专注于服务的核心功能,而无需过多关注底层细节。通过理解Qt的...

    C# 开机启动服务(windows service)

    C# 开机启动服务(windows service) 本程序用ASP.NET C#开发,不针对系统版本限制。 本源码拿就来可以直接写您想要的服务,无需再改其它的代码,拿来主义是不是很好?例如订单服务。 本服务是100%源码,源码中包含: ...

    Windows服务(Service)安装卸载管理删除工具

    在Windows操作系统中,服务(Service)是一种特殊类型的后台应用程序,它们在用户登录或系统启动时自动运行,并且通常不与用户界面交互。Windows服务对于系统的正常运行至关重要,因为它们提供了许多核心功能,如...

    Android四大组件——Service后台服务、前台服务、IntentService、跨进程服务、无障碍服务、系统服务

    在Android应用开发中,"四大组件"是构成应用程序的核心元素,包括Activity(活动)、BroadcastReceiver(广播接收者)、ContentProvider(内容提供者)以及我们关注的Service(服务)。Service是Android系统中的一个...

    Android系统在新进程中启动自定义服务过程(startService)的原理

    首先,我们需要了解什么是 Service。在 Android 系统中,Service 是一个可以在后台长时间运行的组件,它可以执行一些计算型逻辑,从而提高应用程序的性能。Service 可以被分为两种:Foreground Service 和 ...

    为什么我们需要Service Mesh

    ### 为什么我们需要Service Mesh #### Service Mesh的概念与重要性 Service Mesh是一种用于管理服务间通信的基础设施层,它为微服务架构提供了一种强大的、透明的服务间通信方式。随着云计算的发展,尤其是微服务...

    Centos7-Systemd-Service自定义编写Service应用服务配置说明整理.docx

    `[Service]` 部分定义了服务的配置信息,包括服务类型、PID 文件、环境变量、启动命令、停止命令、超时时间等。 `[Install]` 部分定义了服务的安装信息,包括服务的依赖关系等。 服务管理命令 systemd 服务提供了...

    PowerShell重启服务命令Restart-Service详细介绍

    PowerShell重启服务(Restart-Service),使用PowerShell可以很方便的操作Windows系统服务,比如实现自动重启服务。本文就介绍如何使用PowerShell来重启服务,以及一些相关的内容。PowerShell中重启服务的cmdlet是...

    安卓后台保活服务service,自动重启APP

    在标题“安卓后台保活服务service,自动重启APP”中,核心概念是“后台保活”和“自动重启”,这涉及到安卓应用如何在后台保持活动状态以及在被系统清理后如何重新启动。 首先,我们来理解“后台保活”。安卓系统...

    Android服务Service_详解文档

    `Service`的生命周期由系统管理,开发者需要在适当的时候调用`startService()`或`bindService()`来启动或绑定服务。 二、`Service`的启动方式 1. **启动服务(Start Service)**:通过调用`startService()`启动,...

    QtService服务库

    QtService是Qt框架下的一款强大的后台服务库,它源自qt-solutions项目,旨在为开发者提供在Qt环境中创建、管理和操作后台服务的便利工具。QtService库使得开发人员能够在不依赖于用户界面的情况下,轻松实现跨平台的...

    Python编写Windows Service服务程序

    ### Python编写Windows Service服务程序详解 #### 一、引言 在Windows环境下,有时我们需要创建一个后台服务程序,这类程序可以在系统启动时自动运行,并在后台持续运行而不会占用用户的桌面资源。对于开发者来说...

    Service 启动与停止

    在Android应用开发中,理解Service的启动与停止机制对于创建高效、稳定的后台服务至关重要。 一、Service概述 Service是在Android应用程序中用于实现无界面、长时间运行任务的组件。它可以在用户界面关闭或者应用...

    SpringBoot 使用Java Service Wrapper 部署Windows服务

    而Java Service Wrapper(通常简称为Wrapper)是一个工具,它允许将Java应用程序作为操作系统服务来运行,尤其是在Windows环境下。在本文中,我们将深入探讨如何使用Java Service Wrapper将SpringBoot应用部署为...

    windows service服务程序框架

    本项目“Windows Service服务程序框架”是基于C++语言,利用Visual Studio 2005开发环境创建的服务程序模板。通过提供的源码,我们可以深入学习和理解Windows Service的实现机制。 首先,让我们了解一下Windows ...

    2个C#开启服务的方法!一个用ServiceController实现一个用运行实现

    根据给定的文件信息,本文将详细介绍两种在C#中启动Windows服务的方法:一种是通过`ServiceController`类实现;另一种则是通过命令行接口(CMD)结合`ProcessStartInfo`来实现。 ### 一、使用ServiceController启动...

    WindowsService(服务)安装卸载管理工具-下载

    在Windows操作系统中,服务(Service)是一种在后台运行的程序,它们通常不依赖于用户界面,而是为了系统或特定应用程序提供必要的功能。Windows Service安装、卸载和管理工具是用来便捷地控制这些服务的重要辅助...

    visual c++ vc编写windows service服务 源程序.zip

    在本文中,我们将深入探讨如何使用Visual C++ (VC++) 编写Windows Service服务,并结合提供的源程序进行分析。Windows Service是一种特殊的后台应用程序,它在没有用户界面的情况下运行,通常用于执行系统级任务,如...

Global site tag (gtag.js) - Google Analytics