标签: soa

WCF - 域对象和IExtensibleDataObject

典型情况.我们使用旧式XML Web Services internally在服务器场与多个分布式本地客户端之间进行通信.没有第三方参与,只有我们自己和客户使用的应用程序.

目前,我们正在琢磨从移动XML WS到一个WCF/object-based模型,并一直与各种方法的实验.其中之一涉及直接通过线路传输域对象/聚合,可能会调用它们上的DataContract属性.

通过使用IExtensibleDataObjectDataContract使用Order属性DataMembers,我们应该能够处理简单的属性版本控制问题(记住,我们控制所有客户端并且可以轻松地强制更新它们).

我一直听说我们应该DTOs通过线路使用专用的,仅传输数据传输对象().

为什么?还有理由这样做吗?我们在服务器端和客户端使用相同的域模型,当然,只有在被认为是正确且"必要"时才预先填充集合等.集合属性利用服务定位器原理和IoC调用NHibernate-based"服务"直接(在服务器端)获取数据,以及WCF客户端上的"服务"客户端与WCF服务器场通信.

那么 - 为什么我们需要使用DTOs

wcf soa serialization soap domain-driven-design

10
推荐指数
2
解决办法
2823
查看次数

SOA是一种时尚吗?

我一直在抵制任何个人职业投资,因为我的特定工作领域并不需要它,因此无法学习任何关于这个缩写词的事情.我很好奇是否值得我的时间,或者它是否会最终消亡的另一种计算时尚.

soa

10
推荐指数
5
解决办法
2728
查看次数

开源SOA堆栈

我将评估开源SOA解决方案.有什么选择?
我正在寻找提供(可能)完整SOA堆栈的东西.

我想要以下功能 -

  1. BPEL
  2. BPM
  3. ESB
  4. SOA治理
  5. 好的工具

现在Glassfish ESB看起来是个不错的选择.还有其他好的Stacks吗?

soa open-source esb eai

10
推荐指数
2
解决办法
4682
查看次数

REST和SOAP都是SOA的实现吗?

我对SOA有疑问.

SOAP REST都被认为是实现面向服务的体系结构的方法吗?

我知道REST是一种风格,因此这引出了我这个问题.

rest soa soap

10
推荐指数
2
解决办法
9153
查看次数

如何为HTTP GET的多个Key-Value参数设计REST URI

我正在设计一个RESTful API.

一项服务应为多个键值对提供查询功能.例如,客户端可以使用一个HTTP GET请求查询不同的产品和相关数量.

客户想要使用金额44和产品2查询产品1,金额为55.我实际上不希望我的URI看起来像这样:

/produkt?productId1=1&productquantity1=44&productId2=2&productquantity2=55
Run Code Online (Sandbox Code Playgroud)

因为我不知道有多少产品被查询.

或者像这样:

/produkt?product=1,44&product=2,55
Run Code Online (Sandbox Code Playgroud)

因为客户怎么能知道在逗号之前有productId和逗号之后的数量.

有没有人有其他解决方案?或者,提供使用一个请求查询多个产品的可能性是不是RESTful?是否更好地提供仅查询一个具有相关数量的产品的可能性,如果客户想要查询更多产品,他们应该发送更多请求?

java rest soa web-services http

10
推荐指数
2
解决办法
1万
查看次数

在REST服务前请求队列

在REST服务之前拥有请求队列的最佳技术解决方案(框架/方法)是什么?这样我就可以增加REST服务实例的数量以获得更高的可用性,并将Request队列放在前面以形成服务客户端的服务/事务边界.

  1. 我需要Request Queue(java)的优秀轻量级技术/框架选择
  2. 用它实现竞争消费者的方法.

java rest soa

10
推荐指数
1
解决办法
1万
查看次数

用于电子商务系统的微服务架构中的会话

我计划开发一个微服务电子商务系统作为概念证明.该架构由3个组件组成:

  • 一个基于javascript的单页面应用程序,它发送AJAX请求

  • 带有REST API的服务器(API网关),它通过调用其他服务来提供接收的JSON数据

  • 3项服务:CatalogProvider,CustomersProvider,CheckoutProvider

目前,服务都是Magento商店系统的API端点.

