golang grpc

Golang Gin 请求参数的获取值 & 路由分组 & 控制器继承

一. 请求参数的获取值 动态路由 1 type User struct { 2 Username string `form:"username" json:"username"` 3 Password string `form:"password" json:"password"` 4 Age in ......
路由 控制器 amp 参数 Golang

golang select

golang select是多 channel 并行的利器 不要拿 switch 和 select 比,根本不是一个东西好嘛,差不少,只是名字稍微有点像 前置操作 golang 对 select 做了一些优化 select 结构体为空 当 select 里面为空的时候会直接 panic 只有一个 c ......
golang select

golang 内存分配

golang的内存分配思想从 tcmalloc 而来,思路是把对象分配成小对象减少锁的力度或无锁增加效率 定义 golang 内部的页(Page)大小为 8B 空间大小 golang 内部把要申请或使用的空间大小分为了三大类:微对象 (<16B),小对象(16B~32KB),大对象(>32KB), ......
内存 golang

golang 原子操作

在 golang 中,有原子包,能够实现原子操作,在我分析和猜想下,感觉解开了谜团 具体用法不说了,网上一大堆什么 cas,add,load,store 等,主要是底层实现 arm 架构 在 amd 架构下,通过汇编指令加锁来实现 代码在src/runtime/internal/atomic/ato ......
原子 golang

Golang Gin 模板基本使用

一, 模板定义,模板变量,条件判断,模板函数,模板命名 1 {{define "default/index.html"}} 2 <!DOCTYPE html> 3 <html lang="en"> 4 5 <head> 6 <meta charset="UTF-8"> 7 <meta name="v ......
模板 Golang Gin

golang开发实践

先处理错误避免嵌套 尽量避免重复 重复的代码想办法用一个函数包起来 type binWriter struct { w io.Writer size int64 err error } // Write writes a value to the provided writer in little ......
golang

golang web开发

Restful风格编程 是一个资源定位、资源操作的风格。 更简洁、更有层次,更易于实现缓存等机制。 golang http标准库 客户端功能 https://www.juhe.cn/ http请求:GET func testGetQueryWeather() { params := url.Valu ......
golang web

Golang Gin 初识

1.Gin框架搭建,初识 1 // main.go 2 package main 3 4 /*** 5 Gin入门: 6 文档: https://gin-gonic.com/zh-cn/docs/quickstart/ 7 热加载: 8 文档: https://github.com/cosmtrek ......
Golang Gin

【grpc】配置

@目录写在前面grpc 环境搭建nullproto证书1. 生成 rsa key2. 生成 ca crt3. 生成 csr4. openssl.cnf (/usr/lib/ssl/openssl.cnf) 【WINDOWS 默认为 openssl.cfg】5. 生成证书私钥 test.key6. 通 ......
grpc

【golang】【注释模版】

@目录写在前面注释要求package结构体方法代码逻辑注释参考资料基础/标准库/第三方库golang 导航编程规范算法|面试项目 写在前面 相关博文 个人博客首页 免责声明:仅供学习交流使用!开源框架可能存在的风险和相关后果将完全由用户自行承担,本人不承担任何法律责任。 注释要求 统一使用中文注释, ......
注释 模版 golang

golang-引用传递

dbTags := make([]*Tag, 0) for _, value := range idMap { dbTags = append(dbTags, &value) } 针对这种情况传递的是变量的地址 会导致新的数组都是相同的值 解决方式使用中间变量接一下 dbTags := make([ ......
golang

Golang VScode 开发环境搭建

写在前面 工作遇到简单整理 理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对大众理想的懦弱回归,是随波逐流,是对内心的恐惧 ——赫尔曼·黑塞《德米安》 安装插件下载 安装选择合适的版本 htt ......
环境 Golang VScode

golang环境和第三方爬虫包下载安装一把成

复制代码在CentOS7.6中命令行中全部粘贴执行,golang环境和第三方爬虫包全部安装一把成。 wget https://golang.google.cn/dl/go1.21.4.linux-amd64.tar.gz tar -zxvf go1.21.4.linux-amd64.tar.gz - ......
爬虫 第三方 环境 golang

[转]Golang线程池实现百万级高并发

转,原文: https://lk668.github.io/2021/03/22/2021-03-22-Golang%E7%BA%BF%E7%A8%8B%E6%B1%A0%E5%AE%9E%E7%8E%B0%E7%99%BE%E4%B8%87%E7%BA%A7%E9%AB%98%E5%B9%B6%E ......
线程 Golang

[转]手把手教你如何用golang实现一个timewheel时间轮

转,原文:https://lk668.github.io/2021/04/05/2021-04-05-%E6%89%8B%E6%8A%8A%E6%89%8B%E6%95%99%E4%BD%A0%E5%A6%82%E4%BD%95%E7%94%A8golang%E5%AE%9E%E7%8E%B0%E4 ......
timewheel 时间 golang

GRPC - TLS Credentials

Adding certificate information to a server implementation is twofold: implement logic to load credentials and create a TransportCredentials(http://mng ......
Credentials GRPC TLS

GRPC - Error Handling

Unstructured error messages can complicate decision making with ambiguity. If any service returns error messages without code, it might be challenging ......
Handling Error GRPC

Golang Redis && Socket

一丶Redis 1 package redis_test 2 3 import ( 4 "fmt" 5 6 "github.com/gomodule/redigo/redis" 7 ) 8 9 // 安装 10 // go get github.com/gomodule/redigo/redis 1 ......
amp Golang Socket Redis

Centos7.8 go1.18.3指定版本安装 完美运行Golang安装

安装背景说明:公司已经有3台服务器安装了go1.18.3版本,这次又买了一台新服务器,由于线上推上去的功能,可能会导致用户出现异常,要做压力测试,所以要重建go环境。 遇到问题:昨天下午自己下载了安装包,也是go1.18.3 解析到了/usr/local 目录 也配置了环境 /etc/profile ......
Centos7 版本 Centos Golang 18.3

使用golang来解密m3u8视频播放列表里面的ts文件

如果我有一个1.2G的mp4格式的电影,想要放在网站上进行播放,直接用video标签,src属性设置为视频的地址就可以了! 这种观看体验,究竟怎么样,可以自己去尝试下。。。 结果是令人崩溃的。。。加载巨慢,无法选择性观看自己想要看的部分,反正就是哪哪儿都不爽。 那么为了解决这个问题,现在有很多新的播 ......
播放列表 面的 文件 golang 视频

GRPC - Error Handling

If an error occurs, gRPC returns two basic pieces of information: a status code and an optional error message that explains the problem in detail. Sta ......
Handling Error GRPC

golang GMP

定义 G:Goroutine的缩写,一个G代表了对一段需要被执行的Go语言代码的封装 M:Machine的缩写,一个M代表了一个内核线程 P:Processor的缩写,一个P代表了M所需的上下文环境 定义都在源码 runtime/runtime2.go M M 的定义在runtime/runtime ......
golang GMP

golang channel

”不要以共享内存的方式来通信,相反,要通过通信来共享内存“ golang 的一个思想,不整文的,整点武的,具体来看channel 怎么做的 有一个很关键的 golang MPG 模型再单独分析,这篇先只分析 channel 定义 // runtim/chan.go type hchan struct ......
channel golang

golang map

golang 的 map 使用的是 hash map 基本结构 下面截取自源码,已翻译 // runtime/map.go:117 // go map 定义,hashmap 缩写 type hmap struct { count int // map 里文件数 flags uint8 // map ......
golang map

Golang把文件写到excel

最近有个需求是把看广告的日志转成excel package main import ( "bufio" "encoding/json" "flag" "fmt" "github.com/xuri/excelize/v2" "os" "time" ) // Ad 广告 type Ad struct { ......
文件 Golang excel

使用golang对服务器简单监控

package main import ( "fmt" "github.com/shirou/gopsutil/cpu" "github.com/shirou/gopsutil/disk" "github.com/shirou/gopsutil/host" "github.com/shirou/go ......
服务器 golang

clickHouse-golang

目录clickHouse优势与劣势golang操作clickHouse clickHouse优势与劣势 ClickHouse和传统的MySQL在设计和使用场景上有一些显著的区别,因此它们各自具有不同的优势和劣势。 ClickHouse的优势: 分布式架构:ClickHouse是为大数据分析而设计的分 ......
clickHouse-golang clickHouse golang

golang-数组

数组**** 在go语言中 数组的长度必须是常量,并且长度是数组类型的一部分,一旦定义了数组的长度则不能改变 如 func main() { var a [3]int64 // 定义一个长度为3 元素类型为int64的数组 fmt.Println(a, reflect.TypeOf(a)) } 其中 ......
数组 golang

从一道题来看看golang中的slice作为参数时的现象

1、题目 最近看群友在群里问一道关于golang中slice的题,题目如下: package main import "fmt" func main() { k := []int{1, 2, 3, 4} k = append(k, 5, 6) fmt.Printf("k --> value: %v, ......
一道 现象 参数 golang slice

windows系统使用终端和goland编辑器打包golang程序方法

上一篇文章说了,windows系统,如何使用goland编辑器打包exe和linux程序,这篇文章再补充一下,使用终端和goland编辑器打包的对比情况。 这里的终端可以是,cmd、Windows PowerShell、MINGw64 这里,我使用goland编辑器里面的Terminal,也就是Wi ......
编辑器 终端 windows 程序 方法