课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展程序员能够掌握的软件架构方法也在不断的增加,今天我们就一起来了解一下,常用的几种软件架构方法的特点。
1、分层
分层是企业应用系统中常见的一种架构模式,将系统在横向维度上切分成几个部分,每个部分负责一部分相对比较单一的职责,然后通过上层对下层的依赖和调用组成一个完整的系统。
在网站架构中,通常将应用系统分为应用层、服务层、数据层
通过分层,可以更好地将一个庞大的软件系统切分成不同的部分,便于分工合作开发和维护。各层之间具有一定的独立性,只要维持调用接口不变,各层可以根据具体问题独立演化发展而不需要其他层必须做出相应调整。
但是分层架构也有一些挑战,就是必须合理规划层次边界和接口,在开发过程中,严格遵循分层架构的约束,禁止跨层调用及逆向调用。在实践中,大的分层结构内部还可以继续分层。
分层架构是逻辑上的,三层结构可以部署在同一个物理机器上。但是随着网站业务的发展,必然需要对已经分层的模块分离部署,使网站拥有更多的计算资源以应对越来越多的用户访问。
2、分割
分层是将软件在横向方面进行切分,分割则是在纵向方面对软件进行切分。
网站越大,功能越复杂,服务和数据处理的种类也越多。将这些不同的功能和服务分割开来,包装成高内聚低耦合的模块单元,一方面有助于软件的开发和维护;另一方面,便于不同模块的分布式部署,提高网站的并发处理能力和功能扩展能力。
大型网站分割的粒度可能会很小。比如在应用层,将不同业务进行分割,例如将购物、论坛、搜索、广告分割成不同的应用,由独立的团队负责,部署在不同的服务器上。
3、分布式
对于大型网站,分层和分割的一个主要目的是为了切分后的模块便于分布式部署,即将不同模块部署在不同的服务器上,通过远程调用协同工作。分布式意味着可以使用更多的资源完成同样的功能,能够处理的并发访问和数据量也更大。
但分布式在解决网站高并发问题的同时也带来了其他问题。典型的有下面几点:
意味着服务调用必须通过网络,这可能会对性能造成比较严重的影响。
服务器越多,宕机的概率也就越大,造成的服务不可用可能会导致很多应用不可访问,使网站可用性降低。
数据在分布式的环境中保持数据一致性非常困难,分布式事务也难以保证。
系统依赖错综复杂,开发管理维护困难。
因此分布式设计要根据具体情况量力而行。常用的分布式方案有:分布式服务、分布式数据库、分布式计算、分布式配置、分布式锁和分布式文件系统等。
希望这辈子,最让你无悔的事情就是来达内学习!学习向来不是件易事,但无论过程多么艰难,希望你依然热爱生活,热爱学习!永远记得,达内将与你一同前行!现在扫码,立即领取万元课程礼包,助力0基础快速入行,为你梳理行业必备技能,全方位了解岗位发展前景!
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。