三层架构中主要功能与业务逻辑一般的客户端和数据库

概览

三层架构顾名思义,分为三层,分别是“数据访问层”、“业务逻辑层”和“表示层”。

数据访问层:数据访问层在操作过程中访问数据系统中的文件,实现对数据库中数据的读取和保存操作。

表示层:主要功能是显示数据和接收和传输用户数据。它可以为网站的系统运行提供一个交互式的操作界面。表现层的应用比较常见,比如Windows Forms和Web页面。

业务逻辑层:筛选用户输入信息并单独保存。建立新的数据存储方式,在存储过程中读取数据,并包含“业务逻辑”描述代码。

三层架构的软件系统为用户的数据传输、提取和存储创造了便捷的条件。在应用数据时,将信息划分为架构开发项目,明确规划不同层级之间的工作职责,从而降低网站系统的维护风险。

需要框架源码的朋友可以看我的个人简介和我联系,推荐分布式架构的源码。

三层原理

在三层中,系统的主要功能和业务逻辑都在业务逻辑层进行处理。

所谓的三层架构就是客户端和数据库之间的“中间层”,也叫组件层。这里所说的三层系统并不是指物理三层系统。它不是简单地放置三台机器或三层架构。它不仅仅是一个 B/S 应用程序,它是一个三层架构。三层系统是指逻辑上的三层,即三层放在一台机器上。

三层系统的应用程序将业务规则、数据访问、合法性验证等工作放在中间层进行处理。通常客户端不直接与数据库交互,而是通过COM/DCOM通信与中间层建立连接,再通过中间层与数据库交互。

在三层架构中,主要功能和业务逻辑一般都在业务逻辑层进行处理和实现。三层架构中的客户端和数据库应该预设在中间层,成为组件层。三层架构中的三层具有一定的逻辑,即三层设置在同一个计算机系统中,业务协议、合法验证和数据访问程序放在中间层进行信息处理。用数据库传输数据是不可能的。主要利用COM/DCOM通信与中间层建立连接通道,实现中间层与数据库之间的数据传输,进而实现客户端与数据库的交互。

图片[1]-三层架构中主要功能与业务逻辑一般的客户端和数据库-唐朝资源网

结构表示层

表现层,又称表现层UI,位于三层架构的最顶层,直接与用户接触,主要是B/S信息系统中的网页浏览页面。作为一个网页浏览页面,表示层的主要功能是实现系统数据的输入和输出。在这个过程中,可以将数据送入BLL系统进行数据处理,无需进行逻辑判断操作,处理后会反馈处理结果。进入表示层。也就是说,表现层就是实现用户界面功能,沟通反馈用户需求,使用BLL或者Models进行调试,保证用户体验。

业务逻辑层

业务逻辑层BLL的作用是对具体问题进行逻辑判断和操作。从表示层 UI 接收到用户指令后,它将连接到数据访问层 DAL。访问层位于三层架构中的表示层和数据层。中间位置也是表示层和数据层之间的桥梁。实现三层之间的数据连接和指令传输。可以对接收到的数据进行逻辑处理,实现数据修改、获取、删除等功能,并将处理结果反馈到表示层UI中,实现软件功能。

数据访问层

数据访问层DAL是数据库的主要控制系统,实现数据的增删改查等操作,并将操作结果反馈给业务逻辑层BLL。在实际操作过程中,数据访问层没有逻辑判断能力。为了实现代码编写的严谨性,提高代码阅读的程度,一般软件开发者都会在这一层编写DataAccessCommon,以保证数据访问层的DAL数据处理功能。

每一层的作用

1、数据访问层:主要是对非原始数据(数据库或文本文件等)的操作层,而不是原始数据,也就是说,它是对非原始数据的操作层。数据库,而不是数据,专门为业务逻辑层或表示层提供数据服务。

2、业务逻辑层:主要针对具体问题的操作。也可以理解为数据层的操作和数据业务逻辑的处理。如果数据层是一个积木,那么逻辑层就是为这些积木。

3、接口层:主要表示WEB模式,也可以表示为WINFORM模式,WEB模式也可以表示为:aspx,如果逻辑层相当强大完善,不管怎么呈现层定义和变化,逻辑层可以提供完善的服务。

规则

三层结构不是普通的DAL、BLL、WebUI三个模块。三层计划有一些规则需要达成一致:

1、核心模块规则,表现层只是一个外壳笛卡尔数据库中应用,不能包含任何BizLogic处理。

2、各级模块的设计应该从业务逻辑层开始,而不是表现层​​。业务逻辑层应该以面向对象的方式在 API 上实现所有 BizLogic。

3、无论数据层是简单的SqlHelper还是Classes with Mapping,都要保证与抽象系统层无关。

4、无论你使用COM+(EnterpriseService)、Remoting,还是WebService等远程对象技术,无论部署是否在服务器上,至少在设计上必须考虑多台服务器通过负载均衡进行集群。

综上所述,在考虑一个项目是否满足三层或多层设计的应用时,必须考虑它是否真正满足项目的需要。

优点和缺点

1、开发者只能关注整个结构的一层;

2、用新实现替换旧实现很容易;

3、减少层间依赖;

4、有利于标准化;

5、有利于各层逻辑复用;

6、结构更清晰;

7、在后期维护中,大大降低了维护成本和维护时间;

8、防止表现层直接访问数据访问层,表现层只与业务逻辑层相关,提高数据安全性。

9、有利于系统的去中心化开发。每一层都可以由不同的人员开发。只要遵循接口标准,使用相同的对象模型实体类,就可以大大提高系统的开发效率。速度。

10、方便系统移植。如果要将C/S系统变成B/S系统,只需要修改三层架构的表现层即可。业务逻辑层和数据访问层只需少量修改即可轻松移植到网络中。

11、项目结构更清晰,分工更清晰,有利于后期维护升级。

缺点

1、系统性能下降。这是不言而喻的。如果不采用层次结构,很多业务可以直接访问数据库获取相应的数据,但是现在必须通过中间层来完成。

2、有时会导致级联修改。这种修改尤其体现在自上而下的方向上。如果需要在表示层增加一个功能,为了保证其设计符合层次结构,可能需要在相应的业务逻辑层和数据访问层增加相应的代码。

3、增加开发成本。

申请

(1)应用服务器。

服务器一般包括有连接和无连接两种形式。对于无连接,需要在底层设置UDP/IP协议,实现服务器通信功能。同时,在实际使用过程中,由于客户端无法保证可靠的传输通道,客户端在向服务器提交请求时,容易造成丢失、延迟、乱序等传输问题传递请求,从而降低通信质量。 UDP的可靠性非常低。在实际操作中,UDP依赖底层IP网络来传递数据包,不能引入检测程序。 IP网络还取决于实际的硬件网络或相关网关来确定其工作质量。因此,从这个角度来说,底层网络的好坏直接关系到UDP的工作。在开发联网服务器的过程中,应使用TCP/IP通信协议,利用互联网创造良好的通信环境,从而提高通信数据的真实性和可靠性。 TCP/IP通信协议可以对数据信息进行校验和校对,保证数据信息的完整性。同时,在实际操作中,可以通过数据的序号来保证数据信息的有序到达,防止信息重复分组的情况。另外,这种通信协议可以有效地控制流量,保证发送信息的速度在接收方可接受的范围内笛卡尔数据库中应用,并通过互联网与服务器进行连接。

图片[2]-三层架构中主要功能与业务逻辑一般的客户端和数据库-唐朝资源网

(2)应用客户端。

在三层架构体系中,客户端是用户主要的功能体验区,相对于服务端来说是非常简单的。一方面,在运行三层架构的过程中,客户端软件需要与各个服务器进行通信,不需要过多关注并发处理。另一方面,一般客户端软件可以像传统程序一样执行指令,无需额外保护,依赖操作系统进行强制保护。但同时对接口也有极高的要求。在系统分析过程中,需要进行专门的界面设计。同时,要及时与客户沟通,把握客户的实际需求,实现高效的信息反馈和沟通,保证信息系统软件界面设计的质量和效率。

(3)数据服务器。

在选择数据服务器的过程中,根据信息系统平台要求和用户期望,以及每台服务器的特点来使用和选择。一般情况下,出于系统性能的考虑,会选择SQLSERVER数据服务器。在设计阶段,应通过Proactive等有效措施,不断优化和提高系统数据库的实际使用性能。同时,管理者应与程序员进行有效的沟通与协作,明确信息系统软件的性能目标,设定性能预期,构建满足用户实际需求的系统资源组合体系。

(4)数据库和应用服务器连接。

在基于三层架构的信息系统开发中,应用服务器应使用SQL语言连接数据库服务器。连接方式包括DB-Library、DAO和OLE,其中DB-Library是最常见的连接方式。作为SQLSERVER的重要接口层,具有很强的访问信息效率和访问速度。这主要得益于DB-Library的语言开发能力,直接省略了DAO、OLE等连接方法中抽象层的调用,节省了信息访问时间。同时,三层架构适用于使用多种开发语言的信息系统开发。它不是.NET的专利,也不是专门用于数据库的技术,而是一种更通用的架构设计理念,除了数据、逻辑、接口等层之外,在实际应用中,还会有额外的根据需要传输数据的层、接口层等。与DB-Library数据库连接后,设置NTWDBLIB.LIB,构建CDBConn实体类库系统,实现数据库与应用服务器的连接。因此,信息系统软件架构可以为系统开发创造良好的分布式计算环境,其中逻辑层可以实现多台机器的同时运行。这有效地缩短了信息系统软件开发的时间和周期,保证了信息系统的安全性和可扩展性,最大限度地发挥了系统功能。

© 版权声明
THE END
喜欢就支持一下吧
点赞191赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容