4

I would like to understand which approach suits the best to manage the below scenario.

Say for example there are 25 applications mostly in java and are web based deployed across different platforms jboss, websphere & tomcat. Each application exposes 3 -5 services and also consumes services from other applications. Most of them are synchronous and are triggered on need basis. Some of the use cases below,

  1. When a patient is admitted, this sends out message to 4 -5 systems which are interested in admission detail (sync).
  2. Billing system send detail to another system to calculate the discount (sync)
  3. Get Patient detail by passing the id. (sync)

So if u try to represent the whole diagram in a picutre if will be like so many hardcoded static lines between each and every system.

The problems

  1. No common way to find the health of each systems or web services until the user complains some thing not working.

  2. Too many web services and end points to keep track off.

  3. Implemented across diff standards JAX-wS, Jax-RS, due to diff application servers and containers.

  4. Some messages are identical with slightly different details. Thus reusability is reduced and end up coming up with new service for each custom requirement.

What kind of solution are better suited to address the above issues ?

4

2 回答 2

1

这是大型企业普遍存在的难题。您可以看到将企业服务总线集成到您的公司中以促进 SOA。然后,您可以为生态系统中的每个系统实施适配器。适配器接口将受到严格控制、记录和标准化。但是,这样做的成本相当高。

关于检查系统健康。您可以考虑使用诸如Nagios之类的平台。您需要识别一些无害的 Web 服务(例如基本阅读),这些服务可用于确定给定系统是否“启动”。然后 Nagios 可以定期调用它。

于 2012-04-12T09:47:54.897 回答
0

您需要一个 ServiceBus,它不一定是完整的 ESB,但您确实需要一个集成和中介点,以确保您管理不同的端点类型和不同的协议,而无需求助于 1-1 连接。

您可以查看Fuse Mediation Hub(基于apache camel)。再次从您拥有的不同服务中外部化集成逻辑将为您提供更大的灵活性。例如,它将允许您将不同的服务迁移到您提到的 REST/JSON,而无需更改依赖于正在发展的服务的每个服务(在整个过渡过程中保持整个工作正常)。

关于监控 - 您可能需要考虑查看splunk,它可以连接到许多源(应用服务器的日志、JMX、SNMP)并关联事件。他们有一个免费版本(每天最多 500Mb 的数据)

于 2012-04-13T13:29:46.477 回答