最新 最热

SQL vs NoSQL:系统设计中选择哪个数据库?

在设计系统时,您将面临的最关键的系统设计选择之一是选择合适的数据库管理系统(DBMS)。SQL 与 NoSQL 数据库之间的选择可以极大地影响系统的整体性能、可扩展性和通常的成功。这就是为什么我们在系统设计中详细比较了SQL...

2024-02-01
2

系统设计面试的行家指南(下)

近年来,Google Drive、Dropbox、微软 OneDrive、苹果 iCloud 等云存储服务变得非常流行。在这一章中,你被要求设计 Google Drive。

2024-01-28
1

什么是CAP定理?

CAP定理,也被称为Brewer定理,是分布式计算中的一个概念,强调了分布式系统中一致性(Consistency)、可用性(Availability)、分区容忍性(Partition Tolerance)这三个关键属性之间的固有权衡。CAP定理由计算机科学家Eric Brewer于2...

2024-01-26
2

Diagram as Code:用 Python 绘制云架构图,让系统设计更直观、更高效

"Diagram as Code" 是一种创新的方法,它允许使用 Python 代码来绘制云系统架构图。这个概念的核心是通过编程代替传统的图形设计工具来设计和可视化系统架构。...

2024-01-06
1

go:自签名证书管理系统系统设计

要开发一个用于管理自签名证书的程序,我们需要考虑几个关键方面:证书生成、存储、分发和撤销。这个系统将涉及到安全性、易用性和扩展性等多个维度。下面我将为你提供一个详细的设计指南,包括设计模式的选择、系统架构和...

2024-01-04
1

系统架构设计面试指南(01)-微服务和CAP

系统设计是定义满足特定需求的系统的架构、接口和数据的过程。系统设计通过协同和高效的系统满足您的业务或组织需求。一旦业务或组织确定了其需求,就可以开始构建一个将这些需求融入物理系统设计的过程,以满足客户的需...

2023-12-26
2

C++实现进程端口网络数据接收系统设计示例程序

最近做了一道简单的系统设计题,大概描述如下: 1.一个进程可以绑定多个端口,用于监听接收网络中的数据,但是一个端口只能被一个进程占用 2.1 <= pid <= 65535, 1 <= port <= 100000, 1 <= topNum <= 5, 0 <= packetLen < 1...

2023-12-10
1

网盘系统设计:万亿 GB 网盘如何实现秒传与限速?

网盘,又称云盘,是提供文件托管和文件上传、下载服务的网站(File hostingservice)。人们通过网盘保管自己拍摄的照片、视频,通过网盘和他人共享文件,已经成为了一种习惯。我们准备开发一个自己的网盘应用系统,应用名称为“DBo...

2023-12-04
1

系统设计面试指南之【分布式任务调度】

任务是需要资源(CPU 时间、内存、存储、网络带宽等)在指定时间内完成的一段计算工作。

2023-12-02
2

系统设计面试指南之分布式任务调度

任务是需要资源(CPU 时间、内存、存储、网络带宽等)在指定时间内完成的一段计算工作。

2023-12-01
2