名词解释

SaaS:
SaaS平台是运营saas软件的平台。SaaS提供商为企业搭建信息化所需要的所有网络基础设
施及软件、硬件运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购
买软硬件、建设机房、招聘IT人员,即可通过互联网使用信息系统。SaaS 是一种软件布局
模型,其应用专为网络交付而设计,便于用户通过互联网托管、部署及接入。
HA(双机集群系统)
HA是High Available缩写,是双机集群系统简称,指高可用性集群,是保证业务连续性
的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。
原子操作:
指不会被线程调度机制打断的操作.这种操作一旦开始,就会一直运行到结束,中间不会有任
何线程切换.
线程安全:
当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,
也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为
都可以获得正确的结果,那这个对象就是线程安全的

那么如何实现线程安全呢?
互斥同步是最常见的一种线程安全保障手段,
同步是指在多个线程并发访问共享数据时,保证共享数据在同一时刻只被一条线程使用。而互斥是实现同步的一种手段,临界区、互斥量和信号量都是主要的互斥实现方式。
中台: 
就是公共服务平台,例如数据中台:就是将数据加工后封装成一个数据产品或服务.
时间复杂度:  
用来度量算法的运行时间.
网络分区(脑裂): 
群集发生管理网络故障时,该群集中的部分主机可能无法通过管理网络与其他主机进行通信。一个群集中可能会出现多个分区。
已分区的群集会导致虚拟机保护和群集管理功能降级。请尽快更正已分区的群集。
分布式: 
一个业务拆分成多个子系统,部署在不同的服务器上
集群:  
同一个业务,部署在多个服务器上

多台服务器部署相同应用构成一个集群 
作用:通过负载均衡设备共同对外提供服务

分布式:
不同模块部署在不同服务器上 
作用:分布式解决网站高并发带来问题

SOA:
业务系统分解为多个组件,让每个组件都独立提供离散,自治,可复用的服务能力,通过服务的组合和编排来实现上层的业务流程 
SOA(Service Oriented Architecture)“面向服务的架构”:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能。一个服务 通常以独立的形式存在与操作系统进程中。各个服务之间 通过网络调用
作用:简化维护,降低整体风险,伸缩灵活

微服务:
架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异步通信,独立部署)是分布式概念的跟严格执行SOA到微服务架构的演进过程 
微服务架构:其实和 SOA 架构类似,微服务是在 SOA 上做的升华,微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”,原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用。这些小应用之间通过服务完成交互和集成。
 微服务架构 = 80%的SOA服务架构思想 + 100%的组件化架构思想 + 80%的领域建模思想
作用:各服务可独立应用,组合服务也可系统应用

在这里插入图片描述

CAP理论
我们来看一下CAP分别代表的是什么意思:
•C:数据一致性(consistency)
所有节点拥有数据的最新版本, C所表示的一致性是强一致性(每个节点的数据都是最新版本),其实一致性还有其他级别的:
(弱一致性:弱一致性是相对于强一致性而言,它不保证总能得到最新的值;
最终一致性(eventual consistency):放宽对时间的要求,在被调完成操作响应后的某个时间点,被调多个节点的数据最终达成一致
)
•A:可用性(availability)
	数据具备高可用性
•P:分区容错性(partition-tolerance)
容忍网络出现分区,分区之间网络不可达。
由于我们的系统是分布式的,节点之间的通信是通过网络来进行的。只要是分布式系统,那很有可能会出现一种情况:因为一些故障,使得有些节点之间不连通了,整个网络就分成了几块区域。

•数据就散布在了这些不连通的区域中,这就叫分区

在这里插入图片描述

分布式锁
分布式锁就是在分布式环境下用来解决多实例对数据访问一致性的一种技术方案。
SPI
SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。

整体机制图如下:
在这里插入图片描述

Java SPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。
系统设计的各个抽象,往往有很多不同的实现方案,在面向的对象的设计里,一般推荐模
块之间基于接口编程,模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类,
就违反了可拔插的原则,如果需要替换一种实现,就需要修改代码。为了实现在模块装配
的时候能不在程序里动态指明,这就需要一种服务发现机制。
Java SPI就是提供这样的一个机制:为某个接口寻找服务实现的机制。有点类似IOC的思
想,就是将装配的控制权移到程序之外,在模块化设计中这个机制尤其重要。所以SPI的核
心思想就是解耦。
文件句柄:
在文件I/O中,要从一个文件读取数据,应用程序首先要调用操作系统函数并传送文件名,
并选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file 
handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应
用程序需要调用函数ReadFile,并将文件句柄在内存中的地址和要拷贝的字节数传送给操
作系统。当完成任务后,再通过调用系统函数来关闭该文件。
socket句柄
fd (file descriptor),这种一般是BSD Socket的用法,用在Unix/Linux系统上。
在Unix/Linux系统下,一个socket句柄,可以看做是一个文件,在socket上收发数据,
相当于对一个文件进行读写,所以一个socket句柄,通常也用表示文件句柄的fd来表示。
QPS
Queries Per Second,每秒查询数。每秒能够响应的查询次数。
QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。每秒的响应请求数,也即是最大吞吐能力。

