技术阅读周刊第十四期: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 年来的做对了哪些事情、做错了哪些事情。

cb312367fc5bb66d618a0eb12c633498.png

主要包括:

  • 语言涉及

  • 社区管理

  • 项目运营 等方面,感兴趣的还可以看油管视频。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-892e6e211b859c03eff03e0bfd13ca37599c9148814c.png

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

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

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

64ee5c28b040812d0a957ea4f8387ea9.gif
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:最近也在更新视频号,也会有一些技术干货,动动小手帮主播点播关注fc17114efbff11b9bdc9a553492722bc.jpeg

ac4060d0357982424197a006d868fbec.jpeg

往期推荐

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

Pulsar3.0新功能介绍

Pulsar3.0 升级指北

如何给开源项目发起提案

e745aacd092e2cfbcf6f9060dc3de5bf.gif

点分享

1e9615a4bd3e0109eef97dac4938328f.gif

点收藏

150af203d4b9af81e3f0d99de5bff9b8.gif

点点赞

b0ce3c2e2403d04089ead35a1ad9c9b1.gif

点在看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/321018.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

pinyin-pro库使用方式

pinyin-pro 是一个专业的 JavaScript 中文转拼音的库,具备多音字识别准确、体积轻量、性能优异、功能丰富等特点。 pinyin-pro官网链接:介绍 | pinyin-pro 运行展示 pinyin-pro安装命令: # 选择一个你使用的包管理器进行安装即可# NPM $ n…

基于Java SSM框架实现企业车辆管理系统项目【项目源码】

基于java的SSM框架实现企业车辆管理系统演示 JSP技术 JSP技术本身是一种脚本语言,但它的功能是十分强大的,因为它可以使用所有的JAVA类。当它与JavaBeans 类进行结合时,它可以使显示逻辑和内容分开,这就极大的方便了运动员的需求…

为什么使用双token实现无感刷新用户认证?

