一种基于三层架构的数据传输系统及数据传输方法

文档序号:7761079阅读:526来源:国知局
专利名称:一种基于三层架构的数据传输系统及数据传输方法
技术领域
本发明涉及数据传输领域,尤其涉及一种基于三层架构的数据传输系统及数据传 输方法。
背景技术
现行业应用软件大部分是基于关系式数据库的信息处理系统,即MIS系统;软件 的系统架构上从两层的C/S结构(客户端/服务器结构),发展到B/S结构(浏览器/服务 器);由于现能开发三层结构的数据传输系统的公司少,其次国内对三层结构的数据传输 的认识不足,所以现在零售行业内应用最多的是两层C/S结构,或B/S结构。在此以连锁零售行业的业务管理系统为例,品牌连锁零售业企业通常在全国各 省、市、区都拥有自己的店铺,每间店铺有一台或者上百、上千台收银系统,随着经营规模的 日益扩展,总部对店铺的管理业务越来越繁重,大量的数据传输、上万的货品信息、库存信 息、上十万的会员群体,加上各区域成本的差异、价格的差异令数据的汇总和计算量成几何 级数增加。数据量庞大,对现有的基于两层C/S结构,或B/S结构的数据传输系统,难于实 现数据从集中到分布过渡到从分布到集中的数据管理,不利于业务的线性扩展。现有技术中有一种采用基于4层构架的数据处理系统并使用硬件方式来实现,即 在界面层和业务处理层之间增加一层数据转发层,数据转发层由路由器组成(具体请参考 申请号为200410078182.0的中国专利申请),数据转发层用于连接后台服务子系统和客户 端,根据数据属性,将客户端与相应后台子服务系统的应用服务器相匹配,建立数据交互通 道,实现数据从集中到分布和从分布到集中的数据管理。

发明内容
本发明提供一种基于三层构架的数据处理系统和数据传输方法,平滑地实现数据 从集中到分布和从分布到集中的数据管理,实现系统性能的线性扩张。本发明公开了一种基于三层架构的数据传输系统,其特征在于,第一层包括若干 个客户端,第二层包括若干个数据处理服务器,第三层包括数据库服务器;每个所述数据处理服务器与至少一个所述客户端连接,用于收集该客户端的工作 状态以及处理所述客户端的交易数据,并将处理后的交易数据上传至所述数据库服务器; 以及从所述数据库服务器读取所述交易数据发送至所连接的所述客户端;所述数据库服务器与各所述数据处理服务器连接,用于存储交易数据。本发明还公开了一种使用该数据传输系统进行数据传输的方法,其特征在于所述第一层客户端与所述第二层的数据处理服务器建立连接;所述第二层的数据处理服务器收集所述第一层客户端的工作状态以及处理所述 第一层客户端的交易数据,并将处理后的交易数据上传至所述第三层的数据库服务器;以 及从所述第三层的数据库服务器读取所述交易数据发送至所述第一层的客户端。本发明使用软件设计若干个数据处理服务器来完成数据的收集、数据的处理、数
3据的上传下载,通过收集客户端的工作状态会获取到是否有数据交易等信息进而处理相应 的数据,并上传到数据库服务器存储,实现数据的集中管理;根据客户端需要,将所需数据 从数据库服务器下载到各客户端,实现数据的分布管理。


