B/S和C/S的区别及应用【转】

B/S和C/S都是软件架构的方式,首先分别描述下B/S和C/S:

    b/s(Browser/Server):浏览器/服务器,浏览器也就是指的是web浏览器如微软的Internet Explorer、Mozilla的Firefox、Opera和Safari等,随着Internet技术的兴起,对C/S架构的改进,为了区别于传统的C/S 模式,特意称为B/S模式。在这种模式下,极少的逻辑是在前端(Browser)实现,主要事务逻辑在服务器端(Server)实现,和DB端构形成三层结构。这样就极大程度上减轻了客户端.

    c/s(Client/Server):客户端/服务端,C/S 架构是一种典型的两层架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。

 

上面一大堆官方的话,我们现在就来分析下,这两种架构的优缺点:

    b/s的优点:

分布性强,客户端零维护。只要有网络、浏览器,可以随时随地进行查询、浏览等业务处理。 
业务扩展简单方便,通过增加网页即可增加服务器功能。  
维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 
开发简单,共享性强。
    b/s的缺点:

个性化特点明显降低,无法实现具有个性化的功能要求。不过随着html5的普及,这个缺点越来越弱化了。 
客户端服务器端的交互是请求-响应模式,通常动态刷新页面,响应速度明显降低(Ajax可以一定程度上解决这个问题)。无法实现分页显示,给数据库访问造成较大的压力。 
    c/s的优点:

能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器,所以CS客户端响应速度快。
操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。  
安全性能可以很容易保证,C/S一般面向相对固定的用户群,程序更加注重流程,它可以对权限进行多层次校验,提供了更安全的存取模式,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜。
    c/s的缺点:

需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。  
开发、维护成本较高,需要具有一定专业水准的技术人员才能完成,发生一次升级,则所有客户端的程序都需要改变。。
用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户,所以适用面窄,通常用于局域网中。

 

总结的来说啊,就是
   B/S 只需要有操作系统和浏览器就行,可以实现跨平台,客户端零维护,但是个性化能力低,响应速度较慢

   C/S响应速度快,安全性强,一般应用于局域网中,因为要针对不同的操作系统,需要针对性的开发,并且维护成本高

我觉得还是B/S现在用的广泛,像互联网+,当然我的认知还是很浅的,没有接触过更高的层次,还得继续努力。
---------------------

原文:https://blog.csdn.net/a964921988/article/details/78707105

======================================

延伸EJB

EJB的是个什么东西?

https://www.cnblogs.com/strugglion/p/6027318.html

 

EJB:将业务逻辑从客户端软件中抽取出来,封装在一个组件中。这个组件运行在一个独立的服务器上,客户端软件通过网络调用组件提供的服务以实现业务逻辑,而客户端软件的功能单纯到只负责发送调用请求和显示处理结果

a.EJB实现原理: 就是把原来放到客户端实现的代码放到服务器端,并依靠RMI进行通信。

b.RMI实现原理 :就是通过Java对象可序列化机制实现分布计算。

c.服务器集群: 就是通过RMI的通信,连接不同功能模块的服务器,以实现一个完整的功能。

 

 

posted @ 2019-04-03 15:35  百事可口  阅读(256)  评论(0编辑  收藏  举报