技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享

ae749ca5046129bb9af23dfeed148709.png

技术阅读周刊,每周更新。

历史更新

  • 20231215:第十期

  • 20231122:第十一期

  • 20231129:第十二期

  • 20240105:第十三期:一些提高生产力的终端命令

What We Got Right, What We Got Wrong

URL: https://commandcenter.blogspot.com/2024/01/what-we-got-right-what-we-got-wrong.html?utm_source=changelog-news

本文是 Golang 核心作者之一  Rob Pike 去年底在澳大利亚 GopherConAU 会议上的分享;总结了 Go 语言 14 年来的做对了哪些事情、做错了哪些事情。

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第1张图片

主要包括:

  • 语言涉及

  • 社区管理

  • 项目运营 等方面,感兴趣的还可以看油管视频。https://www.youtube.com/watch?v=yE5Tpp2BSGw

Top 10 Platform Engineering Tools You Should Consider in 2024 | by Romaric Philogène | Jan, 2024 | Medium

URL: https://medium.com/@rphilogene/top-10-platform-engineering-tools-you-should-consider-in-2024-892e6e211b85技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第2张图片

本文介绍了作为一个平台工程师需要掌握的工具。

先定义了什么是平台工程师:为研发人员提供平台资源进行开发,让开发人员可以在云环境中自助完成整个软件生命周期的各个环节,比如基础环境搭建、代码 pipelines、监控等。

以下是会用到的工具:

  • kubernetes:这个就不用多讲了。

  • Crossplane:用于管理多集群的 kubernetes

  • Qovery:内部开发者平台

  • Github/Gitlab CI/CD

  • ArgoCD:kubernetes 原生提供的持续部署工具。

  • Docker

  • Terraform:基础设施自动化工具,可以通过声明式配置文件实现多云基础设施的部署和管理。

  • Datadog:监控和日志分析平台,当然也可以使用 Prometheus/Grafana 等

Load Balancing Algorithms Explained Visually

URL: https://blog.quastor.org/p/load-balancing-algorithms-explained-visually?utm_source=tldrwebdev

本文介绍了一些负载均衡算法以及其优缺点。

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第3张图片 Round Robin_1.gif
  1. 轮询算法(Round Robin):每个请求按顺序分配到不同服务器。实现简单,但不能考虑服务器负载情况。

  2. 加权轮询(Weighted Round Robin):考虑服务器性能给各服务器设置权重,请求分配按权重比例进行。仍然不能实时反应服务器负载变化。

  3. 最少连接数(Least Connections):实时监测各服务器连接数,将请求分配到连接数最少的服务器上。实现较复杂,需要定期探测各服务器状态。

  4. 最短响应时间(Least Response Time):监测各服务器响应时间,分配给响应最快的服务器。

  5. 双随机选择(Power of Two Choices):随机选择两台服务器,将请求分配给负载较轻的一台。减少监测开销。

  6. 一致哈希(Consistent Hashing):根据请求关键信息计算哈希值,将请求分配给对应的机器范围。解决主机添加和删除问题。

  7. 其他算法如根据磁盘、内存利用率进行负载分配等。

What problem did Go actually solve for Google

URL: https://www.reddit.com/r/golang/comments/176b5pn/what_problem_did_go_actually_solve_for_google/

这是一个 Reddit 上的帖子,OP 的问题是 Rob 在之前的分享中提到 Golang 创建的原因是要解决 Google 内部的问题,但没有具体讲  Google 到底遇到了什么问题?什么问题是几百种编程语言都无法解决的问题?

以下是一些高赞回答:

  • 更快的本地编译速度

  • 对新手来说更好理解的代码

  • 更严格的代码风格,使得大家的代码都差不多。

  • 更容易编写并发程序

总体来说, Go 主要解决的是在大型分布式系统中如何更高效地进行协作开发、实现高性能又易维护。这正是 Google 当时最关心的问题。

文章链接:

  • https://commandcenter.blogspot.com/2024/01/what-we-got-right-what-we-got-wrong.html?utm_source=changelog-news

  • https://medium.com/@rphilogene/top-10-platform-engineering-tools-you-should-consider-in-2024-892e6e211b85

  • https://blog.quastor.org/p/load-balancing-algorithms-explained-visually?utm_source=tldrwebdev

PS:最近也在更新视频号,也会有一些技术干货,动动小手帮主播点播关注技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第4张图片

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第5张图片

往期推荐

请注意,你的 Pulsar 集群可能有删除数据的风险

Pulsar3.0新功能介绍

Pulsar3.0 升级指北

如何给开源项目发起提案

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第6张图片

点分享

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第7张图片

点收藏

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第8张图片

点点赞

技术阅读周刊第十四期:Golang 作者 Rob Pike 在 GopherConAU 上的分享_第9张图片

点在看

你可能感兴趣的:(golang,开发语言,后端)