go 实现了一个简洁的 TCP 通信框架

2017-08-07 05:16:46 +08:00
 drzhaug

git 地址: https://github.com/by-zhang/stpro 谢谢各位了,希望提出建议。

5930 次点击
所在节点    程序员
16 条回复
wangshichang
2017-08-07 09:16:19 +08:00
楼主给你个 star,最近也正在学 Go,希望能学到些东西<( ̄ 3  ̄)>
chrislon
2017-08-07 10:05:54 +08:00
Xrong
2017-08-07 10:45:32 +08:00
给个 star 楼主加油。。。
a308057848
2017-08-07 10:54:00 +08:00
在杭州吗
drzhaug
2017-08-07 11:52:14 +08:00
@a308057848 beijing
drzhaug
2017-08-07 11:52:35 +08:00
@Xrong 多谢~
drzhaug
2017-08-07 11:52:54 +08:00
@wangshichang 感谢
0x8C
2017-08-07 11:55:42 +08:00
reflect 涉及到内存分配,大量的枚举,开销大,速度慢,慎用
drzhaug
2017-08-07 12:00:46 +08:00
@0x8C 哦哦 多谢提醒 我确实不知道像我实现的这种方式可以用什么策略更好 所以才选用了 reflect。。
fhefh
2017-08-07 14:14:16 +08:00
已 start
多谢楼主 最近也在学习 go 在
pqee
2017-08-07 14:16:23 +08:00
楼主给力
bobuick
2017-08-07 14:25:56 +08:00
加 crc 作甚。tcp 是干吗的。

想练手的话,把 pb 看下,照着它做自己的 proto 好了, 就是一大堆 binary 操作。把对应类型的 marshal 和 unmarshal 弄出来。
另外再弄个 memory buffer pool,减少连接反复创建时的 new 开销。
增加一个应用层 keepalive
drzhaug
2017-08-07 14:42:53 +08:00
@bobuick 我封的协议是"面向业务"的那种,可能跟你所说的协议不是一回事。至于传输的二进制数据当然可以选用 pb,也可以选用 json。相当于在 pb 外封装了一层。不过连接池是应该学习下。。。多谢指导
Presageee
2017-08-07 15:42:08 +08:00
搭个车,基于 netty 的通信计算框架,https://github.com/Presageee/DNCF
tempdban
2017-08-08 01:52:51 +08:00
golang 何时原生支持 fork 才用
itfanr
2018-04-03 19:15:01 +08:00
@bobuick 多谢

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

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

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

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

© 2021 V2EX