golang grpc

golang实现设计模式之工厂模式总结-代码、优缺点、适用场景

工厂模式也是一种创建型模式,它与简单工厂不同的是将实例的创建推迟到具体的工厂类方法中实现,每一种产品生成一个对应的工厂,从而替换掉简单工厂方法模式中那个静态工厂方法。所以在工厂模式中,不同产品就由不同的工厂生产,每次增加产品时,我们就不需要在类似在简单工厂中,在统一的工厂类方法中修改,而是通过直接新 ......
模式 设计模式 优缺点 场景 工厂

Golang扫盲式学习——GO并发 | (一)

## 并发与并行😣 ### 并发与并行的概念和区别 并行:同一个时间段内多个任务同时在不同的CPU核心上执行。强调同一时刻多个任务之间的”**同时执行**“。 并发:同一个时间段内多个任务都在进展。强调多个任务间的”**交替执行**“。 ![](https://img2023.cnblogs.co ......
Golang

【grpc】记一次jmeter压测响应超时分析

一、场景 由于jmeter测试时,接口存在超时问题,所以就需要分析超时的原因 二、抓包 我们需要把分析数据抓下来 -> % sudo tcpdump -i eth0 host 192.168.3.123 and port 6788 -w capture.pcap tcpdump: listening ......
jmeter grpc

golang实现设计模式之简单工厂模式总结-代码、优缺点、适用场景

今天分享另外一种创建型类型的设计模式-简单工厂模式,简单工厂模式简单概括:客户端请求时,通过工厂类的创建接口,传入不同的参数,进而实现返回不同类的实例,可见运用简单工厂模式,是为了获取不同类的实例。 举个例子,有个工厂,生产不同的水果罐头,有代号01的黄桃罐头,代号02的荔枝罐头,代号03的苹果罐头 ......
模式 设计模式 优缺点 场景 工厂

Golang使用Gin-swagger搭建api

前提是安装好了go环境与vscode环境 并配置过了gin 项目结构 1、先安装swaggo依赖包 //1 go get "github.com/swaggo/files" //2 go get "github.com/swaggo/gin-swagger" //3 go get -u github ......
Gin-swagger swagger Golang Gin api

gRPC使用实例

