自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 收藏
  • 关注

原创 golang云原生怎么学?

3.强大的查询语言:PromQL 是 Prometheus 的查询语言,提供了丰富的操作符和函数,可以灵活地进行数据分析和展示。4.优秀的开发工具和库支持:Golang拥有丰富而活跃的开源社区,提供了许多优秀的开发工具和库,方便进行云原生开发。2.轻量级部署:Golang生成的二进制文件相对较小,并且不需要依赖额外的运行时环境,这使得应用程序在云原生容器中可以快速、轻松地部署和扩展。1.Kubernetes是一个强大且广泛使用的容器编排平台,但在使用之前需要考虑其优点和缺点,并根据具体情况进行评估和决策。

2023-08-08 17:00:49 1004

原创 Golang有那些开源框架值得学习?

1.相比其他框架,Echo 的社区相对较小,可能会影响到对问题的解决效率。2.支持多种数据库(如 MySQL、PostgreSQL 等)3.支持多种数据库(如 MySQL、PostgreSQL 等)2.支持多种数据库(如 MySQL、PostgreSQL 等)2.支持多种数据库(如 MySQL、PostgreSQL 等)1.功能强大,提供了路由、ORM、模板引擎、会话管理等工具。1.在性能方面可能不如其他 ORM 框架(如 Xorm)1.在性能方面可能不如其他 Web 框架(如 Gin)

2023-08-05 13:33:58 728

原创 关于计算机大学生秋招面试的那点事?(Golang篇)

经过上面这么多的准备,然后又交出了比较不错的简历,并且成功参加了面试,但是迟迟没有收到满意的入职offer,或者每一次面试感觉自己表现得还不错,但都没有下文了。首先,我们要确定好自己的目标,个人认为人生的第一份工作对以后的工作发展是有着很重要的意义的,如果选择的不是自己喜欢的,就会没有激情没有动力没有坚持,对职业发展没有意义。当我们收到了自己满意的offer,踏入公司,来到了一个新环境,作为一个应届生毕业生,或者说作为一个职场的菜鸟,我们要快速适应公司企业文化,做好角色的转换,以开展好工作。

2023-08-04 13:36:07 260

原创 在CSDN学Goalng,适合小白的12本书籍

4.全面系统:该书内容全面,覆盖了 Go 语言的所有主要特性和标准库,并且还涉及到了 Go 的一些高级应用领域(比如并发编程、网络编程等),对于想要深入学习 Go 语言的人来说是非常有价值的。2.内容全面:该书涉及到了 Go 并发编程的方方面面,包括 goroutine、channel、select、mutex 和条件变量等核心概念,以及协程池、工作池、超时处理等高级应用。3.实用性强:该书介绍了很多实际应用场景中常见的问题和解决方法,比如死锁、竞争条件、内存泄漏等,并出了相应的解决方案。

2023-08-03 13:38:23 255

原创 在CSDN学Golang场景化解决方案(微服务架构设计)

在这个设计中,我们使用异步消息传递模式来实现应用程序内部不同微服务之间的通信。在这个设计中,我们定义了两个微服务,并通过在main函数中将它们注册到同一个gRPC服务器上来实现对请求和其处理程序之间的静态绑定。在Golang微服务架构设计中,聚合器(Aggregator)微服务设计模式是一种常见的应用程序体系结构模式。在Golang微服务架构设计中,代理(Proxy)微服务设计模式是一种常见的应用程序体系结构模式。在这个设计中,我们定义了两个微服务,并通过设置它们之间的链式关系来实现请求的动态路由。

2023-08-02 19:15:00 763

原创 在CSDN学Golang场景化解决方案(基于grpc的微服务开发脚手架)

封装Logrus和Jaeger时,可以在init函数中创建全局log实例和tracer实例,并设置一些默认的字段值,然后在需要打印日志或者记录Span的地方调用对应的方法即可。封装Logrus时,可以在init函数中创建全局log实例,并设置一些默认的字段值,然后在需要打印日志的地方调用对应的方法即可。这样,在Golang基于gRPC的微服务开发中,就可以使用etcd来实现服务注册和服务发现了。这样,在Golang基于gRPC的微服务开发中,就可以使用TLS加密通信确保服务与服务之间的安全通信了。

2023-08-02 18:15:00 786

