《使用 Gin 框架构建分布式应用》阅读笔记:p251-p271
《用 Gin 框架构建分布式应用》学习第 14 天,p251-p271 总结,总 21 页。
一、技术总结
1.Docker & Docker Compose
这里补充一些书上没有说明的:
(1)version
version 字段在新版的 Docker Compose 中已弃用。例如上面的代码:
可以删掉。
(2)external_links
如果每个 service 都设置了相同的 networks,那么 external_links 在新版的的 Docker Compose 中可以删除。例如上面的代码:
可以删掉。
2.Round Robin 算法
Round Robin 算法是 Nginx 的默认算法,Nginx 官方文档给出的说明(https://docs.nginx.com/nginx/admin-guide/load-balancer/http-load-balancer/)是:
Round Robin – Requests are distributed evenly across the servers, with server weights taken into consideration. This method is used by default (there is no directive for enabling it)。
3.Nginx & Traefik
Nginx 和 Traefik 属于同类软件,都用于负载均衡。书上介绍的是 Nginx,本人工作中用的也是 Nginx。默认使用的负载均衡算法是 Round Robin。书上使用的是 Docker 方式进行部署。
二、英语总结
1.topology
p251, The configuration specifies the environment variables and network topology that
the worker requires.
(1)topology: topos(“place”) + -logy("study")。c/u. study or places, structure of places,拓扑。
三、其它
阅读本书第 14 天,整本书已过半。书写得非常通俗易懂,统计了一下每天的“英语总结”,算下只遇到了 22 个生词,但是阅读速度(20 页/天)算下来还是非常慢。这时候英语已经不是阻碍,阻碍是概念的理解和应用。举个例子,作者在 Dockerfile 里面设置了 WORKDIR:
单从字面意思上我们并不难理解,难理解的是:(1)WORKDIR 的值设置为什么好?这里吐槽下,作者设置成/go/src/github.com/api,实际开发中我想没有多少人会使用 github.com 这样的名字作为项目的目录名称。(2)什么时候使用 WORKDIR,什么时候不使用 WORKDIR?(3)WORKDIR 写在什么位置?
那么如何更好的去理解这里概念呢?这是本人的一些做法:(1)参与实际项目。这是最直接也是最快的方式,但也是最难的。因为一个人在实际工作中能做的往往就是一小部分,所以局限性很大。如果可以,最好是能参与一些开源项目。(2)多阅读。很多时候理解并不是“一步到位”的,而是“慢慢的”,你看这本书理解不了,再看一本书可能就理解了。
四、参考资料
1. 编程
(1) Mohamed Labouardy,《Building Distributed Applications in Gin》:https://book.douban.com/subject/35610349
2. 英语
(1) Etymology Dictionary:https://www.etymonline.com
(2) Cambridge Dictionary:https://dictionary.cambridge.org
欢迎搜索及关注:编程人(a_codists)
版权声明: 本文为 InfoQ 作者【codists】的原创文章。
原文链接:【http://xie.infoq.cn/article/453ddf10cc5f151892c05e5a8】。文章转载请联系作者。
评论