0 0

采用SOA后,各个系统如何实现共用部分组件,如头部、底部5

       公司的内部办公系统进行了服务化改造,基于阿里的dubbo,最终整套系统运行时包含好多子系统,tomcat之间实现了session共享,通过nginx实现反向代理,使用户看起来还是一个系统。

 

现在有几个问题一直困惑我:

1、多个子系统中其实有部分内容是相同的

    1.1 典型的就是头部和底部,现在是通过ajax请求来实现,但是这样的用户体验非常不好。

    1.2 原先在一个系统中可以通过include等方式实现页面的复用,很容易实现如所有页面都要包含一段html的需求。

2、现在按照一个个业务模块进行的划分,包括基础服务,业务服务,项目非常多,服务关系的管理及部署维护的问题也出来了。个人觉得作为一个公司内部的办公系统,其实只要把诸如邮件,消息,文件,索引,权限等进行服务化,为更高层的业务服务即可,还没到需要把所有的进行拆分。

3、公司现在有多个子公司,都需要部署OA,所以又要进行改造,以支持多企业,按照目前的情况来说,如果不解决以上问题,继续进行下去失败的风险很高。

 

注:开发人员不多就6个。

 

对于以上问题,希望各位给点意见建议,谢谢

 


问题补充:to 鳄鱼旭:
我画了一个简单的图:
https://docs.google.com/drawings/d/1HP1VS5XPj8ecjJO85TKIBXR4wD6Y730o72TeJh0iZhs/edit?usp=sharing
请问为什么引用Frame.jar就可以实现头部、左侧菜单的共用,一般jar包里面都是java代码吧?可以有JSP?这样A、B、C能够成功引入么?还是你用了自定义标签?

我可能忽略的某一点,导致现在有点想不通,可不可以给个简单的流程图或者时序图?谢谢!
SOA 
2014年3月04日 23:16

1个答案 按时间排序 按投票排序

0 0

采纳的答案

SOA并不是意味着要把所有的内容作服务化,需要根据实际的情况(访问量、发布的频繁程度、系统的复杂程度、开发人员的数量、可靠性的需求约束等)决定如何进行拆分:

对于问题1:之前采用过一个做法就是将页面的框架部分单独做成一个Jar包,其他War包引入进来,框架部分做成可以配置的(比如头部和尾部风格变更了,直接修改数据库就可以搞定),不是非常理想,但是解决一般性的不是很复杂的问题足够了;

对于问题2:采用远程访问(dubbo)的方式还是本地API(依赖的内容做成一个Jar包引用起来)各有优缺点:
    。远程:服务之间发布独立、降低Jar包冲突的可能性、管理起来相对复杂;
    。本地API:部署简单、管理容易、Jar包冲突可能性较高、服务之间独立性稍差;

   一般来说是二者结合的:比如Util之类的包一般是API方式的,而底层系统以独立部署的居多

最后:按照6个开发人员的规模,以及应用的场景,建议独立部署的服务控制在12个以内。

2014年3月05日 16:17