TPS
Transactions Per Second 的缩写,每秒处理的事务数目。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。
TPS 的过程包括:客户端请求服务端、服务端内部处理、服务端返回客户端。
例如,访问一个 Index 页面会请求服务器 3 次,包括一次 html,一次 css,一次 js,那么访问这一个页面就会产生一个“T”,产生三个“Q”。

PV(page view)即页面浏览量,通常是衡量一个网络新闻频道或网站甚至一条网络新闻的主要指标。
PV  page view,页面浏览量。用户每一次对网站中的每个页面访问均被记录 1 次。用户对同一页面的多次刷新,访问量累计。
根据这个特性,刷网站的 PV 就很好刷了。
 PV 相关的还有 RV,即重复访问者数量(repeat visitors)。
UV 访问数(Unique Visitor)指独立访客访问数,统计1天内访问某站点的用户数( cookie 为依据),一台电脑终端为一个访客。
IP(Internet Protocol)独立 IP 数,是指 1 天内多少个独立的 IP 浏览了页面,即统计不同的 IP 浏览用户数量。同一 IP 不管访问了几个页面,独立 IP 数均为 1;不同的 IP 浏览页面,计数会加 1。IP 是基于用户广域网 IP 地址来区分不同的访问者的,所以,多个用户(多个局域网 IP)在同一个路由器(同一个广域网 IP)内上网,可能被记录为一个独立 IP 访问者。如果用户不断更换 IP,则有可能被多次统计。
GMV,是 Gross Merchandise Volume 的简称。只要是订单,不管消费者是否付款、卖家是否发货、是否退货,都可放进 GMV 
RPS 代表吞吐率,即 Requests Per Second 的缩写。吞吐率是服务器并发处理能力的量化描述,单位是 reqs/s,指的是某个并发用户数下单位时间内处理的请求数。
某个并发用户数下单位时间内能处理的最大的请求数,称之为最大吞吐率。
QPS
Queries Per Second,每秒查询数。每秒能够响应的查询次数。
QPS是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准,在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。每秒的响应请求数,也即是最大吞吐能力。

TPS
Transactions Per Second 的缩写,每秒处理的事务数目。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。
TPS 的过程包括:客户端请求服务端、服务端内部处理、服务端返回客户端。
例如,访问一个 Index 页面会请求服务器 3 次,包括一次 html,一次 css,一次 js,那么访问这一个页面就会产生一个“T”,产生三个“Q”。

PV(page view)即页面浏览量,通常是衡量一个网络新闻频道或网站甚至一条网络新闻的主要指标。
PV  page view,页面浏览量。用户每一次对网站中的每个页面访问均被记录 1 次。用户对同一页面的多次刷新,访问量累计。
根据这个特性,刷网站的 PV 就很好刷了。
 PV 相关的还有 RV,即重复访问者数量(repeat visitors)。
UV 访问数(Unique Visitor)指独立访客访问数,统计1天内访问某站点的用户数( cookie 为依据),一台电脑终端为一个访客。
IP(Internet Protocol)独立 IP 数,是指 1 天内多少个独立的 IP 浏览了页面,即统计不同的 IP 浏览用户数量。同一 IP 不管访问了几个页面,独立 IP 数均为 1;不同的 IP 浏览页面,计数会加 1。IP 是基于用户广域网 IP 地址来区分不同的访问者的,所以,多个用户(多个局域网 IP)在同一个路由器(同一个广域网 IP)内上网,可能被记录为一个独立 IP 访问者。如果用户不断更换 IP,则有可能被多次统计。
GMV,是 Gross Merchandise Volume 的简称。只要是订单,不管消费者是否付款、卖家是否发货、是否退货,都可放进 GMV 
RPS 代表吞吐率,即 Requests Per Second 的缩写。吞吐率是服务器并发处理能力的量化描述,单位是 reqs/s,指的是某个并发用户数下单位时间内处理的请求数。
某个并发用户数下单位时间内能处理的最大的请求数,称之为最大吞吐率。
用户态和内核态:
所有用户程序都是运行在用户态的,但是有时候程序确实需要做一些内核态的事情,例如从硬盘读取数据等。而唯一可以做这些事情的就是操作系统,所以此时程序就需要先操作系统请求以程序的名义来执行这些操作。这时需要一个这样的机制:用户态程序切换到内核态,但是不能控制在内核态中执行的指令。这种机制叫系统调用,在CPU中的实现称之为陷阱指令(Trap Instruction)
文件描述符:
 文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程
 所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内
 核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围绕着文
 件描述符展开。
Linux 系统中,把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程
返回一个文件描述符,文件描述符就是内核为了高效管理已被打开的文件所创建的索引,
用来指向被打开的文件,所有执行I/O操作的系统调用都会通过文件描述符。

文件描述符、文件、进程间的关系
1.描述:
	•每个文件描述符会与一个打开的文件相对应
	•不同的文件描述符也可能指向同一个文件
	•相同的文件可以被不同的进程打开,也可以在同一个进程被多次打开
2.系统为维护文件描述符,建立了三个表
	•进程级的文件描述符表
	•系统级的文件描述符表
	•文件系统的i-node表
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值