SOA专业面试试题
  SOA专业面试试题
  1、介绍一下你对SOA的认识
  这个问题可以从WHY SOA和SOA面临的挑战入手回答
  1. WHY SOA? SOA的好处在哪里?
  减低IT成本:重用现有的系统,而且SOA系统本身也可以被后来的应用重用; 减少维护费用,对现有系统造成很少的改动。
  增加IT收入:快速的适应新的需求,快速的实现,提高性能,实现云计算 如 Google, Amazon等等
  2. SOA面临的挑战有哪些?
  更多的系统参与到SOA中,更多的人参与到SOA中,需要更多的交流沟通
soa
  在安全控制方面特别是在EAI(enterprise application integration)的MOM(Message Oriented Middleware)中的安全控制更加复杂
  需要更高更新的技术参与进来,需要更多的有经验的人员。
  2、什么是ESB?请介绍一下ESB?
  ESB的全称是Enterprise Service Bus (企业服务总线)。它是一个ielinghuode用于集成各种企业应用即服务的连接基础架构,企业服务总线能够通过简化企业应用及服务之间的链接数量,接口大小以及接口复杂度使企业的面向服务体系SOA更加强大。
  Enterprise Service Bus 主要提供一下几方面的功能:
  1. 在服务于服务之间或者应用于应用之间路由消息;
  2. 在服务请求者与服务提供者之间转换传输协议;
  3. 在服务请求者与服务提供者之间转换消息格式;
  4. 处理来自于各种已购源的业务事件;
  企业服务总线使企业可以更主要的关于企业的核心业务而不用在关注与连接各种应用的IT基础架构,它还可以让企业在增加新的服务及对已有服务进行修改时,可以对原有系统及服务不产生影响或者只有微小的影响。
  3、WSDL的操作类型主要有几种
  request-response类型是最常见的操作类型,但是WSDL总共有四种操作类型。
  Type:定义
  One-way:这个操作会接受消息但是不会返回一个响应
  Request-response: 这个操作会接受一个请求而且返回一个响应
  Solicit-response: 这个操作会发送一个请求然后等待响应
  Notification: 这个操作会发送一个消息而且不等待响应。
  4、如何在SOA中实现松耦合
  实现松耦合的一个策略是使用service interface(如果是SOAP web service的话就是指WSDL)来限制它的依赖性, 对消费者隐藏服务的实现。 实现松耦合需要更好的包装服务和功能以降低对service接口的改变。
  5、如何定义一个可复用的服务
  可复用的服务是一个自主的, 可复用的, 显式的,无状态的功能。它拥有一定的粒度,可是是一个组合应用和组合服务的一部分。
  可复用的服务必须由服务规范(Service Specifications)描述的业务活动所认可。
  一个服务的约束,包括安全, QoS, SLA, 使用策略可能被多个运行时契约(Contracts), 多个接口(SOAP web service的WSDL)和多种实现(代码)所定义。
  一个可复用的服务需在它的整个生命周期的管理都需要时企业级的。在设计时一直到运行时,它的重用都需要通过规定的流程来保证,而且重用也是需要评估的。
  SOA面试题
  1. 什么是SOA的服务?
  在现实世界中,服务是一种我们花费购买到的一种预期的服务。
  例1 (来自真实世界) :你去餐馆订餐,您的订单首先进入到柜台,然后在厨房进行食物准备,最后服务员提供的食物。因此,为了实现一个餐厅订购服务,您需要三个逻辑部门/服务协同工作(计帐,厨房和服务员)。在软件世界同样的方法称为业务服务。
  例2 (软件世界) :你去亚马逊订购了一本书,有不同的服务,如支付网关,库存系统,货运系统等共同完成一本书的订购。
  所有的服务是自包含的,合乎逻辑。他们就像黑盒子。总之,我们并不需要了解业务服务的内部工作细节。对于外部世界,它只是一个能够使用消息交互的黑盒子。例如在“支付网关”业务服务获得消息“检查信贷”后会给出输出:这个客户的信贷有或没有。对于“订单系统”,“支付网关”的服务是一个黑盒子。
  2.服务的主要特点是什么?
  以下是服务的SOA的主要特点:
  A) SOA组件是松耦合的。当我们说松耦合,这意味着每一个服务是自包含单独存在的逻辑。举例来说,我们采取了“支付网关”的服务,并将它附加到不同的系统。
  B) SOA服务是黑匣子。在SOA中,服务隐藏有内在的复杂性。他们只使用交互消息,服务接受和发送消息。通过虚拟化一个服务为黑盒子,服务变得更松散的耦合。
  C) SOA服务应该是自定义: SOA服务应该能够自己定义。
  D) SOA服务维持在一个列表中: SOA服务保持在一个中央存储库。应用程序可以在中央存储库中搜索服务,并调用相应服务。
  E) SOA服务可以编排和链接实现一个特定功能: SOA服务可以使用了即插即用的方式。例如,“业务流程”中有两个服务“安全服务”和“订单处理服务” 。从它的业务流程可以实现两种类型:一,您可以先检查用户,然后处理订单,或反之亦然。是的,你猜对了,使用SOA可以松散耦合的方式管理服务之间的工作流。
  3.什么是SOA?
  SOA代表了面向服务的架构。 SOA是一种使用松耦合的黑盒子服务构建业务应用的体系架构,这些服务可以通过编排连接在一起以实现特定的功能。
  4.什么是合同,地址和绑定?
  这是三个SOA的标准术语。每个服务都必须公开一个或多个端点,以便让该服务提供给客户端调用。
  合同是两方或多方之间的协议。它定义了一种客户端如何与服务通信的协议。从技术上讲,它有描述参数和返回值的方法。
  地址表明在哪儿能到这种服务。地址是一个URL,它指向服务的位置。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。