soa相关内容
我对 The Open Group for SOA 提供的参考架构有些困惑,可用作企业示例. 问题 1:在此参考架构中,有一个服务层,它向外界公开服务.标准文档说您可以在这个服务层中拥有流程服务,它实现了一些可以作为服务访问的功能流程.也可以在服务层中组合使用其他服务的服务.但是,还有一个业务流程层,据我所知,主要是通过从服务层编排不同的服务来实现业务流程.业务流程层中的业务流程与服务层中的
..
考虑具有层的 n 层应用程序的常规特征,例如:表示、业务、数据访问;这通常如何重建以形成面向服务的架构 (SOA)? 向在此练习中经验丰富的程序员寻求高级概述. 在某种程度上,我想象它在概念上是扁平化的,而不是有一个垂直堆栈.或者作为一系列水平模块,每个模块都封装了自己的迷你 n 层堆栈.在消息传递之间使用更重的协议. 解决方案 SOA 和 n 层是有些不同的概念.n 层通常是
..
我已经开始学习软件架构,并且遇到了这些术语ESB 和SCA.现在我发现这些术语非常令人困惑,因为它们似乎具有相同的目的(我知道这对于掌握这些主题的人来说仍然很荒谬). 谁能解释一下这些区别吗? 感谢任何帮助. 解决方案 实际上它们彼此有很大不同.ESB 代表企业服务总线.它是一种用于如何分离您在整个企业中使用的服务的模式.它还是某种类型的交通警察,将消息(同样是模式,而不是技术
..
在我的 SOA 架构中,我有几个 WCF 服务. 我所有的服务都需要访问数据库. 我应该创建一个专门的 WCF 服务来负责所有的数据库访问吗? 或者,如果我的每个服务都有自己的数据库访问权限是否可以? 在一个版本中,我在一个服务中只实例化了一个实体层,所有其他服务依赖该服务. 在另一个中,实体层在我的每个服务中重复. 第一个版本的主要缺点是耦合诱导. 另一个版本的缺点是层
..
我知道什么是“通常的"中介设计模式(维基百科中有一些描述:http://en.wikipedia.org/wiki/Mediator_pattern).在我的 SOA 中,我有通知服务:他应该将消息从一项服务广播到订阅此特定服务的所有其他服务.实际上,任何服务都可以成为此类消息的来源. 我对这种服务实现的看法导致服务之间的循环依赖.此处(SOA 中的循环依赖)我已经询问了如何解决它,并收到了
..
我猜,这是一个常见问题,但我会尽量描述我当前的问题. 我有一个基本服务,我们将其命名为“CoreService",它提供我会说的“主要"功能:处理数据库中的数据(我们的应用程序中有一个集中式数据库).还有许多其他应用程序,其中一些具有用于本地目的的自己的数据库.还有一个简单的“NotificationService".其目的是向不同的订阅者广播消息. 通常,此 Notification
..
在面向服务的架构中开发应用程序时定义服务调用原型/签名的最佳实践是什么. 例如,我想创建服务调用来发送电子邮件. 假设我的域层中有以下对象 [数据契约]公开课邮箱{公共字符串 To { get;放;}公共字符串从{得到;放;}公共字符串消息 { 获取;放;}公共字符串主题{获取;放;}//我不会在发送电子邮件方法中使用这个属性公共字符串 OtherProp1 {get;放;}公共字
..
我正在构建一个软件项目,我想实现一个 SAAS(软件即服务)模型.我想设计一个与多租户兼容的 Web 应用程序,每个租户都有单独的数据库. 如何在 Java 环境中设计多租户 UI(UI 本质上应该是租户可配置的)? 如何为每个租户单独的数据库设计数据访问层(多个租户数据库的单个应用程序实例)? 并且还建议我选择Java环境下的技术栈. 提前致谢. 解决方案 这篇
..
我已经确定了要在我的应用程序中实现的以下层.据我所知,多层架构更适合企业应用. 展示层 业务层 数据访问层 服务层 我选择了 Symfony2 作为应用程序中使用的框架.Symfony2 内置了 MVC 架构.上面的层存在如下. 表示层=>控制器观看次数 业务层、服务层 =>型号 数据访问层 =>也使用了 Model 但 Doctrine. 模型由业务层、数据访问
..
在 Camel 路由中,我是否应该考虑将我的业务逻辑放在离散托管的 bean 端点中,例如消息驱动 bean 或 Web 服务,而不是仅在 Camel 处理器中实现它? 将 Camel 仅用于调解和使用似乎更清晰地分离关注点编排,使用处理器作为过滤器,而不是作为业务逻辑的容器.但是,我认为此时不需要 EJB 容器,而且我似乎需要一个来托管 MDB. 更简洁的架构与更小的占地面积、更少的
..
我只是在阅读有关 SOA 的内容,并且经常提到服务注册中心/UDDI.听起来不错,但在现实中如何使用? 注册中心是否旨在将逻辑服务与其物理实现(端口、网址等)分离? 注册表是否旨在供寻找有趣服务的人浏览? 硬连线会不会是“错误的"应用使用的服务? 解决方案 我发现它在理论上比实际有用.它很少被实现和使用.实际上,DNS 为网络上资源的位置提供了足够的抽象工具.
..
我正在接手一个项目,从头开始替换一个古老的遗留系统.在我上任之前,公司聘请了一位顾问,他整理了系统的基本草图并大力推动 SOA.这产生了一长串“实体服务",目的是将它们组合成更复杂的服务组合.例如,需要委员会信息的用户会点击“Committee"服务,然后该服务调用“Person"服务来获取其成员,并调用“Meeting"服务来获取其会议,等等. 我理解这样做的灵活性,但我担心的是性能.在我
..
我正在尝试围绕 Apache Camel,它似乎是一个轻量级的 ESB.如果我正确理解 Camel/ESB,那么您可以将 Camel Route 视为节点和边的图.每个节点都是路由上的一个端点(可以消费/生产消息).每条边都是两个不同端点(1 个生产者和 1 个消费者)之间的路由. 假设这是正确的,我有一个实际问题:最佳实践对部署应用程序的 ESB/Camel Route 有何规定?我应该将
..
在阅读面向服务的架构原则网站和相应的维基百科文章 我有一个想法:Erlang/OTP 平台可以被认为是一个 SOA 平台,SOA 应用程序可以在它上面构建. 唯一的是服务合同在这样一个系统非常具体:为了在 Erlang/OTP 中调用服务,编排层必须通过 Erlang 消息或调用 gen_server(取决于实现)进行调用. 这将不允许对 Erlang/OTP 平台范围之外的服务进行任
..
我读过一些关于微服务架构的文章,但没有人涉及事务的话题.他们都说这很难做到.也许有人可以描述如何处理这个问题? 但不是从领域方面,而是从技术方面.假设我们有一个业务案例,我们需要调用两个不同的服务,并且它们都对数据库进行了一些更改.但是如果第二个出现错误如何回滚? 谁知道这个问题的一些库或设计模式? 解决方案 最好的设计是拥有独立的服务:每个服务只在自己的事务中完成它的工作,而
..
假设我们有一个供比萨店设计和建造的订单处理系统. 要求是: R1. 系统应该与客户端和用例无关,这意味着系统可以被在初始设计时没有考虑在内的客户端访问.例如,如果比萨店决定其许多客户以后使用三星 Bada 智能手机,那么为 Bada OS 编写客户端将不需要重写系统的 API 和系统本身;或者例如,如果事实证明使用 iPad 而不是 Android 设备在某种程度上更适合送货司机,那么
..
我是 EDA 的新手,我已经阅读了很多关于好处的内容,并且可能有兴趣在我的下一个项目中应用它,但仍然没有理解一些东西. 引发事件时,哪种模式最适合: 将事件命名为“CustomerUpdate"并包含有关客户的所有信息(更新与否) 将事件命名为“CustomerUpdate"并仅包含真正更新的信息 将事件命名为“CustomerUpdate"并包含最少信息(标识符)和/或 URI,
..
阅读一些有关 SOA、Web 服务和客户端-服务器架构主题的文献后.我真的对这些术语感到困惑,因为看不到它们之间的真正区别.有人可以解释 SOA 和客户端-服务器之间的实际区别吗?我可以使用 Client-Server 来实现 SOA 还是前者是一个不同的概念?客户端 - 服务器现在已经过时了吗?网络服务的位置在哪里?Web 服务只是一种客户端-服务器架构吗? 如果有人帮助我澄清所有这些术语以及
..
在基于微服务的架构中适应版本控制的最佳实践是什么,在运行时支持同一服务的多个版本化部署以及消费者如何能够使用不同的版本?1)如果我们使用基于路由的版本控制作为此处提到的方法之一那么我想我们会有以下缺点 内部服务必须通过反向代理才能使用. 消费者必须始终了解所需的版本控制. 向消费者公开版本信息是最佳做法吗? 在任何情况下,我觉得以下始终适用: 对于主要版本更改,必须更改使
..
什么是面向服务的架构? 解决方案 SOA 是开发面向服务的应用程序的方式,而 WCF 是可用于开发面向服务的应用程序的技术.但是 SOA 为应用程序定义了严格的规则(称为 SOA 原则).如果您不遵循这些规则,您就是在构建服务,但这些服务不符合 SOA. WCF 允许您开发多种类型的服务.您可以开发符合或不符合 SOA 的可互操作的 SOAP 服务.您可以开发具有非互操作功能的纯 .
..