原创 在CSDN学Golang场景化解决方案(基于gin框架的web开发脚手架)

这样,在访问"/users/:id"时,会检查请求头部信息中的Authorization字段是否为有效的JWT令牌,并将其中包含的用户ID存储到上下文中。需要注意的是,以上示例中使用了简单的对称加密方式来生成和验证JWT令牌,如果你想使用其他加密算法或更复杂的认证方案,也可以根据实际情况进行修改。需要注意的是,以上示例中使用了自定义的请求头部信息来指定API版本,如果你想使用其他方式进行版本控制,也可以根据实际情况进行修改。在Golang基于Gin框架开发Web应用程序时,可以使用Redis作为数据缓存。

2023-08-02 13:35:25 592

原创 在CSDN学Golang场景化解决方案(EFK分布式日志系统方案)

在 Golang EFK 分布式日志系统方案中,ElasticSearch 是一个分布式搜索引擎和数据存储库,它可以用于存储和搜索大量的日志数据。在 Golang EFK 分布式日志系统方案中,ElasticSearch 的分布式集群部署需要先下载和安装 ElasticSearch,并按照官方文档进行配置和启动。上述配置示例使用 filebeat.inputs 插件指定要采集的日志文件路径和名称,使用 output.elasticsearch 插件将处理后的数据发送给 Elasticsearch。

2023-08-01 19:15:00 908

原创 在CSDN学Golang场景化解决方案(分布式日志系统)

总之,实现Golang分布式日志系统的配置文件热更新需要理解goroutine、channel等概念和基本使用方法,并且要有一定Golang编程经验。总体而言,开发一个基于gRPC和Kafka的日志收集服务需要有一定的Golang编程经验、熟悉gRPC和Kafka等相关技术,并且需要对分布式系统的设计和实现有一定了解。总体而言,使用etcd收集系统主要信息需要有一定的Golang编程经验、熟悉etcd的API和使用方式,并且需要对分布式系统设计和实现有一定了解。

2023-08-01 18:30:00 921

原创 在CSDN学Golang场景化解决方案(即时通讯goim)

此外,在添加新的节点之前,需要确保已经将用户数据同步到所有现有节点,并且将新的节点添加到路由表中。在GoIM中,当用户发送消息时,该消息会首先被发送到Job节点,并被写入Kafka的Topic中。如果需要增加Job节点,只需要启动新的Job节点即可,然后通过配置文件将新的节点加入到集群中。在GoIM中,所有的节点都会向Zookeeper注册自己,并监听其他节点的变化。在GoIM中采用了基于Protobuf的设计方案,既能够满足高效传输、易于扩展的需求,又能够保证数据的完整性和安全性。

2023-08-01 14:05:52 714

原创 在CSDN学Golang场景化解决方案(goadmin后台管理系统)

在 GoAdmin 中,我们可以根据需要定义更多复杂的策略和角色,并通过 Enforcer 对象来实现细粒度的权限控制。在 GoAdmin 中,我们可以根据需要定义更多复杂的子命令,并通过参数传递来实现不同的功能。以上示例中,我们创建了一个 Gin 应用,并实现了多租户中间件。在 GoAdmin 后台管理系统中,使用了 Casbin 作为权限管理框架,可以帮助我们快速地实现细粒度的权限控制。这样,当用户访问某个需要权限验证的页面时,GoAdmin 会根据用户所属的角色进行权限验证,并返回相应的错误信息。

2023-07-30 18:15:00 676

原创 在CSDN学Golang场景化解决方案(流媒体网站开发)

在注册和登录成功后,会返回一个 Token 给客户端,客户端每次请求时需要将该 Token 放在请求头中(Authorization 字段),服务器则通过解析该 Token 来获取用户标识。当客户端向服务器发送请求时,请求会先经过 Middleware1 处理,然后再经过 Middleware2 处理,最终交给 HelloHandler 函数处理,并将结果返回给客户端。这样就形成了一个完整的请求处理链。需要注意的是,Token Bucket 算法只能限制请求的速率,而不能防止恶意攻击或大量并发访问等情况。

2023-07-30 13:15:00 336

原创 在CSDN学Golang场景化解决方案(OAuth2.0授权登录)

