golang token grpc

云原生时代崛起的编程语言Go远程调用gRPC实战

云原生时代分布式和微服务RPC是一项常见技术,本篇先了解grpc基本定义和特点,搭建gRPC Go开发环境,并了解proto文件基本使用和gRPC go语言代码生成,然后通过Go语言代码示例从使用场景演示一元RPC、服务器流式RPC(文件上传)、客户端流式RPC(文件下载)、双向流式RPC(聊天),... ......
编程语言 实战 语言 时代 gRPC

k8s认证和授权和token User account和 server account

https://blog.csdn.net/weixin_49888547/article/details/125169107 https://blog.csdn.net/weixin_43266367/article/details/127146419 User account:实实在在现实中的人 ......
account server token User k8s

golang对于[]byte数组转string进行比较的优化

当需要比较两个`[]byte`数组是否相等时有好几种方案,下面可以看出前三种方案都是优化过的,效率高的方案。 ```go package main import ( "bytes" "crypto/rand" mr "math/rand" "testing" ) func StringEqual(n ......
数组 golang string byte

【解决一个小问题】golang 的 `-race`选项导致 unsafe代码 panic

**作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!** * [cnblogs博客](https://www.cnblogs.com/ahfuzhang/) * [zhihu](https://www.zhihu.com/people/ahfuzhang/posts) * [G ......
代码 golang unsafe 问题 panic

golang 遍历并批量压缩图片

package main import ( "bytes" "fmt" "image" "io/ioutil" "mylog" "os" "path" "github.com/nfnt/resize" _ "image/gif" "image/jpeg" _ "image/png" ) func m ......
golang 图片

Golang Println、Printf、Sprintf的区别(笔记)

Println :可以打印出字符串,和变量 Printf : 只可以打印出格式化的字符串,可以输出字符串类型的变量,不可以输出整形变量和整形 Sprintf:用传入的格式化规则符将传入的变量格式化,(终端中不会有显示),返回为 格式化后的字符串 ......
Println Sprintf 笔记 Golang Printf

golang 实现cas

相比sync.WaitGroup里面的互斥锁,cas可以实现无锁等待一组任务执行完成后释放,示例代码如下 ```go func TestCAS(t *testing.T) { var count int32 = 10000 for i := 0; i 0 { } t.Log("task exec f ......
golang cas

golang 闭包,装饰器

``` package main import ( "fmt" "strings" ) func makeSuffixFunc(suffix string) func(string) string { return func(name string) string { if !strings.Has ......
闭包 golang

golang之fmt格式化

常用fmt中用于格式化的占位符 普通占位符 占位符 说明 举例 输出 %v 相应值的默认格式。 Printf("%v", people) {zhangsan}, %+v 打印结构体时,会添加字段名 Printf("%+v", people) {Name:zhangsan} %#v 相应值的Go语法表 ......
格式 golang fmt

转:翻译:REST 和 gRPC 详细比较

转自:https://www.cnblogs.com/YGYH/p/17471039.html > 译者注:在微服务架构设计,构建API和服务间通信技术选型时,对 REST 和 gRPC 的理解和应用还存在知识盲区,近期看到国外的这篇文章:[A detailed comparison of REST ......
REST gRPC

.net core 微服务 集成Ocelot 和Nacos 之后使用grpc 如何实现服务与服务之间的调用

在 .NET Core 微服务中使用 gRPC 调用其他服务,你需要完成以下步骤: 1. 定义服务契约: 你需要定义你的服务、方法以及消息类型,以便客户端和服务端协商通信。 2. 生成代码: 你需要使用 gRPC 工具生成客户端和服务端的代码,这样你就可以在应用程序中使用它们。 3. 实现服务: 你 ......
之间 Ocelot Nacos core grpc

单token问题以及解决方案

*场景说明* ### 单token问题 1、token设置时长问题 2、token是无状态的,即token发布后,有效期内都无法让其失效 *解决方案* ### 双token三验证 **解决时长问题** 1、登录成功后,会生成两个token,前者有效期短(5min) 2、请求后端服务时,携带短令牌,短 ......
解决方案 方案 问题 token

Golang 应用脚手架

Nunu 提供了全面的文档和示例,帮助你快速入门。它还包括一套测试套件,确保你的应用程序按预期工作。 安装要求 要使用 Nunu,你需要在系统上安装以下软件: Golang 1.16 或更高版本 Git MySQL 5.7 或更高版本(可选) Redis(可选) 安装 你可以通过一行命令安装 Nun ......
脚手架 Golang

golang 访问 http 请求下载资源

正常情况下,下面这段代码可以获取到`响应结构体的字节流`,反序列化一下就能得到响应结构体,当 url 是一个互联网对象资源时,即访问该 url 是用来下载资源时,下面这段代码获取到的就是`被资源的二进制流` ```golang func HttpGet(url string) ([]byte, er ......
golang 资源 http

Golang全栈开发----Golang基础知识

第一章 基础语法 1. 注释 注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。注释是开发人员一个非常重要的习惯,也是专业的一种表现。单行注释是最常见的注释形式,你可以在任何地方使用以 // 开头的单行注释。多行注释也叫块注释,均已以 /* 开头,并以 */ 结尾。 单行注释:ctr ......
Golang 基础知识 基础 知识

Golang 定时任务 github/robfig/cron/v3

robfig/cron/v3 是一个 Golang 的定时任务库,支持 cron 表达式。低耦合高内聚,其中涉及装饰器模式,并发处理等。 package main import "github.com/robfig/cron/v3" c := cron.New() // 添加一个任务,每 30 分钟 ......
任务 Golang github robfig cron

REST 和 gRPC 详细比较(转)

译文:https://www.cnblogs.com/YGYH/p/17471039.html 译者:iEricLee 译者注:在微服务架构设计,构建API和服务间通信技术选型时,对 REST 和 gRPC 的理解和应用还存在知识盲区,近期看到国外的这篇文章:A detailed compariso ......
REST gRPC

翻译:REST 和 gRPC 详细比较

>译者注:在微服务架构设计,构建API和服务间通信技术选型时,对 REST 和 gRPC 的理解和应用还存在知识盲区,近期看到国外的这篇文章:[A detailed comparison of REST and gRPC](https://kreya.app/blog/rest-vs-grpc/), ......
REST gRPC

配置公众号token

const express = require('express') const app = express() app.use((req, res, next) => { console.log(req.query); //这里很关键的一句,表示发送的消息是以纯文本形式发送的 res.set('C ......
公众 token

golang之jwt

golang-jwt是go语言中用来生成和解析jwt的一个第三方库。本文中使用目前最新的v5版本。 安装 go get -u github.com/golang-jwt/jwt/v5 在代码中引用 import "github.com/golang-jwt/jwt/v5" 结构体 假设jwt原始的p ......
golang jwt

golang 系列:sync.Once 讲解

sync.Once 介绍 之前提到过 Go 的并发辅助对象:WaitGroup。同样的, sync.Once 也是 Go 官方的一并发辅助对象,它能够让函数方法只执行一次,达到类似 init 函数的效果。我们来看看它的简单用法: func main() { var once sync.Once on ......
golang Once sync

golang实现设计模式汇总-创建型 | 结构型 | 行为型

历时一个多星期的常用设计模式暂告一段落,今天汇总下使用频率较高的几种常见设计模式。 以下个人根据类型分为3种,不喜勿喷: * 创建型 * 结构型 * 行为型 ### 1.创建型 常用如下: * [单例模式](https://juejin.cn/post/7238604003599974456) * ......
结构型 设计模式 行为 模式 结构

golang实现设计模式之代理模式-优缺点,适用场景

`代理模式`作为一种结构型的设计模式,因为某种原因,需要对访问的对象通过代理访问目标对象,访问对象不适合或者不能直接引用该目标对象,代理就成为访问对象和目标对象的中介。 **结构** * 1.抽象主题(Subject)类。通过接口或抽象类声明真实主题和代理对象实现的业务方法。 * 2.真实主题(Re ......
模式 设计模式 优缺点 场景 golang

golang实现设计模式之策略模式-优缺点,适用场景

`策略模式`是一种行为型的设计模式,该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户,或者认为把使用算法的责任和算法的实现分割开来,并委派给不同的对象对这些算法进行管理。 **结构** * 1.抽象策略(Strategy)类。定义了一个公共接口,各 ......
模式 设计模式 优缺点 场景 策略

golang实现设计模式之模板模式-优缺点,适用场景

`模板模式`是一种行为型设计模式,其定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 **特点** * 1.算法结构已确定。 * 2.具体实现交由子类实现。 **结构** * 1.抽象类(Abstract Class)。算 ......
模式 设计模式 优缺点 场景 模板

golang实现设计模式之装饰器模式-优缺点,适用场景

`装饰器模式`是一种结构型设计模式,简单概括就是:不改变先有对象结构下,动态给对象增加一些职责。 装饰器模式通过组合方式实现,与继承的异同: * 使用继承方式,具有静态特征,耦合度高,并且随着扩展功能的增多,子类会很膨胀。 * 使用组合方式,创建装饰对象来装饰真实对象,原对象功能不变,另外扩展。 * ......
模式 设计模式 优缺点 场景 golang

golang实现设计模式之组合模式-优缺点与适用场景

`组合模式`是一种将对象组合成树状的层次结构的模式,用来表示“整体-部分”的关系,使用户对单个对象和组合对象具有一致的访问性,属于结构型设计模式。 **结构** * `抽象构件(Component)角色`:它的主要作用是为树叶构件和树枝构件声明公共接口,并实现它们的默认行为。在透明式的组合模式中抽象 ......
模式 设计模式 优缺点 场景 golang

golang实现设计模式之责任链模式-优缺点,适用场景

`责任链模式`是一种行为型的设计模式,也叫职责链,定义:在这样的场景中,请求需要经过一系列的处理者,通过列表或者链表将处理者组合起来,请求依次被处理者处理,如果需要中断,也可以及时退出处理。上述的这种的应用场景,典型的就是在 `web` 应用中的 `中间件或者拦截器`,比如 `Gin框架` 的中间件 ......
模式 设计模式 优缺点 场景 责任

golang实现设计模式之适配器模式-优缺点,适用场景

`适配器模式`是一种结构型设计模式,它是通过接口转换,使得原先接口不被兼容的其他类可以一起工作。 **类型** * 类结构型 特点: \- 程序耦合性高 \- 要求程序员对组件内部结构熟悉 \- 应用相对少些 类适配器模式可以用过继承的方式来实现。 * 对象结构型 特点:可重用性较差。 对象适配器允 ......

golang实现设计模式之观察者模式-优缺点,适用场景

`观察者模式`是一种行为型模式,其定义一种订阅机制, 可在对象事件发生时通知多个 “观察” 该对象的其他对象。 观察者模式常用 `订阅/发布机制`,即发布者持有所有订阅者,当发布者状态变更或者特定行为时,通知所有订阅者。 **结构** * 1.发布者。属性及行为:属性,订阅者列表,行为,添加、删除订 ......