representing zones time go

go map的坑

range时不能动态的增加map的range范围 golang的map是hash表实现的,hash表的遍历就是遍历所有的桶,所以新添加的元素可能出现在之前遍历过的桶中,这样就会有些新添加的元素可能遍历不到。 实际生成环境中,不建议遍历一个正在写入的map,这并不是一种好的设计,如果确实有这样的需求, ......
map go

electron+go开发记录

// 设置应用通过防火墙,electron方面 const command = `netsh advfirewall firewall add rule name="mange" dir=in program="${mange}" action=allow` // cmd允许应用通过防火墙的命令 / ......
electron go

Prometheus Go client library 详解

介绍 Prometheus 支持 4 种 指标类型,分别是 Counter、Gauge、Histogram 和 Summary。 Counter 指标类型,指标值是只能递增,不能递减的数值。需要注意的是,当 Prometheus server 重启时,指标值会被重置为 0。该指标类型可用于统计接口的 ......
Prometheus library client Go

解决ls: relocation error: /lib64/libacl.so.1: symbol getxattr, version ATTR_1.0 not defined in file libattr.so.1 with link time reference

解决ls: relocation error: /lib64/libacl.so.1: symbol getxattr, version ATTR_1.0 not defined in file libattr.so.1 with link time reference 参考:https://www ......

在 Go-Kratos 框架中优雅的使用 GORM 完成事务

准备工作 创建新项目 kratos new helloworld cd helloworld # 拉取项目依赖 go mod download # 项目中的 config 等请自行修改 添加事务 如果您还不了解 Kratos、 mysql 事务 和 GORM 的话请先了解一下。 data 层承载事务 ......
Go-Kratos 框架 事务 Kratos GORM

2023-11-25:用go语言,给定一个数组arr,长度为n,表示n个格子的分数,并且这些格子首尾相连, 孩子不能选相邻的格子,不能回头选,不能选超过一圈, 但是孩子可以决定从任何位置开始选,也可以

2023-11-25:用go语言,给定一个数组arr,长度为n,表示n个格子的分数,并且这些格子首尾相连, 孩子不能选相邻的格子,不能回头选,不能选超过一圈, 但是孩子可以决定从任何位置开始选,也可以什么都不选。 返回孩子能获得的最大分值。 1 <= n <= 10^6, 0 <= arr[i] < ......
格子 首尾相连 孩子 首尾 数组

【2.0】常用模块之time、datetime模块

【一】时间模块(time/datetime) 【二】表示时间的三种方式 在Python中,通常有这三种方式来表示时间: 时间戳 元组(struct_time) 格式化的时间字符串: 格式化的时间字符串(Format String): ‘1999-12-06’ 【三】time (1)导入时间模块 im ......
模块 datetime 常用 time 2.0

go 上下文:context.Context

go 上下文:context.Context 原创 孟斯特 孟斯特 2023-11-17 08:30 发表于北京 收录于合集#Golang92个 Go语言中的上下文(Context)是一种用于在 Goroutines 之间传递取消信号、截止时间和其他请求范围值的标准方式。context 包提供了 C ......
上下文 上下 context Context go

Jaeger Client Go 链路追踪|入门详解

目录 从何说起 Jaeger 部署 Jaeger 从示例了解 Jaeger Client Go 了解 trace、span tracer 配置 Sampler 配置 Reporter 配置 分布式系统与span 怎么调、怎么传 HTTP,跨进程追踪 客户端 Web 服务端 Tag 、 Log 和 R ......
链路 Jaeger Client Go

go--条件判断 if、switch