OAuth2.0 定义了四种授权方式,即授权码(Authorization Code)、隐藏式(Implicit)、密码式(Resource Owner Password Credentials)和客户端凭证(Client Credentials)。OAuth 2.0 是一种用于授权的开放标准,可以让用户授权第三方应用程序访问他们存储在另一个服务提供商上的资源,例如图片、文本等。这就是 OAuth 2.0 协议的流程,可以帮助第三方应用程序安全地访问用户存储在其他服务提供商上的资源。

2023-07-29 19:15:00 1007

原创 在CSDN学Golang云原生(服务网格istio)

注意,在实际生产环境中,需要根据实际情况调整安全策略和权限规则。在Kubernetes中部署示例应用程序,并且使用Exporter组件将其指标数据暴露给Prometheus服务器。然后,在Kubernetes中创建Deployment和Service资源对象来部署该应用程序。在Kubernetes中,可以通过创建Gateway和VirtualService资源对象来配置Istio流量管理。完成以上步骤后,即可访问部署好的Golang云原生应用程序,并通过Istio Dashboard等工具查看其监控信息。

2023-07-29 18:15:00 1902

原创 在CSDN学Golang云原生(监控解决方案Prometheus)

在启动后,Prometheus服务器将会按照规则文件中的设置进行监控,并在满足告警条件时向Alertmanager发送报警信息。在Golang云原生应用程序中,可以使用Prometheus作为监控和报警的工具,通过配置Prometheus告警规则文件以及Alertmanager配置文件来实现报警信息的管理。在golang云原生中,通常使用日志库记录应用程序的日志。在启动后,Prometheus服务器将会按照配置文件中的设置进行监控,并收集和记录应用程序中定义的所有监控指标。

2023-07-29 13:47:55 1309

原创 在CSDN学Golang云原生(持续交付Argo)

Argo是一个基于Kubernetes的容器本地工作流引擎,可以帮助用户在Kubernetes上创建、运行和维护容器化应用程序。其中,表示允许不受信任的证书。表示启用RBAC。表示使用 LoadBalancer 类型的 Service。在浏览器中输入访问 Argo CD 的 UI 界面,用户名为admin,密码为,其中为上面命令输出的 LoadBalancer IP。现在你已经可以使用 Argo CD 来创建、运行和维护容器化应用程序了。

2023-07-28 20:15:00 1403

原创 在CSDN学Golang云原生(Kubernetes声明式资源管理Kustomize)

基准是指对于某个资源对象的默认配置,它定义了该资源对象在没有明确覆盖时应该具有的属性和行为。Kustomize 是 Kubernetes 官方提供的一个用于部署和管理应用程序的工具,它可以通过定义 Overlay、Patch 等配置文件来实现对 Kubernetes 资源对象的操作。Kustomize 是 Kubernetes 官方提供的一个用于部署和管理应用程序的工具,它可以通过定义 Overlay、Patch 等配置文件来实现对 Kubernetes 资源对象的操作。

2023-07-28 18:15:00 2401

原创 在CSDN学Golang云原生(Kubernetes二开)

例如,你可以通过聚合API Server添加一个新的CRD(Custom Resource Definition),该CRD表示运行在集群中的特定应用程序状态,并为该应用程序提供管理界面。通过使用自定义资源,用户可以扩展 Kubernetes API 并在 Kubernetes 集群中管理特定的应用程序、服务或工具。聚合API Server是一个代理服务,它允许你将自定义API添加到Kubernetes API中,并提供与标准Kubernetes API相同的访问和安全机制。

2023-07-28 13:44:40 1698

原创 在CSDN学Golang云原生(Kubernetes集群安全)

要启用 ABAC 授权模式,管理员必须在 kube-apiserver 的启动参数中添加 --authorization-mode=ABAC,并指定存储策略文件路径(通过 --authorization-policy-file 选项)。要启用 Webhook 授权模式,管理员需要在 kube-apiserver 的启动参数中添加 --authorization-mode=Webhook,并指定配置文件路径(通过 --authorization-webhook-config-file 选项)。

2023-07-27 19:15:00 1576

原创 在CSDN学Golang云原生(Kubernetes集群管理)

