文章分类 -  极客时间

上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 45 下一页
摘要:你好,我是陶辉。 到了第4部分课程的最后一讲,我们来结合前面介绍过的知识点,看看面对NoSQL、关系数据库时该如何选择。 在分布式系统中,我们会同时使用多种数据库。比如,你可能会在Redis中存放用户Session会话,将业务数据拆解为由行、列构成的二维表存储在MySQL中,将需要全文检索的数据放在 阅读全文
posted @ 2023-01-04 15:08 易先讯 阅读(4) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上节课我们介绍了在有边界的存量数据上进行的MapReduce离线计算,这节课我们来看看对于无边界数据,怎样实时地完成流式计算。 对于不再变化的存量数据,可以通过分而治之的MapReduce技术将数据划分到多台主机上并行计算,由于待处理的数据量很大,我们只能获得分钟级以上的时延。当面 阅读全文
posted @ 2023-01-04 15:08 易先讯 阅读(6) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 接下来的2节课我将介绍如何通过分布式集群优化计算任务。这一讲我们首先来看对于有边界静态数据的离线计算,下一讲再来看对无边界数据流的实时计算。 对大量数据做计算时,我们通常会采用分而治之的策略提升计算速度。比如单机上基于递归、分治思想实现的快速排序、堆排序,时间复杂度只有O(N*lo 阅读全文
posted @ 2023-01-04 15:07 易先讯 阅读(4) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 在前26讲中我们介绍了许多异步实现机制,这节课我们来看看如何通过消息队列提升分布式系统的性能。 异步通讯是最常用的性能提升方式,比如gRPC提供的异步API,或者基于write-back模式向缓存写入数据时,系统性能都可以提高。然而,对于复杂的大规模分布式系统,这些分散、孤立的异步 阅读全文
posted @ 2023-01-04 15:07 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 [第7讲] 我们曾介绍了网络层的IP协议是如何支持多播的,这节课我们再来从应用层看看如何实现多播功能。 当你的分布式集群只有十多个节点时,每次发布版本时,尽可以从发布服务器,将新版本的安装包通过ftp、scp、wget等工具分发到各个节点中。可是,一旦集群规模达到成千上万个节点时, 阅读全文
posted @ 2023-01-04 15:06 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 这一讲我们将对一直零散介绍的缓存做个全面的总结,同时讨论如何解决缓存被流量打穿的场景。 在分布式系统中,缓存无处不在。比如,浏览器会缓存用户Cookie,CDN会缓存图片,负载均衡会缓存TLS的握手信息,Redis会缓存用户的session,MySQL会缓存select查询出的行数 阅读全文
posted @ 2023-01-04 15:06 易先讯 阅读(5) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 还记得我们在[第22讲] 谈到的Cassandra数据库吗?它将服务器节点组成一个环来存储数据,所使用的就是一致性哈希算法。那这一讲,我们就来看看一致性哈希算法是怎样工作的。 使用哈希算法扩展系统时,最大的问题在于代表哈希桶的服务器节点数发生变化时,哈希函数就改变了,数据与节点间的 阅读全文
posted @ 2023-01-04 15:06 易先讯 阅读(7) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 在[第21讲] 介绍AKF立方体时,我们讲过只有在下游添加负载均衡后,才能沿着X、Y、Z三个轴提升性能。这一讲,我们将介绍最流行的负载均衡Nginx、OpenResty,看看它们是如何支持AKF扩展体系的。 负载均衡通过将流量分发给新增的服务器,提升了系统的性能。因此,我们对负载均 阅读全文
posted @ 2023-01-04 15:05 易先讯 阅读(13) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 前两讲我们介绍数据库的扩展时,写请求仍然在操作中心化的Master单点,这在很多业务场景下都是不可接受的。这一讲我将介绍对于无单点的去中心化系统非常有用的NWR算法,它可以灵活地平衡一致性与性能。 最初我们仅在单机上部署数据库,一旦性能到达瓶颈,我们可以基于AKF Y轴将读写分离, 阅读全文
posted @ 2023-01-04 15:05 易先讯 阅读(21) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲我们谈到,调低一致性可以提升有状态服务的性能。这一讲我们扩大范围,结合无状态服务,看看怎样提高分布式系统的整体性能。 当你接收到运维系统的短信告警,得知系统性能即将达到瓶颈,或者会议上收到老板兴奋的通知,接下来市场开缰拓土,业务访问量将要上一个大台阶时,一定会马上拿起计算器, 阅读全文
posted @ 2023-01-04 15:04 易先讯 阅读(17) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲我们介绍了如何通过监控找到性能瓶颈,从这一讲开始,我们将具体讨论如何通过分布式系统来提升性能。 在第一部分课程中,我介绍了多种提升单机处理性能的途径,然而,进程的性能必然受制于一台服务器上各硬件的处理能力上限。如果需要进一步地提升服务性能,那只有整合多台主机组成分布式系统才能 阅读全文
posted @ 2023-01-04 15:04 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 从这一讲开始,我们将进入分布式系统层面,站在更宏观的角度去探讨系统性能的优化。 如果优化系统性能时,只是依据自己的经验,对感觉存在性能提升空间的代码,无一例外地做一遍优化,这既是一件事倍功半的事,也很容易遗漏下关键的优化点,无法大幅提升系统的性能。根据帕累托法则(也叫二八定律),只 阅读全文
posted @ 2023-01-04 15:04 易先讯 阅读(13) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 时间过得真快,从4月27日课程上线,转眼已经一月有余了,不知道你的收获如何呢?在这期间,我收到了很多同学的反馈,很感谢大家的认可,也非常开心能与你一起交流技术。 那从我个人而言呢,这已经是我在极客时间开的第三门课了,前两门都是视频课。那切换到文字专栏的话,其实是完全不同的感受,视频 阅读全文
posted @ 2023-01-04 12:25 易先讯 阅读(15) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 这一讲我们将以一个实战案例,基于前两讲提到的HTTP/2和ProtoBuf协议,看看gRPC如何将结构化消息编码为网络报文。 直接操作网络协议编程,容易让业务开发过程陷入复杂的网络处理细节。RPC框架以编程语言中的本地函数调用形式,向应用开发者提供网络访问能力,这既封装了消息的编解 阅读全文
posted @ 2023-01-04 12:24 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲介绍的HTTP/2协议在编码上拥有非常高的空间利用率,这一讲我们看看,相比其中的HPACK编码技术,Protobuf又是通过哪些新招式进一步提升编码效率的。 Google在2008年推出的Protobuf,是一个针对具体编程语言的编解码工具。它面向Windows、Linux等 阅读全文
posted @ 2023-01-04 12:23 易先讯 阅读(10) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲我们从多个角度优化HTTP/1的性能,但获得的收益都较为有限,而直接将其升级到兼容HTTP/1的HTTP/2协议,性能会获得非常大的提升。 HTTP/2协议既降低了传输时延也提升了并发性,已经被主流站点广泛使用。多数HTTP头部都可以被压缩90%以上的体积,这节约了带宽也提升 阅读全文
posted @ 2023-01-04 12:23 易先讯 阅读(25) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲介绍了为应用层信息安全保驾护航的TLS/SSL协议,这一讲我们来看看最常用的应用层协议HTTP/1.1该如何优化。 由于门槛低、易监控、自表达等特点,HTTP/1.1在互联网诞生之初就成为最广泛使用的应用层协议。然而它的性能却很差,最为人诟病的是HTTP头部的传输占用了大量带 阅读全文
posted @ 2023-01-04 12:22 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 从这一讲开始,我们进入应用层协议的处理。 信息安全在当下越来越重要,绝大多数站点访问时都使用https://替代了http://,这就是在用TLS/SSL协议(下文简称为TLS协议)来保障应用层消息的安全。但另一方面,你会发现很多图片类门户网站,还在使用http://,这是因为TL 阅读全文
posted @ 2023-01-04 12:22 易先讯 阅读(25) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 这一讲我们将结合前12讲,以一个可管理百万主机集群的心跳服务作为实战案例,看看所有高性能服务的设计思路。 首先解释下什么是心跳服务。集群中的主机如果宕机,那么管理服务必须及时发现,并做相应的容灾处理,比如将宕机主机的业务迁移到新的虚拟机上等等。怎么做到及时发现呢?可以要求每台主机定 阅读全文
posted @ 2023-01-04 12:21 易先讯 阅读(17) 评论(0) 推荐(0)
摘要:你好,我是陶辉。 上一讲我们谈到接收主机的处理能力不足时,是通过滑动窗口来减缓对方的发送速度。这一讲我们来看看,当网络处理能力不足时又该如何优化TCP的性能。 如果你阅读过TCP协议相关的书籍,一定看到过慢启动、拥塞控制等名词。这些概念似乎离应用开发者很远,然而,如果没有拥塞控制,整个网络将会锁死, 阅读全文
posted @ 2023-01-04 12:21 易先讯 阅读(61) 评论(0) 推荐(0)

上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 45 下一页