相关推荐

    SOA重在把业务变成组件和流程化模块

    通过收购其他公司,IBM面临的挑战是如何有效地整合新团队,并在其业务中采用SOA,以实现更高效的运营。IBM有一套详细的SOA路线图,逐步将各种系统和新功能纳入SOA框架。 总的来说,SOA是IBM推动业务创新和优化的...

    SOA异构系统交互指南

    **SOA(Service-...通过标准化的服务接口、服务发现机制、消息传递标准如JMS以及组件架构如SCA,SOA能够克服技术差异,实现跨系统的无缝集成。理解并实施这些概念对于构建可扩展和适应性强的企业级系统至关重要。

    基于SOA的网站监控系统设计与实现

    【基于SOA的网站监控系统设计与实现】 随着网络应用的普及,各行各业的信息化系统已成为提升工作效率的关键。然而,确保这些系统全天候稳定运行的监控系统同样至关重要。基于SOA(Service-Oriented Architecture,...

    基于SOA/J2EE电信增值业务AAA系统的设计与实现

    基于SOA/J2EE的电信增值业务AAA系统设计与实现,不仅解决了传统系统中存在的问题,如紧耦合导致的难以扩展等问题,还充分利用了现代技术的优势,实现了高性能、高可用性的目标。未来,随着更多新技术的发展,该系统...

    SOA 信息系统企业架构

    SOA(Service-Oriented Architecture,面向服务的架构)是一种设计思想和技术方法,旨在通过将业务功能和服务分解为独立的、可重用的服务组件来实现系统架构。这些服务可以通过标准协议进行通信,并且能够跨平台、跨...

    SOA专业人员指南(2 部分 soa 参考架构) pdf

    SOA(Service-Oriented Architecture,面向服务的架构)是一种设计和实现软件系统的方法论,旨在通过一组松耦合的服务来构建和管理复杂的业务流程。这些服务可以独立于实现细节被发现、组合和重用,从而提高系统的...

    一种基于SOA网管系统的分布式组件管理模块.pdf

    组件管理模块是分布式系统中的重要组成部分,它负责管理和协调各个组件的功能,确保组件之间高效、协同的工作。组件管理模块通常包括组件的注册、发现、配置、监控和故障处理等功能,保证了分布式系统中组件的动态性...

    面向服务体系架构(SOA)和业务组件(BC)的思考

    而在SOA中,“组件化”成为实现系统灵活性和可复用性的关键手段之一。本文将深入探讨SOA中的业务组件(Business Component, BC)的概念和技术实现,并通过具体的模型和案例来阐述如何基于Web服务和OSGi标准来进行...

    基于SOA架构的物流系统的设计与实现

    ### 基于SOA架构的物流系统的设计与实现 #### 一、引言 ...通过上述步骤,基于SOA的物流系统不仅能够实现各个子系统间的有效集成,还能够提高系统的可扩展性和可维护性,从而更好地满足企业的业务需求。

    某公司soa管理子系统实例

    综上所述,这个"某公司SOA管理子系统实例"是一个典型的SSH框架应用,它通过SOA的设计思想,将业务逻辑分解为独立的服务,实现了模块化的管理和操作,体现了SOA架构的优势。同时,通过对SSH框架的深入理解和灵活运用...

    SOA软件架构的实现

    ### SOA软件架构的实现 #### 一、SOA企业应用架构概述 SOA(Service-Oriented Architecture,面向服务的架构)是一种设计思想和技术框架,它强调将应用程序的不同功能单元通过服务接口联系起来,这些服务接口是...

    基于SOA的设计与实现

    SOA 的理论概念 与具体实施方案基于SOA的设计与实现基于SOA的设计与实现

    基于SOA的分布式服务器性能监控系统实现.pdf

    在实现基于SOA的分布式服务器性能监控系统时,通常会采用J2EE平台作为基础架构,因为它提供了丰富的服务组件和强大的中间件支持。J2EE的分层模型与SOA的理念相吻合,能够方便地将底层系统资源抽象为服务,从而实现...

    SOA事务处理系统设计与实现

    【SOA事务处理系统设计与实现】 面向服务的架构(Service-Oriented Architecture,简称SOA)是一种现代软件开发和集成的方法,它强调通过松耦合的服务来构建应用程序。在SOA环境中,服务是可重用的功能单元,它们...

    共享平台逻辑架构设计,基于SOA面向服务管理架构模式实现

    本次项目的一项重点就是实现原有应用系统的全面升级以及新的应用系统的开发,从而建立行业的全面的应用系统架构...整体应用系统通过SOA面向服务管理架构模式实现应用组件的有效整合,完成应用系统的统一化管理与维护。

    采用SOA 构建和集成行业应用系统

    ### 采用SOA构建和集成行业应用系统 #### 一、引言 随着信息技术的快速发展,烟草行业在信息化建设方面取得了显著成就。然而,在信息化进程中,行业也面临着一系列挑战,如信息系统之间的互通与共享问题、庞大的...

Global site tag (gtag.js) - Google Analytics