德阳建设机械网站,网站设计参考文献有哪些,三合一网站建设什么意思,新公司做网站怎么弄1.1、衡量网站的性能指标
响应时间#xff1a;指执行一个请求从开始到最后收到响应数据所花费的总体时间。并发数#xff1a;指系统同时能处理的请求数量。 并发连接数#xff1a;指的是客户端向服务器发起请求#xff0c;并建立了TCP连接。每秒钟服务器连接的总TCP数量请…1.1、衡量网站的性能指标
响应时间指执行一个请求从开始到最后收到响应数据所花费的总体时间。并发数指系统同时能处理的请求数量。 并发连接数指的是客户端向服务器发起请求并建立了TCP连接。每秒钟服务器连接的总TCP数量请求数也称为QPS(Query Per Second) 指每秒多少请求并发用户数单位时间内有多少用户吞吐量指单位时间内系统能处理的请求数量。 QPSQuery Per Second 每秒查询数。TPSTransactions Per Second 每秒事务数。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时收到服务器响应后结束计时以此来计算使用的时间和完成的事务个数。一个页面的一次访问只会形成一个TPS但一次页面请求可能产生多次对服务器的请求就会有多个QPS
1.2、集群和分布式
集群很多“人”一起 干一样的事。一个业务系统部署在多台服务器上分布式很多“人”一起干不一样的事。这些不一样的事合起来是一件大事。一个大的业务系统拆分为小的业务模块分别部署在不同的机器上 2、架构演进
随着互联网的发展互联网企业的业务也在不断的飞速发展进而导致系统的架构也在不断的发生着变化。总体来说系统的架构大致经历了单体应用架构—垂直应用架构—分布式架构—SOA架构—微服务架构的演变。 2.1、单体应用架构单机单体架构、集群单体架构
在企业发展的初期一般公司的网站流量都比较小只需要一个应用将所有的功能代码打包成一个服务部署到服务器上就能支撑公司的业务。这样也能够减少开发、部署和维护的成本。比如大家都很熟悉的电商系统里面涉及的业务主要有用户管理、商品管理、订单管理、支付管理、库存管理、物流管理等等模块初期我们会将所有模块写到一个Web项目中然后统一部署到一个Web服务器中。
优点 简单开发部署都很方便小型项目首选
缺点 项目启动慢 可靠性差 可伸缩性差 扩展性和可维护性差 性能低 2.2、垂直架构拆分成多个单体架构
垂直架构是指将单体架构中的多个模块拆分为多个独立的项目形成多个独立的单体架构。
垂直架构根据业务属性将一个大的单体应用拆分成多个模块或子系统子系统之间没有直接关联。 垂直架构相较于单体架构而言进行了部分解耦但是不够彻底在各个子系统相互依赖的代码和模块中存在模块功能重复开发和重复代码拷贝的情况。 垂直架构存在的问题 重复功能太多。 2.3、分布式架构重复模块抽取为公共服务
将系统演变为垂直应用架构之后当垂直应用越来越多时重复编写的业务代码就会越来越多。此时我们需要将重复的代码抽象出来形成统一的服务供其他系统或者业务模块调用这就是分布式架构。
分布式架构是指在垂直架构的基础上将公共业务模块抽取出来作为独立的服务供其他调用者消费以实现服务的共享和重用。
这种架构的优点如下
将重复的业务代码抽象出来形成公共的访问服务提高了代码的复用性。可以有针对性地对系统和服务进行性能优化以提升整体的访问性能。
这种架构的缺点如下
服务之间直接调用服务提供方地址等信息一旦产生变更所有消费方都需要变更。系统之间的调用关系变得复杂系统之间的依赖关系变得复杂系统维护成本高。
在分布式架构中我们会将系统整体拆分为服务层和表现层。服务层封装了具体的业务逻辑供表现层调用表现层则负责处理与页面的交互操作。分布式系统架构如下图示例 RPCRemote Procedure Call 远程过程调用。有非常多的协议和技术来都实现了RPC的过程。比如HTTP REST风格Java RMI规范、WebService SOAP协议、Hession等等。 2.4、SOA架构调度中心
在分布式架构下当部署的服务越来越多时重复的代码就会变得越来越多不利于代码的复用和系统维护。为此我们需要增加一个统一的调度中心对集群进行实时管理这就是SOAService-Oriented Architecture面向服务的架构架构。 这种架构的优点是通过注册中心解决了各个服务之间服务依赖和调用关系的自动注册与发现。
这种架构的缺点服务之间的依赖与调用关系复杂增加了测试和运维的成本。 2.5、微服务架构
微服务架构是在SOA架构的基础上进行进一步的扩展和拆分。在微服务架构下一个大的项目拆分为一个个小的可独立部署的微服务每个微服务都有自己的数据库。微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用这些小应用之间通过服务完成交互和集成。
微服务架构特征
单一职责微服务拆分粒度更小每一个服务都对应唯一的业务能力做到单一职责避免重复业务开发面向服务微服务对外暴露业务接口自治团队独立、技术独立、数据独立、部署独立隔离性强服务调用做好隔离、容错、降级避免出现级联问题
优点服务彻底拆分各服务独立打包、独立部署和独立升级。每个微服务负责的业务比较清晰利于后期扩展和维护。微服务之间可以采用REST和RPC协议进行通信。
缺点架构非常复杂运维、监控、部署难度提高。开发的成本比较高。涉及到各服务的容错性问题。涉及到数据的一致性问题。涉及到分布式事务问题 3、分布式和微服务架构的区别
总的来说分布式主要是有多个服务器而微服务主要注重服务的拆分微服务并不一定是部署在多个服务器上也可能只是在一个服务器上基本很少见。
分布式服务顾名思义服务是分散部署在不同的机器上的一个服务可能负责几个功能是一种面向SOA架构的服务之间也是通过rpc来交互或者是webservice来交互的。
微服务与分布式的细微差别是微服务的应用不一定是分散在多个服务器上也可以是同一个服务器。
分布式服务架构强调的是服务化以及服务的分散化而微服务则更强调服务拆分的专业化和精细分工。分布式也可以理解为属于微服务但可能服务拆分没那么细致而微服务架构通常也是分布式的架构。 4、框架
Dubbo 是 SOA 时代的产物SpringCloud 是微服务时代的产物。 4.1、Dubbo
Dubbo框架是由阿里巴巴开发的开源式的分布式服务化治理框架它会通过RPC请求方式访问。Dubbo是在阿里巴巴的电商平台中逐渐探索演进所形成的经历过复杂业务的高并发挑战。 4.2、Spring Cloud
Spring Cloud不是一个单独框架它是一整个系列的框架合计它是基于HTTPs的RETS服务构建服务体系的。Spring Cloud能够帮助架构师构建一整套完整的微服务架构技术生态链。
SpringCloud是目前国内使用最广泛的微服务框架。官网地址https://spring.io/projects/spring-cloud。 SpringCloud集成了各种微服务功能组件并基于SpringBoot实现了这些组件的自动装配从而提供了良好的开箱即用体验 springcloud 与 springboot的版本兼容关系 4.3、微服务框架对比