CN109413181A - 一种实现应用程序的双架构模式方法 - Google Patents
一种实现应用程序的双架构模式方法 Download PDFInfo
- Publication number
- CN109413181A CN109413181A CN201811263612.4A CN201811263612A CN109413181A CN 109413181 A CN109413181 A CN 109413181A CN 201811263612 A CN201811263612 A CN 201811263612A CN 109413181 A CN109413181 A CN 109413181A
- Authority
- CN
- China
- Prior art keywords
- business
- client
- winform
- web server
- framework
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明属于通信领域,具体为一种实现应用程序的双架构模式方法,所述的方法涉及winform客户端、web服务器、数据库,所述的winform客户端内设有第一业务路由和多个第一业务模块;所述的web服务器内设有第二业务路由和多个第二业务模块;当客户选择以B/S架构运行时,所述的winform客户端发送业务指令至web服务器并接收web服务器的反馈结果;当客户选择以C/S架构运行时,所述的winform客户端将业务指令通过第一业务路由分配给对应的第一业务模块并通过第一业务模块从数据库获取反馈结果。该方法结合两种架构优势,在一个程序里同时使用两种架构,客户可以根据不同情景网络选择执行B/S架构或C/S架构,并通过业务路由选择对应的业务逻辑实现业务。
Description
技术领域
本发明涉及通信领域,具体为一种实现应用程序的双架构模式方法。
背景技术
在传统windows应用软件中主要是有B/S架构和C/S架构两种方式。
B/S架构是浏览器客户端---web服务器---数据服务器结构,通过W3浏览器来进入工作界面,极少部分业务逻辑在客户端实现,主要业务逻辑在Web服务器端实现,形成三层结构。这样使得客户端电脑负荷大大简化(因此被称为瘦客户端),不受网络环境影响,可以部署局域网,也可以部署广域网。
优点:
·分布性强,客户端零维护。只要有网络、浏览器,可以随时随地进行查询、浏览等业务处理。
·业务扩展简单方便,通过增加网页即可增加服务器功能。
·维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
·用户群适应广,可以很好适应广域网使用。
缺点:
·个性化特点明显降低,无法实现具有个性化的功能要求。
·在跨浏览器上,BS架构不尽如人意。
·客户端WEB服务器端的交互是请求-响应模式,通常动态刷新页面,响应速度明显降低。无法实现分页显示,给数据库访问造成较大的压力。
·在速度和安全性上需要花费巨大的设计成本。
·功能弱化,难以实现传统模式下的特殊功能要求。
三层结构:浏览器(显示层)---web服务器(业务逻辑层)---数据服务(数据层)
C/S架构是winform客户端----数据服务器结构。是winform为客户端,整合业务逻辑,不需Web服务端,直接和数据服务器进行交换的应用程序。C/S结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。因为客户端要负责绝大多数的业务逻辑和UI展示,又称为胖客户端。它充分利用两端硬件,将任务分配到Client和Server两端,降低了系统的通讯开销。通常只能用于局域网。
优点:
·能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器,所以CS客户端响应速度快。
·操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。
·C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。
·安全性能可以很容易保证,C/S一般面向相对固定的用户群,程序更加注重流程,它可以对权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜。
缺点:
·需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
·开发、维护成本较高,需要具有一定专业水准的技术人员才能完成,发生一次升级,则所有客户端的程序都需要改变。。
·用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户,所以适用面窄,通常用于局域网中。
简单来说,B/S需要Web服务器做中间层,适应于广域网。C/S无需Web服务器的中间层,适应于局域网。在企业级业务系统,通常是使用C/S架构,在实际运用中某时候还需要B/S的能使用广域网使用的特点。
发明内容
本发明的目的在于提供一种实现应用程序的双架构模式方法,该方法结合两种架构优势,在一个程序里同时使用两种架构,客户可以根据不同情景网络选择执行B/S架构或C/S架构,并通过业务路由选择对应的业务逻辑实现业务。
为实现上述目的,本发明提供如下技术方案:
一种实现应用程序的双架构模式方法,所述的方法涉及winform客户端、web服务器、数据库,所述的winform客户端内设有第一业务路由和多个第一业务模块;所述的web服务器内设有第二业务路由和多个第二业务模块;
当客户选择以B/S架构运行时,所述的winform客户端发送业务指令至web服务器并接收web服务器的反馈结果;所述的web服务器用于将接收的业务指令通过第二业务路由将业务指令分配给对应的第二业务模块并通过第二业务模块从数据库获取反馈结果;
当客户选择以C/S架构运行时,所述的winform客户端将业务指令通过第一业务路由分配给对应的第一业务模块并通过第一业务模块从数据库获取反馈结果;
所述的业务指令包括指令信息和用于标记第一业务模块或第二业务模块的模块编码。
在上述的实现应用程序的双架构模式方法中,所述的第一业务模块通过内网从数据库获取反馈结果。
在上述的实现应用程序的双架构模式方法中,所述的winform客户端通过用于发送数据的Call接口、用于接收数据的Return接口与第一业务路由、web服务器通信连接。
与现有技术相比,本发明的有益效果是:
保留C/S极佳的用户体验,速度快,处理能力强的特点。
有具有B/S可以不受网络制约,可广泛部署。
打包后的Winform客户,比浏览器客户更加安全。
一套代码实现两种架构,减少开发成本。
一套应用软件实现两种架构,更加方便部署维护。
客户可通过自身不同网络环境使用不同架构进行业务操作。
客户可通过自身不同客户端性能,或发挥客户端处理性能用C/S架构进行业务处理,或用B/S架构交由WEB服务器进行业务处理。
附图说明
图1为本发明实施例1的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
请参阅图1,一种实现应用程序的双架构模式方法,所述的方法涉及winform客户端、web服务器、数据库,所述的winform客户端内设有第一业务路由和多个第一业务模块;所述的web服务器内设有第二业务路由和多个第二业务模块;
当客户选择以B/S架构运行时,所述的winform客户端通过Call接口发送业务指令至web服务器并通过Return接口接收web服务器的反馈结果;所述的web服务器用于将接收的业务指令通过第二业务路由将业务指令分配给对应的第二业务模块并通过第二业务模块从数据库获取反馈结果;
当客户选择以C/S架构运行时,所述的winform客户端通过Call接口将业务指令通过第一业务路由分配给对应的第一业务模块并从Return接口通过第一业务模块从数据库获取反馈结果;
所述的业务指令包括指令信息和用于标记第一业务模块或第二业务模块的模块编码。
以B/S架构运行时,winform客户端、web服务器、数据库之间通过互联网进行通信;以C/S架构运行时,winform客户端与数据库之间通过内网进行通信;具体来说,所述的第一业务模块通过内网从数据库获取反馈结果。
更为详细来说:包括如下步骤:
步骤1:客户选择以B/S架构运行还是C/S架构运行;如果选择的是B/S架构运行,则进行步骤2,如果选择的是C/S架构运行,则进行步骤4;
步骤2:winform客户端根据客户的指令生成业务指令并通过Call接口发送到web服务器,业务指令包含了指令信息以及可处理该指令信息的第二业务模块的模块编码;比如用户在winform客户端输入“查询产品A的库存”,那么业务指令就包含了“查询产品A的库存”的指令信息以及负责查询产品A的库存的第二业务模块的模块编码;
在本步骤中,web服务器接收到业务指令,将业务指令发送给第二业务路由,第二业务路由根据业务指令中的模块编码发送至对应的第二业务模块,第二业务模块将指令信息发送至数据库,并从数据库获取相应的结果,并将该结果通过第二业务路由以Return接口反馈给winform客户端;
步骤3:步骤2完成后,winform客户端从Return接口接收结果并通过winform客户端的显示界面进行显示;
步骤4:winform客户端根据客户的指令生成业务指令并通过Call接口发送到自身所具有的第一业务路由,第一业务路由处理该业务指令并根据模块编码将指令信息发送至对应的第一业务模块;
步骤5:第一业务模块通过内网从数据库查询指令信息对应的结果并将该结果反馈至winform客户端,通过winform客户端的显示界面进行显示。
本发明的优势在于:保留C/S极佳的用户体验,速度快,处理能力强的特点。有具有B/S可以不受网络制约,可广泛部署。打包后的Winform客户,比浏览器客户更加安全。一套代码实现两种架构,减少开发成本。一套应用软件实现两种架构,更加方便部署维护。客户可通过自身不同网络环境使用不同架构进行业务操作。客户可通过自身不同客户端性能,或发挥客户端处理性能用C/S架构进行业务处理,或用B/S架构交由WEB服务器进行业务处理。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
Claims (3)
1.一种实现应用程序的双架构模式方法,其特征在于,所述的方法涉及winform客户端、web服务器、数据库,所述的winform客户端内设有第一业务路由和多个第一业务模块;所述的web服务器内设有第二业务路由和多个第二业务模块;
当客户选择以B/S架构运行时,所述的winform客户端发送业务指令至web服务器并接收web服务器的反馈结果;所述的web服务器用于将接收的业务指令通过第二业务路由将业务指令分配给对应的第二业务模块并通过第二业务模块从数据库获取反馈结果;
当客户选择以C/S架构运行时,所述的winform客户端将业务指令通过第一业务路由分配给对应的第一业务模块并通过第一业务模块从数据库获取反馈结果;
所述的业务指令包括指令信息和用于标记第一业务模块或第二业务模块的模块编码。
2.根据权利要求1所述的实现应用程序的双架构模式方法,其特征在于,所述的第一业务模块通过内网从数据库获取反馈结果。
3.根据权利要求1所述的实现应用程序的双架构模式方法,其特征在于,所述的winform客户端通过用于发送数据的Call接口、用于接收数据的Return接口与第一业务路由、web服务器通信连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811263612.4A CN109413181A (zh) | 2018-10-28 | 2018-10-28 | 一种实现应用程序的双架构模式方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811263612.4A CN109413181A (zh) | 2018-10-28 | 2018-10-28 | 一种实现应用程序的双架构模式方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109413181A true CN109413181A (zh) | 2019-03-01 |
Family
ID=65469298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811263612.4A Pending CN109413181A (zh) | 2018-10-28 | 2018-10-28 | 一种实现应用程序的双架构模式方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109413181A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995797A (zh) * | 2019-11-19 | 2020-04-10 | 湖北民族大学 | 多层b/s与c/s混合式软件系统、各层之间异步实时通信方法 |
CN112260879A (zh) * | 2020-12-08 | 2021-01-22 | 长沙树根互联技术有限公司 | 设备模拟器运行环境的确定方法、装置和电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080072297A1 (en) * | 2006-09-20 | 2008-03-20 | Feitian Technologies Co., Ltd. | Method for protecting software based on network |
CN101267441A (zh) * | 2008-04-23 | 2008-09-17 | 北京航空航天大学 | 一种c/s和b/s混合架构模式实现方法和平台 |
CN102480510A (zh) * | 2010-11-30 | 2012-05-30 | 汉王科技股份有限公司 | C/s和b/s混合架构的实现方法和装置 |
CN102882878A (zh) * | 2012-09-28 | 2013-01-16 | 浙江图讯科技有限公司 | 基于Web的数据分析客户端个性化展现的方法及系统 |
CN102982411A (zh) * | 2012-11-19 | 2013-03-20 | 南宁市城规地理信息技术中心 | 城市规划市民互动系统 |
CN105554073A (zh) * | 2015-12-08 | 2016-05-04 | 锐达互动科技股份有限公司 | 一种通过cs与bs架构相结合实现硬件设备集中管理控制的方法 |
CN105871822A (zh) * | 2016-03-25 | 2016-08-17 | 山东超越数控电子有限公司 | 一种基于b/c/s混合模式的单点登录系统开发模型 |
CN106506503A (zh) * | 2016-11-15 | 2017-03-15 | 航天信息股份有限公司 | 一种用于促使b/s和c/s混合架构的用户终端行为统一的系统和方法 |
CN108337311A (zh) * | 2018-02-05 | 2018-07-27 | 广州中元软件有限公司 | 一种面向服务的应用程序集中调配的方法和系统 |
-
2018
- 2018-10-28 CN CN201811263612.4A patent/CN109413181A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080072297A1 (en) * | 2006-09-20 | 2008-03-20 | Feitian Technologies Co., Ltd. | Method for protecting software based on network |
CN101267441A (zh) * | 2008-04-23 | 2008-09-17 | 北京航空航天大学 | 一种c/s和b/s混合架构模式实现方法和平台 |
CN102480510A (zh) * | 2010-11-30 | 2012-05-30 | 汉王科技股份有限公司 | C/s和b/s混合架构的实现方法和装置 |
CN102882878A (zh) * | 2012-09-28 | 2013-01-16 | 浙江图讯科技有限公司 | 基于Web的数据分析客户端个性化展现的方法及系统 |
CN102982411A (zh) * | 2012-11-19 | 2013-03-20 | 南宁市城规地理信息技术中心 | 城市规划市民互动系统 |
CN105554073A (zh) * | 2015-12-08 | 2016-05-04 | 锐达互动科技股份有限公司 | 一种通过cs与bs架构相结合实现硬件设备集中管理控制的方法 |
CN105871822A (zh) * | 2016-03-25 | 2016-08-17 | 山东超越数控电子有限公司 | 一种基于b/c/s混合模式的单点登录系统开发模型 |
CN106506503A (zh) * | 2016-11-15 | 2017-03-15 | 航天信息股份有限公司 | 一种用于促使b/s和c/s混合架构的用户终端行为统一的系统和方法 |
CN108337311A (zh) * | 2018-02-05 | 2018-07-27 | 广州中元软件有限公司 | 一种面向服务的应用程序集中调配的方法和系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995797A (zh) * | 2019-11-19 | 2020-04-10 | 湖北民族大学 | 多层b/s与c/s混合式软件系统、各层之间异步实时通信方法 |
CN110995797B (zh) * | 2019-11-19 | 2022-03-15 | 湖北民族大学 | 多层b/s与c/s混合式软件系统、各层之间异步实时通信方法 |
CN112260879A (zh) * | 2020-12-08 | 2021-01-22 | 长沙树根互联技术有限公司 | 设备模拟器运行环境的确定方法、装置和电子设备 |
CN112260879B (zh) * | 2020-12-08 | 2021-03-16 | 长沙树根互联技术有限公司 | 设备模拟器运行环境的确定方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102591724B (zh) | 消息交互方法及装置 | |
CN106445484B (zh) | 通过软件开发工具包实现数据跟踪的方法及系统 | |
CN102163206B (zh) | 页面加载方法及系统 | |
CN106657370A (zh) | 数据传输方法及装置 | |
WO1994018626A1 (en) | Method and apparatus for selecting between a plurality of communication paths | |
CN103338230B (zh) | 一种业务数据的处理方法及系统 | |
CN101136938A (zh) | 一种移动互联网应用的集中式管理方法和平台系统 | |
CN104618488A (zh) | 一种信息处理方法、客户端及服务器 | |
CN104320482A (zh) | 一种银行柜员前端系统 | |
CN103577197A (zh) | 一种安卓应用程序动态表单的实现方法 | |
CN102467506A (zh) | 一种Cookie的处理方法和系统 | |
CN108334411A (zh) | 一种BMC中基于Redfish的资源调用方法及装置 | |
CN102185855A (zh) | 一种交互式的全媒体数字信息系统 | |
CN106709713A (zh) | 一种管理用户多个可穿戴设备的方法 | |
CN102111288A (zh) | 一种机器对机器的网络管理架构 | |
CN109413181A (zh) | 一种实现应用程序的双架构模式方法 | |
CN102710793A (zh) | 一种基于云计算的网络印刷系统以及用于该系统中的数据存储方法 | |
CN101686245A (zh) | 用于隔离超文本传输协议会话的方法和系统 | |
CN102196027A (zh) | 一种实现移动云服务的系统及方法 | |
CN105245369B (zh) | 一种支持多传输协议的组件发布容器方法 | |
JP2001034679A (ja) | ハンドヘルド装置に基づく株取引システム | |
CN107659491A (zh) | 一种基于即时通讯的群组文件共享方法及系统 | |
CN103561113B (zh) | Web Service接口的生成方法及装置 | |
CN101304410A (zh) | 分布式web的智能信息平台 | |
CN103139306B (zh) | 面向浏览截取页面信息的转发与企业合作信息交互获取的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190301 |