此时,可以为每个 Kubernetes 集群配置一个独立的 Context,并将相应的 Namespace 对象映射到该 Context 中,从而实现 Namespace 和 Context 的双重隔离和共享。例如,我们可以为新的节点设置标签,然后在 Pod 定义中指定相应的 Node Selector,或者在新的节点上添加污点,并在需要运行该 Pod 的节点上设置 tolerations。需要注意的是,Pod 的优先级别、资源限制和 QoS 等因素都会影响驱逐机制的决策结果。

2023-07-27 18:15:00 1321

原创 在CSDN学Golang云原生(Kubernetes Pod 有状态部署)

由于每个 MongoDB 实例都需要有自己的 hostname 和 network identity,所以我们需要创建一个 Headless Service 来为每个实例分配独立的 hostname。为了让每个 Redis 实例都有唯一的 hostname 和 network identity,我们需要创建一个 Headless Service 来分配独立的 hostname。StatefulSet 会按照。这个配置将创建三个 Redis 实例,每个实例都有自己的 PVC 存储卷和配置文件。

2023-07-27 14:00:36 1028

原创 在CSDN学Golang云原生(Kubernetes Volume)

PersistentVolume 和 Volume 都是 Kubernetes 中常用的持久化资源对象,在应用程序开发中起到了很重要的作用。它们的不同点在于 Volume 是由 Pod 直接使用的,而 PersistentVolume 则是由多个 Pod 共享使用的。Volume 可以将容器内部的文件系统挂载到宿主机上,也可以将多个容器间共享一个 Volume,并且 Volume 与 Pod 的生命周期相同。在 Kubernetes 中,可以使用动态 StorageClass 制备的方式来创建 PV。

2023-07-26 21:15:00 1012

原创 在CSDN学Golang云原生(Kubernetes Service)

因此,在使用Ingress时,需要先定义好所需的Service,并将它们标记为需要通过Ingress暴露出来的服务。需要注意的是,在进行发布之前,请确保已经创建了相关的 Deployment 或 StatefulSet 等资源,并且已经正确标记了相关的 Pod 和 Endpoint。最后,在应用程序中更新相关代码,使其支持HTTPS协议即可。需要注意的是,在部署Ingress Controller之前,需要确保已经正确设置了Kubernetes集群中的网络插件,并且Node节点都已经正确配置和准备好。

2023-07-26 18:15:00 738

原创 在CSDN学Golang云原生(Kubernetes Pod调度)

其中,PodAffinity 用于指定必须共存的 Pod,而 PodAntiAffinity 用于指定不得共存的 Pod。我们希望防止任何Pod被调度到node1上,并且只允许具有“gpu=true”标签的Pod在node2和node3上进行调度。除了使用 golang 代码进行调度之外,也可以在 Pod 的 YAML 文件中添加相应的 NodeAffinity 字段来指定 Pod 的亲和性调度规则。需要注意的是,如果指定了多个亲和性规则,则每个规则都必须满足才能将 Pod 调度到对应的节点上。

2023-07-26 13:37:16 1649

原创 在CSDN学Golang云原生(Kubernetes Pod无状态部署)

的Horizontal Pod Autoscaler对象,并设置CPU利用率达到80%时自动扩展Pod副本数量至最大值10个(如果当前Pod副本数小于1,则会自动创建一个新的Pod)。在Kubernetes中,Deployment是用于部署应用程序的一种资源对象,它定义了一个可伸缩、自修复的应用程序副本集,并通过控制器对这些副本进行管理和协调。Kubernetes中的Pod是可以动态创建、销毁的,如果希望Pod只使用静态的IP地址而不是自动生成一个IP地址,那么就需要使用静态Pod。

2023-07-25 19:15:00 1716 1

原创 在CSDN学Golang云原生(Kubernetes Pod)

使用 Golang 运行上面的示例代码,它会在 Kubernetes 集群中创建一个名为 example-pod 的 Pod,其中包含两个容器:nginx 和 busybox。Kubernetes 使用一种称为控制器(Controller)的机制来管理容器和 Pod 的运行状态,并提供了相应的生命周期钩子函数来处理容器事件。其中,除了主要的业务容器之外,还可以定义一个或多个 Init Container(初始化容器),用于在业务容器启动之前完成一些必要的预处理工作。

2023-07-25 18:15:00 1249

原创 在CSDN学Golang云原生(Kubernetes基础)

