跳转到主要内容

【开源软件】最好的开源软件-2022-第20名 Dapr

bos 2022 dapr

对于分布式应用程序,每次构建新服务时,都会面临同样的无数问题:保护连接、设置可观察性、处理状态、处理消息等。所有这些都需要一次又一次地完成,通常是使用不同的第三方服务,所有这些都为您的代码添加了一层cruft,并将其与您可能不想继续使用的外部服务联系起来。

进入CNCF的孵化项目Dapr,它致力于消除一些困难和重复。Dapr作为应用程序的助手运行,可以抽象出微服务连接的复杂性。你的应用程序与Dapr对话,其余的由Dapr完成,所以你可以在AWS上运行并使用Kinesis,或者在谷歌云上运行并用PubSub,你的服务不需要知道区别。您可以在应用程序逻辑上花费更多的时间,而在所有粘合代码上花费更少的时间。

——Ian Pointer

【开源软件】最好的开源软件-2022-第18名 OpenTelemetry

bos 2022 opentelemetry

为了了解当今的分布式应用程序,昨天的简单日志和指标已经不够了。因此,Zipkin和Jaeger等可观察性工具以及Honeycomb等付费服务的兴起,使开发人员能够比以往任何时候都更深入地了解他们的应用程序。当然,这种新工具激增的缺点是它们的工作方式都有点不同。

OpenTelemetry通过一组标准API和工具弥合了可观察性系统之间的差距,以与供应商无关的方式将遥测数据的生成、发射、收集、处理和导出结合起来。你是不是一开始使用可观察性产品A,但后来发现自己想使用可观察性产品B?OpenTelemetry只需进行一些小的配置更改就可以实现这一点。

——Ian Pointer

【开源软件】最好的开源软件-2022-第15名 Spinnaker

bos 2022 spinnaker

Spinnaker是一个开源、多云的持续交付平台,可以帮助devops团队自动化发布并实现canary和其他部署策略。超过220家公司使用Spinnaker,包括Airbnb、SAP、Pinterest、Mercari和Salesforce,该社区有2500多名贡献者。较小的工程组织也成功地使用了Spinnaker。例如,Upwave的20人工程团队每周管理100次部署,变更的交付周期不到20分钟。主要的云提供商支持Spinnaker,你会发现一些电子书可以帮助开发者入门。Spinnaker有几个显著的成功案例,包括2020年拜登竞选总统。

【Go语言高级开发】使用 Git Hooks 改进你的 Go 开发工作流程

Git hooks 是一种非常强大的改​​进开发工作流程的方法,无需记住运行额外的脚本或执行额外的任务。在本文中,我们将看看如何在项目存储库中定义自己的简单 git 钩子,它可以自动执行 linting + 格式化 Go 代码的任务。

这个相当简单的示例应该让您了解如何利用 git hooks 来实现您自己的狡猾计划。

现实生活中的例子


这方面的一个例子来自我当前的一个项目,其中团队必须在将机密文件推送到项目的存储库之前对其进行加密。加密文件是一件简单的事情,但由于我们正在处理的加密文件的数量,记住加密每个已更改的文件成为一项挑战,而且我们经常会运行我们的项目并挠头而我们试图弄清楚为什么它没有发现新的秘密。

解决方案


当试图解决这个问题时,我们可以使用的工具相当有限,并且不想使用会影响团队中有自己偏好的人的当前开发流程的东西。