在这篇文章中,我们将讨论以下话题:

  • 6 种负载均衡算法
  • 云服务数据库速查表
  • HTTPS、SSL 握手和数据加密向孩子解释
  • Chrome 如何工作

6 种负载均衡算法

静态算法

  1. 轮询(Round Robin) 客户端请求按顺序发送到不同的服务实例。服务通常要求是无状态的。

  2. 粘性轮询(Sticky Round-Robin) 这是轮询算法的改进。如果 Alice 的第一个请求去服务 A,后续请求也去服务 A。

  3. 加权轮询(Weighted Round-Robin) 管理员可以为每个服务指定权重。权重较高的服务处理更多请求。

  4. 哈希(Hash) 此算法对传入请求的 IP 或 URL 应用哈希函数。请求根据哈希函数结果路由到相关实例。

动态算法

  1. 最少连接(Least Connections) 新请求发送到并发连接数最少的服务实例。

  2. 最少响应时间(Least Response Time) 新请求发送到响应时间最快的服务实例。

云服务数据库速查表

为你的项目选择正确的数据库是一项复杂的任务。大量的数据库选项,每个都适合不同的用例,可能很快导致决策疲劳。

我们希望这份速查表提供高级方向,以 pinpoint 与你的项目需求对齐的正确服务,并避免潜在陷阱。

注意:Google 对其数据库用例的文档有限。即使我们尽力查看可用内容并得出最佳选项,某些条目可能不准确。

问题:你过去使用过哪个数据库,用于什么用例?

HTTPS、SSL 握手和数据加密

  • HTTPS:保护你的数据免受窃听者和漏洞。了解加密和数字证书如何创建不可穿透的盾牌
  • SSL 握手:幕后——见证建立安全连接的加密协议。体验复杂的密钥交换和协商
  • 安全数据传输:穿越隧道——穿越 HTTPS 锻造的加密隧道。了解你的信息如何在免受网络威胁保护的情况下传输
  • HTML 的角色:窥视 HTML 在构建 Web 中的角色。揭露超链接和内容如何无缝结合在一起。为什么它叫超文本

问题:在这个不断发展的数字景观中,你预见什么新兴技术将塑造网络安全或 Web 的未来?

Chrome 浏览器架构

下图显示了现代浏览器的架构。它基于我们对 Chrome 团队发布的”Inside look at modern web browser”的理解。

通常有 4 个进程:浏览器进程、渲染器进程、GPU 进程和插件进程。

  • 浏览器进程:控制地址栏、书签、后退和前进按钮等
  • 渲染器进程:控制显示网站的标签内的任何内容
  • GPU 进程:处理 GPU 任务
  • 插件进程:控制网站使用的插件

浏览器进程与其他进程协调。

当 Chrome 在强大硬件上运行时,它可能将浏览器进程中的每个服务分割到不同的线程中,如下图所示。这称为服务化(Servicification)。

现在让我们浏览当我们在 Chrome 中输入 URL 时的步骤。

  • 步骤 1:用户在浏览器中输入 URL。这由 UI 线程处理
  • 步骤 2:当用户按回车键时,UI 线程发起网络调用以获取网站内容
  • 步骤 3-4:网络线程经历适当的网络协议并检索内容
  • 步骤 5:当网络线程接收到响应时,它查看流的前几个字节。如果是 HTML 文件,它由浏览器进程传递给渲染器进程
  • 步骤 6-9:IPC 从浏览器进程发送到渲染器进程以提交导航。在网络线程和渲染器进程之间建立数据管道,以便渲染器可以接收数据。一旦浏览器进程听到渲染器进程中提交已发生的确认,导航完成,文档加载阶段开始

问题:为什么 Chrome 为每个标签分配一个渲染器进程?

本文为学习目的的个人翻译,译文仅供参考。

原文链接:EP73: Cheat sheet of different databases in cloud services

版权归原作者或原刊登方所有。本文为非官方译本;如有不妥,请联系删除。