单token机制 认证机制:对与单token的认证机制在我们项目中仅使用一个Access Token的访问令牌进行用户身份认证和授权的方案处理。 不足之处: 安全性较低(因为只有一个token在客户端和服务器端之间进行传递,一旦Access Token被截…

对闭包的理解

概念: 一个函数对周围状态的引用捆绑在一起,闭包让开发者可以从内部函数访问外部 函数的作用域 简单理解:闭包 内层函数 外层函数的变量 一个函数对周围状态的引用捆绑在一起,闭包让开发者可以从内部函数访问外部 函数的作…

【5G Modem】5G modem架构介绍

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 本人就职于国际知名终端厂商,负责modem芯片研发。 在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。 博客…

openFeign 多模块调用失败问题

第一次做一个完整的SpringCloud微服务项目,踩了好多好多坑,都记录下来! openFeign 多模块调用失败 排错第一阶段 创建一个openfeign服务,并把它注册到nacos上去 然后A模块通过Feign调用B模块 但是我在A模块实现AdminArticleServiceFeignClient这个接口,报错: 后面我查找这个问…

phpinfo和php -m 加载的php.ini不一致

目的: 将phpinfo在web中展示的php.ini和在命令行中展示的php.ini加载路径设置一致。 原本的php.ini加载路劲是: /usr/local/lib/php.ini 解决思路: (1)which php 查看服务器加载的php的位置,这里原来是&a…

win10 安装配置 Rust 环境和简单使用

文章目录 安装 Rustup基本命令hello wrold使用 cargo 创建项目构建并运行项目发布 最近几年,Rust 因其卓越的内存安全性和并发性能备受关注。不仅连续七年获得 StackOverflow 最受开发者喜爱的语言榜榜首,也在越来越多知名公司内部使用,比如&…

通过Wireshark抓包分析谈谈DNS域名解析的那些事儿

原创/朱季谦 本文主要想通过动手实际分析一下是如何通过DNS服务器来解析域名获取对应IP地址的,毕竟,纸上得来终觉浅,绝知此事要躬行。 一、域名与IP地址 当在浏览器上敲下“www.baidu.com”时,一键回车,很快&#x…

分布式链路追踪专栏,Spring Cloud Sleuth:分布式链路追踪之通信模型设计

Spring Cloud Sleuth 赋予分布式跟踪的 Spring Boot 自动配置的一键解决方案。Spring Cloud Sleuth 是基于 Brave 的封装,也是很多公司采用开源加自研的最佳解决方案。 那么从作为架构师或者技术专家如何去借鉴优秀框架的设计理念和思想,本次 Chat 将开…

肯·汤普逊 :我心目中的神,好像真正无敌之上的大佬都对C++提出了批判!大佬们的思想像红太阳太耀眼,常人不能直视

肯尼斯蓝汤普逊(英语:Kenneth Lane Thompson,1943年2月4日—),小名肯汤普逊(英语:Ken Thompson),美国计算机科学学者和工程师。黑客文化圈子通常称他为“ken”[1]。在贝尔…

为什么很多公司选择不升级JDK版本,仍然使用JDK8?

在讨论为什么许多公司选择不升级JDK版本,而继续使用JDK 8时,我们需要从多个角度来分析这个问题。以下是根据您提供的背景信息进行的一些分析和真实案例。 本文已收录于,我的技术网站 ddkk.com,有大厂完整面经,工作技术…

test Symbolic Execution-03-Soot - A Java optimization framework

拓展阅读 开源 Auto generate mock data for java test.(便于 Java 测试自动生成对象信息) 开源 Junit performance rely on junit5 and jdk8.(java 性能测试框架。性能测试。压测。测试报告生成。) test fuzz-01-模糊测试(Fuzz Testing) Soot 重要…

【linux】awk的基本使用

awk是shell中一个强大的文本处理工具,被用于处理文本和数据 当你心中默念想要使用类似于 处理某一行,处理某一列 的文本 的功能时,就是awk登场的时候了 举个简单的例子是,当我们想知道自己的所有网卡的名字时,可以用i…

繁花的范总-UMLChina建模知识竞赛第5赛季第3轮

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 参考潘加宇在《软件方法》和UMLChina公众号文章中发表的内容作答。在本文下留言回答。 只要最先答对前3题,即可获得本轮优胜。 如果有第4题,第4题为附加题&am…

OpenHarmony—Linux之系统调用

Linux之系统调用 这里我们只讨论: 硬件: Arm64系统: Linux系统 (Kernel-5.15-rc1)高级语言: C (glibc-2.34)模式: 64位 (即未定义CONFIG_COMPAT) 2、什么是系统调用 …

主键(设置/删除方法,复合主键),唯一键,主键和唯一键的应用差异,自增长字段(如何实现,查看上次的值),外键(引入,外键约束)

目录 主键(primary key) 介绍 作用 设置主键 建表前 建表后 复合主键 介绍 示例 删除主键 唯一键(unique) 介绍 意义 示例 建表 主键 唯一键 插入数据示例 主键和唯一键的应用差异 主键 唯一键 索引 auto_increment 介绍 示例 自动插入 手动插入 …

电子签章系统,怎么做到大量文件自动电子签章?

在当今信息爆炸的时代,海量文件的签署管理成为各行业面临的挑战之一。电子签章系统的出现,为解决这一问题提供了有效途径。本文将探讨电子签章系统如何实现海量文件自动签章,提高工作效率并确保安全性。 钉钉、企微、飞书、OA、CRM、ERP等&a…

K8S API访问控制之RBAC利用

前言 K8S对于API的访问安全提供了访问控制,主要为4个阶段,本文为第二个阶段——鉴权的RBAC。RBAC是基于角色的访问控制,使用kubeadm安装集群1.6版本以上的都默认开启了RBAC。本文主要研究集群可能存在的利用点及相对应的利用手法。 API访问…

图像的初识

一、图像的数组表示 RGB能够构成人眼所能识别的所有颜色。 二、图像的变换 Example: img.shape Out[329]: (512, 768, 3) img.dtype Out[330]: dtype(uint8) #补值变换 shift_temp_img [255,255,255] - img shift_img Image.fromarray(shift_temp_img.astype(ui…
最新文章