2023 年了, GoWeb 应该选择 Goframe、Gin、Beego、Iris 哪一项?

2023-04-06 21:50:04 +08:00
 ThinkStu

op 最近在从 Java 的 SpringBoot 框架转向 Go 开发(大三学生),看了 Go 的一些框架,发现主流的有 Goframe 、Gin 、Beego 、Iris ,不知道目前哪个是最好用的?或者说现在企业一般在用什么框架?

15372 次点击
所在节点    Go 编程语言
58 条回复
iyaozhen
2023-04-07 15:20:32 +08:00
推荐我厂的 Hertz

没遇到什么坑
iyaozhen
2023-04-07 15:22:00 +08:00
@iyaozhen 至少内外部同源的,内部的包只是加了一些内部基建的适配,套了个壳,底层还是 import 了 GitHub 上面的包
Hathaway
2023-04-07 17:03:35 +08:00
go fiber ,现在就在用 fiber + nextjs 写一个自己的玩具项目,遇到问题的时候,查询 fiber 的文档都有解释。
mmdsun
2023-04-07 18:15:33 +08:00
go zero 有人用么?

https://go-zero.dev/cn/
IIInsomnia
2023-04-07 18:20:34 +08:00
yiigo + chi
ThinkStu
2023-04-07 19:48:37 +08:00
@mmdsun #44 终于有人说这个了...
ThinkStu
2023-04-07 19:49:09 +08:00
@mmdsun #44 我有一个小项目,昨天告诉我可能要用 zero
unlighted
2023-04-07 20:06:18 +08:00
gf 吧,文档以及相关应用都蛮充分.比较好学习
gddg
2023-04-07 22:18:39 +08:00
@mingqing 请问处理 PB struct 转成 json,未赋值字段, json 相关 KEY 被省略掉.你是怎么处理的? 我设置了序列化参数 . 另外,PB 结构体数组类型进行 json 序列化, 是 PB 定义一个 list 来处理吗?
mingqing
2023-04-07 22:52:07 +08:00
@gddg 生成的 PB 属性默认都是 json:"uuid,omitempty",要么通过 protoc-X 工具去自定义干预 json 定义,如 protoc-gen-gogo 或者设置序列化参数,或序列化使用 `protobuf:name=uuid,proto3"` 中的 name 作为 json 序列化的参数名。
ixixi
2023-04-08 11:10:36 +08:00
gin 吧

api 稳定很重要 不能光看他有啥功能,给你整一个大升级 比较难搞
349865361
2023-04-11 10:27:53 +08:00
go fiber 挺不错
webcape233
2023-04-15 23:38:23 +08:00
gin 最多,但是我觉得 echo 更好用呢
skyenought
2023-04-20 00:14:32 +08:00
@PureWhiteWu 咱推荐框架怎么也应该来个地址吧 purewhite ?😂

https://github.com/cloudwego/hertz

Hertz 是一个 Golang 微服务 HTTP 框架,在设计之初参考了其他开源框架 fasthttp 、gin 、echo 的优势,并结合字节跳动内部的需求,使其具有高易用性、高性能、高扩展性等特点,目前在字节跳动内部已广泛使用。如今越来越多的微服务选择使用 Golang ,如果对微服务性能有要求,又希望框架能够充分满足内部的可定制化需求,Hertz 会是一个不错的选择
jack139
2023-04-20 09:58:07 +08:00
一直用这个 github.com/valyala/fasthttp ,记得好像不支持 http2.0 ,其他都 ok
xsen
2023-04-28 23:39:22 +08:00
go-zero
gddg
2023-05-05 09:09:08 +08:00
@mingqing 谢谢...这个方法对我来说,太繁琐了...我找了一个简单粗暴的办法.....
#json 小写
sed -i.bak 's/\(json:"\)\([A-Za-z]\+\)\(.*"\)/\1\L\2\3/g' server.pb.go
#json
sed -i 's/,omitempty//g' server.pb.go
jiekeop
2023-06-16 18:24:43 +08:00
@Hathaway 老哥 go fibber 怎么断点啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/930386

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX