Go 语言分布式程序与 Google App Engine 开发指南
1. 版本 5 程序分发
1.1 代码位置
第 5 版 goto_5 的代码可在 code_examples\chapter_19\goto_v5 目录中找到。该版本继续使用 gob 存储,但也可像第 4 版那样轻松适配为使用 json 。
1.2 多机多进程处理
目前, goto 以单进程运行。即便使用 goroutine ,单台机器上运行的单个进程也只能处理有限的并发请求。URL 缩短器通常处理的重定向(读取,使用 Get() )请求远多于添加(写入,使用 Put() )请求。因此,我们可以创建任意数量的只读从节点来处理和缓存 Get 请求,并将 Put 请求传递给主节点,如下所示:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(客户端请求) -->|Get| B(从节点):::process
A -->|Put| C(主节点):::process
B -->|缓存| D(本地缓存):::process
B -->|无缓存| C
超级会员免费看
订阅专栏 解锁全文
44

被折叠的 条评论
为什么被折叠?