其中,--add-runtime 参数指定了 CRI-Dockerd 使用的容器运行时名称和路径,--host 参数指定了连接到 dockershim 的 sock 文件路径,--default-runtime 指定默认的运行时名称,--exec-opt 参数用于配置 cgroup 驱动程序。需要注意的是,在编写自己的 API Server 组件之前,需要对 Kubernetes 的架构、API Server 的工作原理以及相应的开发规范有一定了解。

2023-07-25 13:57:25 1184

原创 在CSDN学Golang云原生(Docker项目部署)

是 Stack 的名称。

2023-07-24 21:45:00 794

原创 在CSDN学Golang云原生(Docker镜像)

最后,它返回容器的根路径。在执行这个 Dockerfile 的过程中,Docker 会将每个指令生成的结果保存为一个新的分层,并将它们合并成最终的镜像。需要注意的是,在编写 Dockerfile 文件时,应该尽量遵循最佳实践,避免一些常见问题,如不必要的安装软件包、不规范的文件权限等。在golang中,镜像内容寻址机制指的是程序在运行时如何查找和访问已经编译好的包文件。无论是哪种方式,都需要遵循最佳实践制作好 Golang 镜像,并确保该镜像具有较高的可重复性和稳定性,在生产环境中能够正常运行。

2023-07-24 20:45:00 726

原创 在CSDN学Golang云原生(Docker容器)

值得注意的是,在创建命名空间隔离的网络时,需要确保该网络的名称在宿主机上是唯一的。包来创建和管理 Docker 容器,并通过不同类型的网络驱动来实现容器之间的通信。需要注意的是,在创建 overlay 网络时,我们需要指定一个 IPAM 配置来管理容器的 IP 地址分配。通过这种方式,容器就可以在一个独立的命名空间内运行,与主机和其他容器隔离开来。需要注意的是,在运行具有长期运行服务(例如 Web 服务器)的 Docker 容器时,请务必确保正确设置健康检查和自动重启策略以确保高可用性。

2023-07-24 16:32:44 805

原创 在CSDN学Golang云原生(Docker基础)

一种常见的解决方案是使用Dockerfile构建一个包含所需依赖的基础镜像,并将该镜像作为RootFs的基础镜像。Cgroup是Linux内核中的一种机制,可以为进程分配资源配额,并限制它们对系统资源(如CPU、内存、IO等)的使用。一旦你成功地创建了新的Namespace,并在其中运行应用程序,则可以根据需求对其进行配置和管理。例如,你可以限制容器内部访问外部网络或文件系统的权限,并设置各种其他限制和规则。在创建了新的Cgroup目录后,我们需要通过配置相应参数来限制进程所能使用的各种资源。

2023-07-23 17:15:00 626

原创 在CSDN学Golang云原生(gitlab)

在kaniko的PodSpec中,我们使用了一个名为“my-configmap”的配置映射和一个名为“my-secret”的秘密来提供所需的信息(如Dockerfile和Kubernetes配置文件)。总体而言,在Golang项目中,您可以通过编写类似于上面给出的示例配置文件的配置文件,使用CI/CD工具来自动化构建、测试和部署过程,以加快开发速度并减少人为错误。在Golang中,基于GitLab的代码评审是一种非常有效且流行的方法,它可以帮助团队成员更好地协作、共享知识,并确保代码始终处于高质量状态。

2023-07-23 14:30:00 554

原创 在CSDN学Golang云原生(git)

但是,如果您采取正确的方法并提供适当的支持,那么其他开发人员应该能够轻松地访问、理解和使用您的代码。在使用 Git 进行分支管理时,需要遵循团队的代码合并和发布流程,以确保代码质量和稳定性。这个命令可以将指定名称的分支合并到当前所在的分支。Golang的Git工作流程与其他语言的Git工作流程非常相似,需要注意的是在进行开发和提交更改时尽可能遵循团队规范和标准。在 Go 语言中,分支管理与其他语言的版本控制系统是类似的,通常使用 Git 或 SVN 等工具来进行分支管理。这个命令可以切换到指定名称的分支。

2023-07-22 14:04:48 512

原创 在CSDN学Golang分布式中间件(ElasticSearch)