图1是本发明基于三层架构的数据传输系统框图;图2是本发明基于三层架构的数据传输系统的一个实施例示意图;图3是本发明基于三层架构的数据传输方法的一个流程图;图4是本发明的一个具体应用例示意图。
具体实施例方式如图1所示,这里的三层是逻辑上的三层,第一层包括若干个客户端,第二层包括 若干个数据处理服务器,第三层包括若干数据库服务器;每个数据处理服务器与至少一个客户端连接,用于收集该客户端的工作状态以及 处理客户端的交易数据;数据处理服务器将处理后的交易数据上传至数据库服务器;数据处理服务器从数据库服务器读取交易数据发送至所连接的客户端;数据库服务器与各数据处理服务器连接,用于存储交易数据。本发明使用软件设计若干个数据处理服务器来完成数据的收集、数据的处理、数 据的上传下载和,通过收集客户端的工作状态会获取到是否有数据交易等信息进而处理相 应的数据,并上传到数据库服务器存储,实现数据的集中管理;根据客户端需要,将所需数 据从数据库服务器下载到各客户端,实现数据的分布管理。下面是本发明的一个实施例,如图2,有三套数据处理服务器数据处理服务器 204、数据处理服务器205和数据处理服务器206,他们分别安装在不同的硬件服务器上(比 如计算机),为方便说明用A、B、C分别代表数据处理服务器204、数据处理服务器205和数 据处理服务器206。A所在的硬件服务器的IP地址是192. 168. 0. 1,A的端口号是001 ;B所 在的硬件服务器的IP地址是192. 168. 0. 2,B的端口号是002 ;C所在的硬件服务器的IP地 址是192. 168. 0.3,C的端口号是003 ;当系统启动A、B、C这三套数据处理服务器后,他们会 将自己所在的IP地址和自身的端口号通知对方,例如A将其所在的IP地址192. 168. 0. 1 和自身端口号001通知B和C ;B将其所在的IP地址192. 168. 0. 2和自身端口号002通知 A和C ;C将其所在的IP地址192. 168. 0. 3和自身端口号003通知B和A ;同时还有3个客户端客户端201、客户端202和客户端203 ;客户端可以自动向 A、B、C发送检测信息检测连A、B、C中的哪一个速度比较快,检测信息包括字节数和发送时 间,客户端会收到检测返回信息,该检测返回信息中包括上述的字节数和返回时间,根据返 回时间与发送时间的时间间隔的长短去判断与所述数据处理服务器的连接速度是否一样。 当系统启动后,客户端连接数据处理服务器时,客户端会首先检测数据库处理服务器的速 度,选择速度最快的那个数据处理服务器进行连接;如果检测到A的速度最快,则连接A ;客 户端也可以定义连接A、B、C的顺序,客户端201的定义的连接顺序为A — B — C ;客户端 202的定义的连接顺序为B — A — C ;客户端203的定义的连接顺序为A — C — B ;他们将
4各自定义的连接顺序存储起来。如果检测到连接速度一样,则根据自身定义的连接顺序连 接对于客户端201来说,若与A连接不成功,则会自动与B连接;若与B也连接不成功,则 会与C连接。在本发明实施例中,客户端通过自动检测与数据处理服务器的连接速度,选择连 接速度最快的一个进行连接;也可以通过预先存储与数据处理服务器的连接顺序,当连接 速度一样时再以自定义方式决定与哪个数据处理服务器连接,当与第一顺位的连接不成功 时,自动连接第二顺位的数据处理服务器。本发明的另一个实施例,同样参考图2,有三套数据处理服务器数据处理服务器 204、数据处理服务器205和数据处理服务器206,他们分别安装在不同的硬件服务器上(比 如计算机),为方便说明用A、B、C分别代表数据处理服务器204、数据处理服务器205和数 据处理服务器206。数据处理服务器由监控服务模块、通讯服务模块、交易数据处理服务模 块、成本计算服务模块和库存计算服务模块五个子模块组成,各个子模块有自己对应的端 口号。每个客户端都有对应的唯一的ID (Identity,身份标识号码)。系统启动后,若A与 客户端201连接,B与客户端202连接,C与客户端203连接,他们之间采用Socket方式通 讯,支持任意组网。A、B、C将其自身的服务信息(如服务名称和数据处理服务器的端口号 等等)和各自连接的客户端的唯一的ID上传到数据库服务器,某一时刻,客户端201的工 作已经完成不需要连接A,自行切断与A的连接,A会将这断开连接的信息(如客户端ID、 A的端口号和断开连接时间等等)上传到数据库服务器,此时A作为后备数据处理服务器, 扫描数据库服务器。由于某种原因,B不能正常工作,A扫描数据库服务器发现B对应的服 务中断,A会立即启动继续提供服务。收集客户端202的工作状态(例如是否在线、是否 已更新最新数据和是否产生交易数据等等)和处理客户端202的交易数据,并上传到数据 库服务器。若A发现客户端202没有更新最新数据,将从数据库服务器下载最新的数据到 客户端202。本发明实施例中,数据处理服务器会根据扫描数据库服务器的结果来启动对应的 服务,当有数据处理服务器停止工作后,会启动另外一套来保证系统的稳定性。下面介绍使用本发明公开的数据传输系统进行数据传输的方法,参考图3,步骤如 下301、第一层客户端与第二层的数据处理服务器建立连接;302、第二层的数据处理服务器收集第一层客户端的工作状态以及处理第一层客 户端的交易数据;303、将处理后的交易数据上传至第三层的数据库服务器;304、从第三层的数据库服务器读取交易数据发送至第一层的客户端。上述方法还可以包括步骤第一层客户端连接第二层的其中一台处理服务器时, 从所连接的该处理服务器获取该层的各处理服务器的IP地址和端口号,根据预先定义的 连接顺序选择当前连接的处理服务器。客户端通过预先存储与数据处理服务器的连接顺序,可以自定义先与哪个数据处 理服务器连接,当与第一顺位的连接不成功时,自动连接第二顺位的数据处理服务器。此外,还可以包括步骤第二层的数据处理服务器启动后将自身的服务信息以及 所连接的客户端的ID存入数据库服务器;第二层的其他数据处理服务器扫描数据库服务器,当在数据库服务器中未找到自身的服务信息时进行启动。客户端的工作状态可以包括是否在线、是否已更新最新数据和是否产生交易数据等等。数据处理服务器会根据扫描数据库服务器的结果来启动对应的服务,当有数据处 理服务器停止工作后,会启动另外一套来保证系统的稳定性。下面是本发明的具体应用例,请参考图4,这是一个零售行业的业务管理系统框 图,本应用例分为4级,第一级由若干收银机组成,收银机包括收银机401、收银机402、收 银机403和收银机404 ;第二级由店铺数据库406店铺数据库408、数据处理服务器407和 数据处理服务器405组成;第三级由区域数据库401和数据处理服务器409组成;第四级由 公司总部数据库412和数据处理服务器411组成。收银机401和收银机402把商品类别、商品价格等信息通过数据处理服务器405 上传至店铺数据库406 ;收银机403和收银机404把商品类别、商品价格等信息通过数据处 理服务器407上传至店铺数据库408 ;店铺数据库406和店铺数据库408通过数据处理服 务器409把相应的数据信息上传至第三级的区域数据库410 ;区域数据库410通过数据处 理服务器411把相应的数据信息上传至总部数据库412,由总部集中管理。当有新商品上架或者原有商品价格改变,把相应的信息录入总部数据库412中, 再把这些数据信息更新到区域数据库410,进而更新到下一级的店铺数据库406和店铺数 据库408,再由店铺数据库更新到各收银机。收银机也可以直接在总部数据库中查询商品价 格等相关信息。以上的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精 神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之 内。
权利要求
一种基于三层架构的数据传输系统,其特征在于,第一层包括若干个客户端,第二层包括若干个数据处理服务器,第三层包括数据库服务器;每个所述数据处理服务器与至少一个所述客户端连接,用于收集所述客户端的工作状态、以及处理所述客户端的交易数据,并将处理后的交易数据上传至所述数据库服务器;以及从所述数据库服务器读取所述交易数据发送至所连接的所述客户端;所述数据库服务器与各所述数据处理服务器连接,用于存储交易数据。
2.根据权利要求1所述的基于三层架构的数据传输系统,其特征在于所述数据处理 服务器还用于在启动后将自身的IP地址和通讯端口号通知该层的其他所述数据处理服务 器;所述客户端还用于预先存储连接顺序,以及当连接第二层的其中一台所述数据处理服 务器时,从所连接的该数据处理服务器获取该层的各所述数据处理服务器的IP地址和端 口号并向所述数据处理服务器发送检测信息和接收检测返回信息;所述检测信息包括字节 数和发送时间;所述检测返回信息包括所述字节数和返回时间;根据返回时间与发送时间 的时间间隔的长短去判断与所述数据处理服务器的连接速度是否一样,若否,则选择速度 最快的数据处理服务器进行连接;若是,则根据所述客户端预先存储的连接顺序进行连接。
3.根据权利要求1所述的基于三层架构的数据传输系统,其特征在于,所述数据处理 服务器还用于在启动后将自身的服务信息以及所连接的客户端的ID存入所述数据库服务 器;以及在未启动时扫描所述数据库服务器,当在所述数据库服务器中未找到自身的服务 信息时进行启动。
4.根据权利要求1所述的基于三层架构的数据传输系统,所述客户端的工作状态包括 是否在线;是否已更新最新的数据;是否产生交易数据。
5.一种使用权利要求1所述的数据传输系统进行数据传输的方法,其特征在于所述第一层客户端与所述第二层的数据处理服务器建立连接;所述第二层的数据处理服务器收集所述第一层客户端的工作状态以及处理所述第一 层客户端的交易数据,并将处理后的交易数据上传至所述第三层的数据库服务器,以及从 所述第三层的数据库服务器读取所述交易数据发送至所述第一层的客户端。
6.根据权利要求5所述的数据传输系统进行数据传输的方法,其特征在于,所述步骤 还包括当第二层的一个数据处理服务器启动后,将自身的IP地址和通讯端口号通知该层 的其他所述处理服务器;所述第一层客户端与所述第二层的数据处理服务器建立连接的步骤具体包括当第一层客户端连接第二层的其中一台所述处理服务器时,从所连接的该处理服务器 获取该层的各所述处理服务器的IP地址和端口号,根据预先定义的连接顺序选择当前连 接的所述处理服务器。
7.根据权利要求5所述的数据传输系统进行数据传输的方法,其特征在于,所述步骤 还包括所述第二层的数据处理服务器启动后将自身的服务信息以及所连接的客户端的ID存 入所述数据库服务器;第二层的其他数据处理服务器扫描所述数据库服务器,当在所述数据库服务器中未找 到自身的服务信息时进行启动。
全文摘要
本发明公开了一种基于三层架构的数据传输系统,其特征在于,第一层包括若干个客户端,第二层包括若干个数据处理服务器,第三层包括数据库服务器;每个所述数据处理服务器与至少一个所述客户端连接,用于收集所述客户端的工作状态以及处理所述客户端的交易数据,并将处理后的交易数据上传至所述数据库服务器;以及从所述数据库服务器读取所述交易数据发送至所连接的所述客户端;所述数据库服务器与各所述数据处理服务器连接,用于存储交易数据。
文档编号H04L29/08GK101951382SQ201010296179
公开日2011年1月19日 申请日期2010年9月28日 优先权日2010年9月28日
发明者骆永基 申请人:广州市科传计算机科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1