首页

来自智得网
跳转至: 导航、​ 搜索

精选文章

TCP查看全文
OSI 7层模型及TCP IP模型.png
TCP/IP协议位于网络ISO的七层模型中的第四层,是一个面向链接的协议。

传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。 互联网络与单个网络有很大的不同,因为互联网络的不同部分可能有截然不同的拓扑结构、带宽、延迟、数据包大小和其他参数。TCP的设计目标是能够动态地适应互联网络的这些特性,而且具备面对各种故障时的健壮性。 不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元(MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。

每台支持TCP的机器都有一个TCP传输实体。TCP实体可以是一个库过程、一个用户进程,或者内核的一部分。在所有这些情形下,它管理TCP流,以及与IP层之间的接口。TCP传输实体接受本地进程的用户数据流,将它们分割成不超过64KB(实际上去掉IP和TCP头,通常不超过1460数据字节)的分段,每个分段以单独的IP数据报形式发送…
FAAS查看全文
FaaS 全称 Function-as-a-Service,可以理解成给 Function 提供运行环境和调度的服务。Function 一般指一个代码功能块,这个功能块具体包含的功能数量是没有限制的,但是 FAAS 要求系统的冷启动时间在毫秒数量级。

FaaS 的本质上是以程序的快速启动来实现按需运行,按需伸缩,以及高可用。Function 配合调度系统,就可以完全做到开发者对服务运行的实例无感,实现Serverless。 弹性伸缩 弹性伸缩是根据业务需求和策略自动调整计算能力(即实例数量)的能力。弹性伸缩实现了动态调度的能力,即将应用部署在合适的服务器上。 弹性伸缩一般是根据系统的访问量或者负载进行自动的调度伸缩策略,例如当函数的访问量上升时,弹性伸缩系统根据策略将函数实例数扩容,用来承载更多的请求;当系统容量过多,系统负载在低水平运行时,则适当的缩容部分实例。在传统的开发运维模式中,扩容和缩容都是较为复杂的流程。扩容需要申请服务器资源、环境配置、部署服务等流程;缩容则需要停止服务、从负载均衡服务器中剔除等。弹性伸缩能力通过将扩容和缩容流程进行自动化简化了手工运维的过程。 弹性伸缩一般通过Kubernetes实现,Kubernetes解决了弹性伸缩的基础设施的问题以及服务部署调度的问题,通过调整Deployment的副本数能帮我们解决服务实例调整的问题、通过接入HPA可以实现实例的自动伸缩问题。开源社区的Serverless/FaaS产品基本是基于k8s实现的,也正是因为k8s的发展,促进了开源社区的Serverless/FaaS产品的发展。

除了Kubernetes的HPA外,社区内还有诸如事件驱动架构弹性框架Keda…
TiDB查看全文
TiDB 是一款分布式的 NewSQL 数据库,能够支持横向扩展,高可用,水平分片,可线性扩展,同时支持 SQL 和事务。TiDB 基于 Raft 算法实现分布式一致性,通过分布式事务来保证多节点的数据一致性。TiDB 同时兼容 MySQL 5.7 协议,可以无缝迁移 MySQL 应用。TiDB 使用了分布式存储引擎 TiKV 作为存储层,支持横向扩展,提供高可靠的分布式存储服务,同时也保证了强一致性。

以下是 TiDB 的一些特点: 1.分布式架构:TiDB 支持水平扩展,可以无缝地进行容量和性能的扩展,同时提供高可用和故障恢复能力。 2.高性能:TiDB 采用了 MPP 架构,通过将数据水平切分,支持并行查询,实现了高并发、低延迟的查询。 3.兼容 MySQL 协议:TiDB 与 MySQL 5.7 兼容,可以无缝迁移 MySQL 应用,并提供了大多数 MySQL 特性,如 ACID、事务等。 4.分布式事务:TiDB 使用分布式事务来保证数据一致性,支持两阶段提交和分布式快照隔离。 5.智能优化:TiDB 使用了智能优化器和统计信息来优化查询计划,提高查询性能。 6.开放性:TiDB 是开源的,社区活跃,提供了完善的文档和学习资源。 总的来说,TiDB 是一个高可用、高性能、分布式的数据库,能够支持大规模的数据存储和查询,是目前分布式数据库领域的热门选择之一。 存储模型 数据的存储模型是数据库系统需要首先进行的技术选型,存储模型决定了数据以什么样的形式保存。TiKV 选择了 Key-Value 模型,并且提供有序遍历方法。 TiKV 数据存储的关键特性如下:

使用 Map 结构进行数据存储,保存的是数据的键值对…

热门分类

算法题库

精选内容