架构设计的五个核心要素,了解一下

作者:架构设计   发布时间:2020-07-31

架构中五个重要的核心指标:分别是性能、可用性、伸缩性、扩展性和安全性。


架构设计


一、性能

性能就是核心要素之一,不然我为什么架构设计?随随便便一个lowlow的系统上线就好了。所以性能优化是很多小公司迈不去过的坎。这么说吧,当然优化网站性能的手段也非常多:


(1)web前端性能优化:

1.浏览器访问优化(浏览器缓存、页面压缩传输、合理布局页面、减少Cookie传输)

2.CDN加速

3.反向代理


(2)应用服务器性能优化:

如果请求静态界面不卡了,但是动态数据还是卡,说明MySQL处理的请求太多了,可以使用服务器本地缓存和分布式缓存,也可以通过异步操作方式来加快响应,在高并发请求的情况下,可以将多台应用服务器组成一个集群共同对外服务,提高整体处理能力,改善性能,具体如下:

1.分布式缓存(网站性能优化的第一定律:优先考虑使用缓存优化性能)

2.异步化(任何可以晚点做的事情都应该晚点再做,感觉像懒加载)

3.集群

4.代码优化

5.存储性能优化


(3)数据库层优化

(4)衡量网站性能的指标(重要的有响应时间、TPS、系统性能计数器等,通过这些指标以确定系统设计是否达到目标)


(5)高可用:包括高可用的应用、高可用的服务、高可用的数据和服务于高可用的监控等,关于高可用,我还是决定开个单章讲解


二、安全性

互联网是开放的,任何人在任何地方都可以访问网站。网站的安全架构就是保护网站不受恶意访问和攻击,保护网站的重要数据不被窃取。

安全的5个要素:机密性、完整性、可用性、可控性和可审查性。


1、安全系统架构

1)安全服务是指计算机网络提供的安全防护措施,包括认证服务、访问控制、数据机密性服务、数据完整性服务和不可否认服务。

2)特定的安全机制是用来实施安全服务的机制,包括加密机制、数据签名机制、访问控制机制、数据完整性机制、认证交换机制、流量填充机制、路由控制机制和公证机制。

3)普遍性的安全机制不是为任何特定的服务而特设的,属于安全管理方面,分为可信功能度、安全标记、事件检测、安全审计跟踪和安全恢复。


2、安全保护等级

1)用户自主保护级

2)系统审计保护级

3)安全标记保护级

4)结构化保护级

5)访问验证保护级


衡量网站安全架构的标准就是针对现存和潜在的各种攻击和窃密手段,是否有可靠的应对策略。


三、可用性


衡量一个系统架构设计是否满足高可用的目标,就是假设系统中任何一台或者多台服务器宕机时,以及出现各种不可预期的问题时,系统整体是否依然可用。


一般就三个手段、冗余、集群化、分布式。


网站高可用的主要手段就是冗余,应用部署在多台服务器上同时提供服务,数据存储在多台服务器上相互备份,任何一台服务器都不会影响应用的整体可以,通常的实现手段即把多台服务器通过负载均衡设备组成一个集群。


四、扩展性


扩展性(Extensibility)指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力。表现在系统基础设施稳定不需要经常变更,应用之间较少依赖和耦合,当系统增加新功能时,不需要对现有系统的结构和代码进行修改。这个没啥好说。扩展性依赖于前期良好的架构设计。合理业务逻辑抽象,水平/垂直切割分布式化等等。


网站可扩展架构的主要手段是事件驱动架构和分布式服务。


事件驱动通常利用消息队列实现,通过这种方式将消息生产和处理逻辑分隔开。


服务器服务则是将业务和可复用服务分离开来,通过分布式服务框架调用。新增加产品可用通过调用可复用的服务来实现自身的业务逻辑,而对现有产品没有任何影响。


五、伸缩性


服务尽量同构。DB、cache在考虑分布式时尽量提前设计好扩展方案。也可以采用一些主流的对水平伸缩支持较好的nosql、memcached、hbase等。


(1)横向分离:将不同的业务模块分离部署,实现系统的伸缩性;

(2)纵向分离:将业务处理流程上得不同部分分离部署,实现系统的伸缩性;


推荐阅读:

Web站点自动化测试工具Selenium的主要功能


抖音微信读书APP被判侵害用户个人信息,你手机上使用的APP安全吗?


高考生因志愿系统崩溃错过志愿填报,网站系统性能问题如何解决?


究竟什么是敏捷开发?为何使用敏捷开发方式?


WBS是什么?创建WBS有什么作用?


性能测试概念探究—负载测试与压力测试的区别


如何编写测试用例?测试用例编写思路分享


一份好的产品需求规格说明书需要符合哪些规范?


测试计划和测试方案有什么区别?如何编写?


常见的网站性能瓶颈有哪几个?


面临流量高峰时,系统的性能瓶颈有哪些?




本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-60725088-8054),我们将立即处理,马上删除。



沪ICP备07036474号-4 |

沪公网安备 31010702003220号

2015-2023 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.