亚马逊网站架构演进

2023-12-07
阅读 6 分钟
240
Amazon,1994 年创立,早期网站是单服务、单数据库的单体架构的系统[1] [2] [3],全部代码由 C++ 编写,编译成单个二进制文件,整个代码仓库被命名为 Obidos)。Obidos 是底层是一个 Web 页面渲染引擎,是一个框架,业务逻辑基于这个框架开发,Obidos 渲染引擎和业务逻辑共同组成整个代码仓库。随着时间的推移,Obidos 变...

I/O 多路复用与网络服务器并发策略

2023-07-26
阅读 18 分钟
809
目前主流的网络服务器,网络 I/O 相关的底层最核心的技术都是 I/O 多路复用(I/O Multiplexing),比如 Apache HTTP Server、Nginx、Redis 等。本文尝试解释各种 I/O 模型,包括解释什么是 I/O 多路复用,同时也总结 I/O 多路复用底层的系统调用 select、poll、kqueue 和 epoll 的演进和区别,并编写了使用这些函数的示...

微服务 API 网关 Kong 实践

2020-06-04
阅读 11 分钟
12.2k
Kong 是云原生、高效、可扩展、分布式的微服务抽象层,被称为 API 网关,或者 API 中间件。Kong 在 2015 年 4 月由 Mashape 公司开源,基于 OpenResty 和 Apache Cassandra/PostgreSQL 构建,提供易于使用的 RESTful API 来操作和配置 API 系统12。

ZooKeeper 学习笔记

2019-05-30
阅读 13 分钟
4.8k
ZooKeeper(wiki,home,github) 是用于分布式应用的开源的分布式协调服务。通过暴露简单的原语,分布式应用能在之上构建更高层的服务,如同步、配置管理和组成员管理等。在设计上易于编程开发,并且数据模型使用了熟知的文件系统目录树结构 [doc ]。