转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> Delphi程序 >> 正文
用Delphi建立通讯与数据交换服务器—Transceiver技术剖析(上)         ★★★★

用Delphi建立通讯与数据交换服务器—Transceiver技术剖析(上)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:750 更新时间:2009/4/23 18:35:22
Delphi建立通讯与数据交换服务器—Transceiver技术剖析(上) 作者:火鸟 redbirdli@hotmail.com 引言 在国内常见的信息化开发及实施项目中,大多数开发的工作量都集中于为适应不同客户的需求差异,对特定模块进行修改,最终达到客户期望的软件功能特性。但是对于开发厂商来说,面对不同的客户开发不同的软件版本,将导致重复劳动、成本上升、维护量加大、兼容和稳定性下降等一系列问题。所以,开发者认识到实现软件的产品化,才能具备较短的项目周期与较强的市场竞争力,尽可能地适应不同客户的需求,而不会因此而泥足深陷,是客户满意度与商业利益的一个平衡点。 Transceiver 概念 Transceiver 就是为满足不同应用程序和业务项目具有差异性的通讯需求而设计开发的通用通讯产品化软件。可用于在多个应用系统间进行平台中立应用中立的统一管控的通讯和数据交换,设计初衷就是为了减少通讯模块的重复开发与增强通讯软件的集中管理。通过将发送(Send)与接收(Receive)抽象为等同的一个从信源(Source)到信宿(Target)的数据流过程,集成现有常用通讯方式的收发处理,及对通讯异常的容错缓冲处理(Queue),构成了Transceiver 足以满足企业级通讯需求的强大功能。 以下为Transceiver 应用举例 通讯方向 信源(Source) 缓冲(Queue) 信宿(Target) 实现功能 C1.发送数据 S1.从本地FILE获得 如信宿出现异常,数据可在Transceiver中缓冲,并由Transceiver负责重发 T1.提交到远端TCP端口 向远端传输文件 C2.接收数据 S2.从远端POP3获得 T2.提交到另一SMTP账号 邮件转发 C3.发送数据 S3.从本地DB获得 T3.提交到远端HTTP页面 从数据库读取并提交到网页 C4.接收数据 S4.从远端FTP获得 T4.提交到本地COM进行处理 从远端获取并交由COM处理 C5.接收数据 S5.从远程DCOM获得 T5.提交到本地MSMQ队列 从远程组件获取存入消息队列等待处理 在Transceiver 中信源(Source)和信宿(Target)都被统一视为端口(Port),如S1~S5、T1~T5,它们都是由Transceiver在运行时创建和管控的通讯组件;而类似C1~C5的几个通讯过程定义被视为信道(Channel),一个可以完成基本通讯功能的Channel由两个Port构成(一个为Source,一个为Target) ,Queue为通讯异常时的容错处理层。 如表所示,Transceiver 可以为发送/接收两类通讯过程提供全程支持。并且对信源和信宿的类型、数量和对应关系不做任何限定,可以自由设置Source与Target的匹配关系。以上表格只是列举了Transceiver通讯功能的几个用例,Transceiver抽象整合了Application、Data和Protocol三个层面的数据通讯元素,可以适应复杂多变的通讯需求,为应用程序的通讯需求提供最大化的灵活性和重用性。 附图1: Transceiver 通讯端口(Port)的交互能力 交互模式 Transceiver 功能 1. LAN/WAN、不同操作系统/应用系统间的数据发送(Send)/接收(Receive)服务      Transceiver目前可支持的通讯端口(Port)有: 通讯方式 交互层 发送端 接收端 推荐环境 TCP 协议 √ √ 企业快速以太网/没有防火墙的网络 FTP 协议 √ √ 网络间的文件传输/具有文件服务器的环境 SMTP 协议 √   B2C情况/具有邮件发送服务器 POP3 协议   √ B2C情况/具有邮件接收服务器 HTTP 协议 √ √ 跨越防火墙的网络/Internet环境 FILE 数据 √ √ 从本地文件读取/写入到本地文件 MSMQ 数据 √ √ 与大型主机等其它系统/不同应用间 DB 数据 √ √ 定制的数据库结构下/不同应用间 COM/DCOM 应用 √ √ 业务逻辑映射到专用模块接口/有特定数据处理需求的环境   正如Transceiver 应用举例所示,按Transceiver对Port和Channel的定义,以上Send/Receive两端各八种Port自由组合,即可实现8x8共64种灵活的通讯方式,足以满足复杂多变的企业应用通讯环境。 注:由于UDP协议的需求环境与TCP类似而缺乏连接安全性,所以作者没有专门实现,如有需要可以灵活增加;而在应用层面,用Delphi也很容易实现CORBA和EJB的组件接口(Port),成为Transceiver Shell的有机组成部分。 2. 用于缓冲处理的Queue机制,可对通讯异常情况进行数据缓冲队列跟踪与数据重发。  3. 数据日志记录,可对数据的时间、内容、来源、去向、缓冲次数、当前状态 进行全程记录。  4. 多语言支持,提供数据转换与用户界面的多语言支持接口,用户可根据语言需求自由添加界面语言类型和数据转码组件。   Transceiver 实现 Transceiver由Transceiver Service和Transceiver Console两部分组成, Transceiver Service又可划分为Transceiver Kernel和Transceiver Shell两个逻辑层。 附图2: Transceiver 设计架构 architecture 一、            Transceiver Console简介 Console的功能是以控制面板应用程序形式为Transceiver Service提供有效的Port、Channel定义与规则以及对传输日志、数据队列、环境参数等进行设置,不通过Console,用户也可以通过直接修改Transceiver的系统配置库和注册表对上述内容进行手工设置,限于篇幅,只向大家提供三幅截图,说明界面多语言动态支持、Transceiver Shell Port定义、Transceiver Channel定义三个方面的运行效果,实现细节不做赘述。 附图3: Transceiver Console的多语言动态支持(附图45界面语言均不同) 附图4: 通过Transceiver ConsoleTransceiver Server定义通讯Port 附图5: 组合SourcePortTargetPortTransceiver Server定义通讯Channel     作者:火鸟 redbirdli@hotmail.com 通过C#实现集合类纵览.NET Collections及相关技术 用Delphi建立通讯与数据交换服务器—Transceiver技术剖析(上) 用Delphi建立通讯与数据交换服务器—Transceiver技术剖析(下) 老东西:程序快捷方式/程序删除项/EXE自删除DIY 老东西:儿时的编程算法心得笔记


[Delphi程序]用Delphi建立通讯与数据交换服务器—Transceiver技…  
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台