美文网首页
系统分析与设计

系统分析与设计

作者: 哓晓的故事 | 来源:发表于2017-10-17 10:19 被阅读0次

    企业系统集成(EAI Enterprise Application Integrate)

    1. 2001年的设计

    Web应用服务器应该支持 对象构建(Component),提供清晰的构建工作与管理模型
    支持多服务器运行并且提供负载均衡功能,方便实施服务器故障转移
    重视 服务器部署的速度和易用程度
    数据库访问采用 数据库连接池技术

    • 负载均衡分为2种,基于进程工作基于线程工作
      进程工作的弱点是:
      • 进程更消耗系统资源,进程本身转换时的开销会消耗更多的地址空间资源
      • 创建子进程的内存开销更大,耗时更长,系统能启动的进程数要比能启动的线程数少,可并行处理能力弱
      • 虽然进程是预先创建好的,而线程是动态生成的,进程这块要比线程优秀(但是可以使用线程池预先创建线程的方式来提高这块损耗)
    • 成为当时标准的对象访问接口名称:JMS,CORBA,RMI,EJB,DCOM,HTTP,RPC,Restful API
    • 设立专用会话服务器(保存所有会话信息)方式的优缺点
      • 优点:会话信息保存在服务端安全,不会泄露用户信息,不会出现会话同步丢失问题,便于实现负载算法,加强容错能力(可以做mod负载到多台机器,一致性哈希实现安全)
      • 缺点:压力全部集中在会话服务器无法负载 需要额外的一次内部服务网络通信,导致处理速度下降(现在的服务器性能这块不算问题)

    1. 2001年的设计

    系统总体架构由 OA系统,集成化的MIS系统,数据处理与分析系统,网络管理系统

    • 提高系统数据统计、分析和图形实时性
      采用 Oracle 数据库,采用数据库连接池,采用缓存技术(js+dubbo+java+jdbc+oracle)
    • 初步模型使用SAS系统作数据处理与分析,但是却没有达到SAS的应用能力
      SAS是一个统计分析系统,只有在长期运行后,积累大量的历史数据,才能发挥其统计分析的能力,而刚开机运行的系统,并不能快速体现SAS的能力
    • 应用集成的基本步骤
      1. 系统平台集成
      2. 数据集成(不同数据库系统之间能转换和交换数据)
      3. 应用集成(构建装配,由中间件提供)
      4. 业务处理流程集成(工作流方式)

    1. 2003年的设计

    EAI 集成建议采用 微服务或者SOA方式

    • 企业应用集成会遇到哪些问题
      系统选择技术不兼容,暴露服务接口定义不兼容,数据模型不兼容,业务流程不兼容
      • 异构数据库及数据接口规范一致性问题
      • 实现手段多样性问题
      • 应用系统多、复杂多变、风险不确定性
      • 业务处理流程不统一
      • 企业管理和组织问题
    • 为什么选择J2EE作为EAI的集成平台
      J2EE将系统进行分成,系统前后解耦,便于系统整合和扩展
      J2EE具有平台独立性,在规范的开放性、灵活性、支持异构性和可移植性上,更有优势,安全性
      J2EE定义了分布式环境中多层应用系统的体系结构,分为:表现层业务逻辑层基础设施层
      • 基础设施层要保持稳定,不要轻易变更
      • 表现层不要混杂业务代码
    • J2EE提供了哪些通信协议和标准规范
      EJB,JDBC,RMI,JMS,JNDI,Java Servlet,JSP
    • Web Service有哪些技术
      XML,SOAP,WSDL,UUDI,HTTP
    SOAP 是一种通信协议=HTTP+XML+RPC
    WSDL 是web服务的[SDK标准/接口定义]
    UDDI 提供一种Web服务的发布、查找和定位方法
    
    • Web Service哪些特性使之更快
      web service 工具箱都提供了快速创建和部署规范的web service,并且一些web service工具箱还提供了图形化的流程设计器,能加快开发(web体系结构优点:高度通用性和易用性、完全的平台、语言独立、高度的集成性、容易部署和发布
    Web Service 使用标准的、规范的XML描述接口.
    Web服务模型三种角色:服务器、服务请求者、服务注册中心
    Web服务模型的操作:发布服务描述、查找服务描述、根据服务描述绑定或调用服务
    

    1. 2003年的设计

    可视语言的语法采用图模式来定义,用XML表示,XML解析用DOM接口实现

    • 为什么用图模式,为什么没有采用上下文无关文法
    上下文无关文法采用的是形式化的表达方式,精确性高,逻辑推理能力强,
      但是比较抽象,对非专业认识来说复杂
    而系统的目标是将需求变动快速的用可视化方式描述
    
    • 为什么用XML,而不用Lex和YACC
      XML 简洁有效,易学易懂,开放国际化标准,高效且可扩充
      实现不同数据的集成,使用于多种应用环境,客户端数据处理与计算,数据显示多样化,局部数据更新(xpath,namespace,xql)
      • XML使用XLL进行扩展链接
      • XML使用XSL进行翻译,定义文档显示格式,将XML转成HTML或其他格式
      • XML Schema定义了XML的逻辑结构,数据类型、可扩展性、更强表达
    Lex和YACC编程复杂,与具体语言相关,难以理解。
    XML具有简洁、易学易用、高效可扩展、开放的国际标准、独立于语言。
    
    • 为什么用DOM而没有用SAX应用接口
      系统目标是便于修改,所以DOM合适
    SAX适用:
      - 大型文件处理
      - 只需要从文件中获取特定信息
      - 想建立自己的对象模型
      - 只能读不能修改
      - 事件驱动
    DOM适用:
      - 在内存中建立文件树,树形结构,占用较大内存
      - 需要对文件进行修改
      - 需要随机对文件进行存取
    

    1. 2004年的设计

    应用服务器要解决负载均衡、数据库连接池、高速缓存机制

    • 为什么是数据库连接池技术?优势?
      在系统启动初期,完成部分数据库连接并保存在内存池不释放,后续请求连接复用池内建立的数据库连接。
      减少数据库的处理时间,有利于提高系统的整体性能和扩展性
    • 应用服务器可以用哪些高速缓存?是如何改进性能?
      数据库缓存 在本地缓存一份数据库数据
      页面缓存 针对URL
    • 电商系统,选择一种应用服务器,技术和特征?

    相关文章

      网友评论

          本文标题:系统分析与设计

          本文链接:https://www.haomeiwen.com/subject/pjlluxtx.html