倒排索引是一种用于快速查找文本中特定单词或短语的数据结构。它将文本中的每个单词或短语与包含该单词或短语的文档列表相关联。这使得可以轻松地查找包含给定单词或短语的所有文档。在 Go 中,可以使用 map 和 slice 来实现倒排索引。具体来说,可以使用一个 map 将每个单词映射到包含该单词的文档列表。这样就可以通过检索特定单词来获取包含该单词的所有文档。另一方面,Lucene 是一个全文搜索引擎库,可用于建立更高效和更复杂的倒排索引。

2023-07-22 14:00:06 523

原创 在CSDN学Golang分布式中间件(kafka)

在向 Kafka Broker 发送消息时,我们将消息通过 Input() 方法写入到生产者的输入通道中,并且在 select 语句中等待结果返回。需要注意的是,当消费者组发生 rebalance 事件时,Kafka 会调用一次 Cleanup() 方法来释放掉当前所有分配给该消费者组的分区,然后再调用一次 Setup() 方法来分配新的分区。Kafka 可以作为一个高吞吐量的消息队列,但是在实际应用中,当流量过大时,可能会造成消息处理能力不足的情况。时,生产者发送消息后不会等待服务器响应,直接返回成功。

2023-07-21 22:30:00 769

原创 在CSDN学Golang分布式中间件(etcd)

例如Range查询 /foo 时,客户端请求首先会被路由到集群中任意一个节点上执行本地查询,并返回所有key以/foo为前缀的结果列表及这些结果在整体Key空间内的范围界限信息(即begin和end)。在此后的运行过程中,如果某个节点发现自己与Leader失去了联系,则会转变成Candidate状态,并向其他节点发送投票请求。同时,在接收到其他候选者的投票请求时,也需要进行投票确认。当某个节点接收到客户端发起的写入请求时,它首先将该请求作为一个日志条目追加到自己的日志末尾,并向其他节点发送同步请求。

2023-07-21 14:17:59 139

原创 在CSDN学Golang分布式中间件(mongodb)

/ 插入多个文档 docs := []interface{}{ bson.M{"name": "Bob", "age": 25}, bson.M{"name": "Charlie", "age": 30}, } result, err := collection.InsertMany(context.Background(), docs)注意:BSON文档中的键值对需要按照一定的顺序排列。操作将所有相同年龄段和性别的文档进行分组,并统计各组的记录数,然后通过sum操作对每个分组内的文档数量进行求和。

2023-07-21 14:16:50 125

原创 在CSDN学Golang分布式中间件(mysql)

最左匹配原则是指,在使用联合索引(多列组成的索引)进行查询时,如果查询条件涉及到了这个索引的前几列,那么这个索引就可以被用来加速查询。需要注意的是,在MVCC模型中每个写操作都会生成一个新版本,并且它们会被保留在历史记录中。具体实现方法为:将主表中需要查询的字段以及联合索引中的所有列都添加到索引中,这样在查询时只需要读取索引即可获取所需数据,避免了对主表数据的访问。在MySQL中,普通索引是一种加速查询操作的技术,它通过将某个列或列组合进行排序,并创建相应的数据结构来提高查询效率。

2023-07-20 19:15:00 277 1

原创 在CSDN学Golang分布式中间件(redis)

Go语言中的Redis整体结构分为客户端和服务器端两部分,其中服务器端实现了Redis协议的存储引擎。在服务器端,Redis主要采用哈希表(hash table)作为主要数据结构来存储键值对。哈希表由多个哈希桶(hash bucket)组成,每个哈希桶包含若干个节点(node),每个节点表示一个键值对。在Redis中,每个节点都有指向下一个节点的指针,因此同一哈希桶内的所有节点可以通过链表连接起来。同时,每个节点还包括三个属性:指向键和值的指针、指向下一个节点的指针以及哈希函数计算出来的哈希值。

2023-07-20 14:45:06 157

原创 在CSDN学Golang(分布式链路追踪OpenTelemetry)

在上面的示例中,我们创建了一个名为“my-device”的设备,并将其注册到OTDL Collector中。在上面的示例中,我们使用Zipkin客户端库创建了一个HTTP Collector Endpoint和一个Recorder对象,并通过这两个对象创建了一个tracer对象。然后,我们将tracer对象设置为全局变量,并添加了一个跟踪注释。在上面的示例中,我们创建了一个名为“my-device-profile”的DeviceProfile对象,并将其注册到OTDL Collector中。

2023-07-19 18:15:00 252 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除