获得徽章 0
#青训营 x 字节后端训练营#
Golang面向对象编程非常简洁,去掉了传统OOP语言的方法重载、构造函数和析构函数、隐藏的this指针等等。
评论
#青训营 x 字节后端训练营#
golang的中间件
MongoDB是一种基于文档(BSON)存储的NoSQL数据库,采用了类似于JSON的数据格式。
故障转移实现方法:每次选择一个服务实例进行请求,并将其从列表中移除。当列表为空时重新获取可用的服务实例列表。
展开
评论
#青训营 x 字节后端训练营#
golang 中间件的实现本质:
写一个func,接受handler并且返回handle。
把私货写在func里面,从而实现把你要写的操作执行了之后,再把原有的流程进行下去。一个好的中间件有一个责任就是可插拔并且自足。
展开
评论
#青训营 x 字节后端训练营#
RPC和HTTP的区别
性能消耗
RPC:可以基于thrift实现高效的二进制传输
HTTP:大部分是通过json实现的,字节大小和序列化耗时都比thrift要更消耗性能
负载均衡
RPC:基本都自带了负载均衡策略
HTTP:需要配置Nginx,HAProxy实现
展开
评论
#青训营 x 字节后端训练营#
go测试中
它提供自动化测试功能,通过 go test 命令能够自动执行,工程目录内所有的_test结尾的文件都默认作为测试文件,在编译中不会执行的,只能用于测试。
评论
#青训营 x 字节后端训练营#
gin框架的使用主要有以下几部分
首先在项目终端下载安装gin包
gin路由,路由的基本使用,按路由组分组处理请求
gin数据解析和绑定
评论
#青训营 x 字节后端训练营#
Channel:goroutine和goroutine之间双向的通道
Channel是一等公民
Channel可以作为参数或返回值
chan<- int 只能向channel发数据
<-chan int 只能从channel收数据
展开
评论
#青训营 x 字节后端训练营#
go也有mvc
view\nview 就是展示层,beego中采用了 go temple 解析具体的字段 ,这样可以将数据写入到 control层| models层 控制,view层只做为展示层即可。实现了数据暂时分离。
展开
评论
#青训营 x 字节后端训练营#
go中一些性能优化的小细节
切片预分配容量
如果我们知道数据量大小, 则提前分配切片容量, 避免扩容时的元素拷贝。
大量字符串拼接
字符串是不可变类型, 使用 + 拼接字符串会创建一个新的对象, 但是使用 strings.Builder 可以显著提升性能。
展开
评论
#青训营 x 字节后端训练营#
go中构建高可用、高性能的通信服务,三种解决方法。不太理解,有没有通俗点的文章推荐
评论
#青训营 x 字节后端训练营#
goroutine 其实就是线程,他们之间的内存共享。
使用 go 关键字就创建 goroutine,然后 go 声明放到一个需调用的函数之前,在相同地址空间调用运行这个函数,这样该函数执行时便会作为一个独立的并发线程。
评论
下一页
个人成就
文章被阅读 706
掘力值 53
收藏集
1
关注标签
2
加入于