当我尝试通过向REST Api发送请求将用户登录到他们的Magento系统时,显然服务器在发送下一个请求时不记得会话.

此外,我使用Magento处理服务器端的购物车,并通过REST Api调用添加/更新/删除项目.在这里,当会话丢失时,在发送下一个请求时,添加的项目也会丢失.

所以我的问题是:

有哪些方法可以解决微服务架构中的会话处理问题?

php soa magento single-page-application microservices

10
推荐指数
1
解决办法
1521
查看次数

SOA治理解释

有人知道SOA治理的全部意义吗?SOA治理和IT治理之间的区别(或相关性)是什么?如何使用市场上可用的SOA平台应用它?

在不应用SOA治理的情况下,构建在SOA平台上的项目能否成功?怎么样?我是从实际的角度来谈这里的.

soa esb resource-governor soa-governance

9
推荐指数
1
解决办法
2430
查看次数

具有多个数据源的工作单元?

有可能(甚至可能)我只是没有完全理解"工作单元"的概念.基本上,我将其视为面向对象环境中使用的广泛事务.启动工作单元,与对象交互,提交或回滚.但是,这如何分解为这些对象背后的数据存储的实际事务?

在具有单个DB和ORM(例如NHibernate)的系统中,它很容易.可以通过ORM维护交易.但是,自定义域模型隐藏了许多不同数据源的系统呢?并非所有这些数据源都是关系数据库?(这里的文件系统已经做了很多.)

现在,我坚持认为"你根本无法在同一'原子'业务操作中跨SQL2005数据库,SQL2000数据库,DB2数据库和文件系统维护事务." 因此,目前,团队中的开发人员(通常彼此独立工作)负责在代码中手动维护事务.每个DB都可以在其上进行适当的事务处理,但是整个业务操作都是手动检查并在每个重要步骤中进行平衡.

但是,随着域和标准开发人员流动的复杂性增加,这种方法将变得越来越困难并且随着时间的推移而容易出错.

有没有人有任何关于如何最好地解决这样一个领域的建议或例子,或者之前如何处理它?在这种情况下,实际的"域"仍处于起步阶段,随着原型的发展,有朝一日扩展并消耗/替换大型不同遗留应用程序的生态系统.因此,有足够的空间进行重新设计和重新分解.

作为参考,我目前的目标是10,000英尺的设计视图:大量的小型as-dumb-as-possible客户端应用程序调用基于消息的中央服务.该服务是"域核心"的入口,可以被认为是一个大型MVC风格的应用程序.对服务进行请求(很像"动作"),由处理程序拾取(很像"控制器").任何程序都在那里.它们与包含所有业务规则的模型进行交互.模型发布的事件是监听器("服务"?这部分在设计中仍然是多云并且需要改进)通过与存储库(数据库x,数据库y,文件系统,电子邮件,任何外部资源)交互来获取和处理.所有的快乐依赖注入相应.

抱歉所有的冗长:)但如果有人有任何建议,我很乐意听到它.即使(特别是)如果这个建议是"你的设计很糟糕,试试这个......"谢谢!

architecture soa unit-of-work

9
推荐指数
1
解决办法
2982
查看次数

如何打包/部署ESB?

我试图围绕Apache Camel,这似乎是一个轻量级的ESB.如果我正确理解Camel/ESB,那么您可以将Camel Route视为节点和边的图形.每个节点都是路由上的端点(可以使用/生成消息).每条边是两个不同端点(1个生产者和1个消费者)之间的路径.

假设这是正确的,我有一个实际的问题:最佳实践是如何规定部署应用程序的ESB/Camel Route的?我应该将其打包为自己的JAR,还是值得成为自己的充满EJB,Web服务和其他JAR的EAR?

我想我是在询问如何部署/构建Camel Route或ESB,例如:

my-esb.ear/
    ejb1.jar/
        MyEJB_1.class
    ejb2.jar/
        MyEJB_2.class
    webservice.war/
        MyWebService.class
Run Code Online (Sandbox Code Playgroud)

要么...

my-esb.jar/
    MyEJB_1.class
    MyEJB_2.class
    MyWebService.class
Run Code Online (Sandbox Code Playgroud)

java architecture soa esb apache-camel

9
推荐指数
1
解决办法
3481
查看次数