当然!这是三个使用Java实现的gRPC示例代码,用于演示gRPC的基本用法和通信模式: **示例1:简单的Unary RPC** 在此示例中,客户端向服务器发送请求,并接收单个响应。 **gRPC服务定义文件**(.proto文件): ```protobuf syntax = "proto3"; ......
实例 gRPC

技术招聘漫谈 | 正在招Golang工程师的你,赶快收藏这份识人秘籍!

各位技术面试官,欢迎来到新一期的技术招聘漫谈专栏。 在前两期的专栏中,我们解析了前端工程师以及 Java 工程师 这两个常见技术岗位的招聘技巧。 今天,我们想把目光聚焦在一个前景与“钱”景都非常火热的岗位——Golang 开发工程师。《腾讯 2022 年度研发大数据报告》显示,Golang 连续两年 ......
秘籍 工程师 正在 Golang 工程

golang 结构体泛型

``` package main import "fmt" type students struct { Name string Age string } type teacher struct { Name string Phone string } type School interface { ......
结构 golang

golang实现设计模式之单例模式总结-代码、优缺点、适用场景

在日常业务开发中,适当应用设计模式,可以实现我们的业务需求,例如全局唯一配置,这里就需要用到单例模式。 什么情况下,我们可以使用单例模式呢? 这得考虑该模式的适用场景: * 用来控制类型实例的数量的,当需要确保一个类型只有一个实例 ### 单例模式的适用场景: * 1.统计当前在线人数(网站计数器) ......
模式 设计模式 优缺点 场景 代码

一次折腾 Golang 泛型、反射和 gorm 框架的记录

事情的起初是一个很常见的需求:批量更新多条记录的相同字段,每条记录对应的字段值不同因此无法批量 Update。看着没啥难度却没想到从开头到结束整整花了一天的时间,遂有此文。 首先尝试了 gorm 自带的 `Save()`,按理说 gorm 本身会自动识别零值不去更新,这样直接创建一个实例数组挨个赋值 ......
框架 Golang gorm

Golang中好用的三方工具包lancet使用

项目地址 lancet源码项目地址 123 123 ......
工具包 三方 工具 Golang lancet

Golang - LevelDB是什么?为什么需要K-V存储?

一、介绍 https://github.com/syndtr/goleveldb LevelDB 是一个由 Google 公司所研发的 K-V 存储嵌入式数据库管理系统编程库,以开源的 BSD 许可证发布。其作为 LSM Tree 的经典实现,具有很高的随机写,顺序读/写性能,但是随机读的性能很一般 ......
LevelDB Golang K-V

Golang入门笔记

## 第一个Go程序 ```go package main //包,表明代码所在的模块(包) import "fmt" //引入代码依赖 //功能实现 func main(){ fmt.Println("Hello World"); } ``` 编译执行 ```bash ➜ go-example g ......
笔记 Golang

golang踩坑:slice传参和for range赋值和goroutine闭包

一、slice的坑 案例: 查看以下代码会输出啥? func main() { a := []int{7,8,9} fmt.Printf("len: %d cap:%d data:%+v\n", len(a), cap(a), a) ap(a) fmt.Printf("len: %d cap:%d ......
闭包 goroutine golang slice range

Golang GIN 接收结构体切片(前端对象数组)

想接收前端这样的数据格式:【json数组】 [ { "password": "casso", "mobile": "13456789999", "nick_name": "go", "icon": "地址" }, { "password": "casso", "mobile": "134567899 ......
数组 前端 对象 结构 Golang

Golang环境——GOPATH vs go.mod

GOPATH在本文中,我们将探讨 Go 编程的传统环境与基础环境之间的差异go.mod。 这种区别对 Go 开发人员如何构建和管理他们的项目工作区和依赖项具有重要意义。 我们将从了解GOPATH环境、它的组织和结构开始。然后,我们将探讨go.mod采用这种方法来提供模块化和灵活的方式来组织 Go 项 ......
环境 Golang GOPATH mod vs

golang使用gorm框架执行原生sql

gorm框架执行原生sql有两种方式,作用不同,分别是: db.exec("sql语句") //执行插入删除等操作使用 db.raw("sql语句") //执行查询操作时使用 举例: db.Exec("UPDATE orders SET shipped_at=? WHERE id IN (?)", ......
框架 golang gorm sql

[golang]gin框架接收websocket通信

使用gin框架编写服务端应用,配置路由接收websocket请求并处理。同时实现一个websocket命令行客户端用于与服务端通信。 ......
websocket 框架 golang gin

pongo2 类似django 语法的golang 模版引擎

pongo2 类似django 语法的golang 模版引擎,当前兼容django 1.7 同时还包含了强大的三方生态支持(比如beego,gin,echo 框架。。。) 参考使用 main.go package main import ( "fmt" "log" "github.com/flosc ......
模版 语法 引擎 pongo2 django

gnmi 基于grpc 的网络管理接口

网络自动化是这几年对于网络管理比较重要的话题,openconfig 就是一个开放组织,gnmi 是基于grpc 提供的网络管理接口,对于需要开发网络自动化的应用是值得参考使用的 参考资料 https://github.com/openconfig/gnmihttp://www.openconfig. ......
网络管理 接口 网络 gnmi grpc

golang中切片越界获取到零值的坑

B站视频演示 golang中切片越界获取到零值的坑 代码截图 ~~~ ......
golang

2023-05-26:golang关于垃圾回收和析构函数的选择题,多数人会选错。

2023-05-26:golang关于垃圾回收和析构的选择题,代码如下: ```go package main import ( "fmt" "runtime" "time" ) type ListNode struct { Val int Next *ListNode } func main0() ......
选择题 函数 垃圾 golang 2023

golang的iota使用

1、iota是什么 iota是常量的计数器,可以理解为const定义常量的行数的索引,注意是行数。 const中每新增一行常量声明将使iota计数一次,前提是iota在const中出现。 2、应用场景 主要应用场景是在需要枚举的地方 3、易错点 因为iota一般出现在const语句块的第一行,不少初 ......
golang iota

使用Postman调用.NET Core的gRPC服务

项目引入 <PackageReference Include="Grpc.AspNetCore.Server.Reflection" Version="2.51.0" /> net6.0的项目 Program.cs 需要添加的代码 //注入服务 builder.Services.AddGrpcRef ......
Postman Core gRPC NET

golang·context

# Context ## 引入 **Q:如何优雅地控制子协程(goroutine)退出?** - 利用waitgroup+全局变量notify退出 ~~~~~go package main import ( "fmt" "sync" "time" ) // 引入:为什么需要context? var ......
context golang 183

golang-》使用go mod 代理安装插件

golang是谷歌产品,很多插件国内被禁止访问,需要使用代理才能访问,https://goproxy.io是一个国内的代理 执行 ``` # 旧版,已废弃 go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.io,direct ``` ......
插件 golang mod

Golang HTTP Status 400

一、问题分析 HTTP 400的状态码,可以统称前后台对应不上,说明这个请求是无效的,并没有进入后台服务器(控制器)里。主要有两种形式: 1、bad request 是 “错误的请求" 通常产生问题的原因也有两个:①前端传的参数类型或者名称与后台接收参数的实体类的属性类型或者名称不一致;②前端提交a ......
Golang Status HTTP 400

golang 解决提示dial tcp 172.217.160.113:443: connectex: A connection attempt failed

解决方法:改成国内可用的代理地址。在命令提示符输入: go env -w GOPROXY=https://goproxy.cn ......
connection connectex attempt golang failed

golang grpc demo

protobuf 安装链接:https://liqiang.io/post/install-protobuf-in-centos-f0a9b926 ......
golang demo grpc

GRPC server的四种传输模式

GRPC作用,为什么要有GRPC? gRPC(gRPC Remote Procedure Call)是一种高性能、通用的远程过程调用(RPC)框架,由Google开发并开源。它使用现代的、高效的协议缓冲区(Protocol Buffers)作为接口定义语言(IDL),并提供多种支持多种编程语言的客户 ......
模式 server GRPC