if 基本语法 if 条件A{ ... }else if 条件B{ ... }else if 条件C{ ... }else{ ... } 例子 package main import "fmt" func main() { var fruit string = "6 个苹果" var waterme ......
条件 switch go

github clone 报错443 错误代码 Failed to connect to github.com port 443 : Timed out

github克隆 报错443 错误代码 Failed to connect to github.com port 443 : Timed out 查看当前系统代理的 IP 地址和端口号 地址与端口号为:127.0.0.1:7890 *修改 Git 的网络设置* # 注意修改成自己的IP和端口号 gi ......
github 443 错误 connect 代码

Go标准库学习:strings和bytes

strings包和bytes包 strings包和bytes包非常像,几乎所有函数都有string和[]byte两种接口,其中前者被实现在strings包中,而后者被是现在bytes包中,所以这里将这两个包一起学习。 官方文档: strings包:https://pkg.go.dev/strings ......
strings 标准 bytes

go-view 依赖库

go-view 依赖库 const packageReadme = { "name": "go-view", "version": "2.2.6", "engines": { "node": ">=12.0" }, "scripts": { "dev": "vite --host", "build" ......
go-view view go

2023-11-22:用go语言,给你一个长度为 n 下标从 0 开始的整数数组 nums。 它包含 1 到 n 的所有数字,请你返回上升四元组的数目。 如果一个四元组 (i, j, k, l) 满足

2023-11-22:用go语言,给你一个长度为 n 下标从 0 开始的整数数组 nums。 它包含 1 到 n 的所有数字,请你返回上升四元组的数目。 如果一个四元组 (i, j, k, l) 满足以下条件,我们称它是上升的: 0 ⇐ i < j < k < l < n 且 nums[i] < n ......
下标 整数 数组 数目 长度

学习mongo和go

mongo: moduleData, ok := result.Lookup("context1", "context2").DocumentOK() result.Lookup("context1", "context2") 用于检索名为 "content1" 的字段,并且该字段的值又是一个嵌套的 ......
mongo

基于go-zero的api网关示例

以下是基于 go-zero 框架的 API 网关示例。这个示例包括一个简单的 API 网关,它接收 HTTP 请求,将请求路由到不同的服务,并返回响应。 创建项目 首先,在 go-zero 仓库中创建一个新的目录: mkdir api-gateway cd api-gateway 创建 Go 文件 ......
网关 示例 go-zero zero api

基于go-zero的rpc服务示例

以下是一个基于 go-zero 框架的简单 RPC 服务示例,该示例包括一个服务端和一个客户端通过 gRPC 进行通信。 服务端 1、定义 .proto 文件 在 rpc/add 目录下创建 adder.proto 文件,定义 RPC 服务: syntax = "proto3"; package a ......
示例 go-zero zero rpc go

Go使用开源库go-excelize操作Excel文件

以下是一个示例代码,读取一个 Excel 文件并打印其中的所有单元格值: package main import ( "fmt" "github.com/30x/go-excelize" ) func main() { // 打开 Excel 文件 f, err := excelize.OpenFi ......
go-excelize excelize 文件 Excel go

Grafana学习(4)——Time series dimensions

In Introduction to time series, the concept of labels, also called tags, is introduced: Another feature of a TSDB is the ability to filter measurement ......
dimensions Grafana series Time

Grafana学习(3)——Introduction to time series

Imagine you wanted to know how the temperature outside changes throughout the day. Once every hour, you’d check the thermometer and write down the tim ......
Introduction Grafana series time to

go ants使用

NewPoolWithFunc -> func(data interface{}) -> data.(Task) -> Task.Do 上面的这些函数都是同步的,添加到 NewPoolWithFunc中后,执行 invoke会变成异步 NewPool和NewPoolWithFunc本质是一样的,都是 ......
ants go

go errgroup用法

草稿 errgroup就是在waitgroup基础上封装了一层。 我还是不喜欢 go的这个控制goroutine的方式。 只贴一下代码: func main() { eg, ctx := errgroup.WithContext(context.Background()) for i := 0; i ......
errgroup go

[Go] "Method Declaration" on a custom type

package data // new type type distance float64 type distanceKm float64 // add ToKm method to distance type func (miles distance) ToKm() distanceKm { / ......
quot Declaration Method custom type

pb.go 转 proto 文件

使用python将pb.go 文件转为proto文件 编程语言不限,挺简单的,不熟悉python的可以看看逻辑,自己改下 import os import re # 处理字段选项 def dispose_field_type(ft: str): ft = ft.replace("*", "") if ......
文件 proto pb go

【go】【test】benchmark

@目录写在前面 go 测试基础测试fib.gotest_fib.go使用内存generate_test.go测试参数测试generate_test.go参数测试timeRestnullsort_test.go 测试开始记时⌛️和测试结束计时⌛️测试参考资料 写在前面 相关博文 个人博客首页 免责声明 ......
benchmark test

go使用context.withtimtout取消一个超时操作

3 使用context.WithTimeout: package mainimport ("context""fmt""time")func main() {timeout := 5 * time.Secondctx, cancel := context.WithTimeout(context.Ba ......
withtimtout context

NUMA内存节点和内存zone

在现代大型服务器中多个内存节点机器一般都采用NUMA架构,而NUMA架构中不同的内存节点在Linux内核中使用pg_data_t类型(实际是struct pglist_data)来表示表示。 Linux又为每个内存节点根据内存地址的高低划分了不同的区域类型如ZONE_DMA、ZONE_DMA32、Z ......
内存 节点 NUMA zone

Go基础面经题

Go基础 1. 基础特性 Go的优势 天生支持并发,性能高。 单一的标准代码格式,比其他语言更具可读性。 自动垃圾收集机制比Java和Python更有效,因为它与程序同时执行。 Go数据类型 int, string, float, bool, array, slice, map, channel, ......
基础

go的类型断言跟静态转换

Go 中的类型断言与静态转换 原创 TimLiu 爱发白日梦的后端 2023-10-15 10:47 发表于广东 收录于合集#go95个 类型断言 在 Go 中,类型断言用于提取和测试接口值的动态类型。通过断言,您可以确定接口值是否持有特定的底层具体类型,如果持有,则获取该值。下面是一个如何在 Go ......
静态 类型

Go捕获系统信号

原理 简单来说,main中可以捕获系统的中断信号,并将其传入到 chan中; 原来的main goroutine因为要捕获系统的 interrupt信号,所以需要将原来的代码放入到另外一个goroutine中。 这样做之后,如果不主动处理interrupt信号,程序默认是无法结束的 示例代码: fu ......
信号 系统