V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  pastor  ›  全部回复第 5 页 / 共 12 页
回复总数  224
1  2  3  4  5  6  7  8  9  10 ... 12  
2022 年 8 月 12 日
回复了 ComTNT 创建的主题 DNS Google IPV6 Doh/Dot 目前(202208)在国内是可用状态
OP 好人,先赞为敬
@ryalu 估计 OP 还没 get 到本质,这个问题的本质很简单:golang 提倡的正确做法是 if err ,OP 没有按照正确的做法去做、然后想出了方案 2 去弥补自己错误做法,然后又引来了默认空结构体可能造成的下游错误需要去弥补。

本来就是使用 if err 判断就完事了,入乡随俗、用这个语言就按这个语言的规矩来,根本不需要 #20 对比的其他语言的那么多原因,但是解释 go 自己这样做的原因是合理的。但是话说回来,对比一下多个语言,也让大伙多长长见识,挺好,#20 我先赞为敬
@liuxu
@ruanimal 并不觉得哪个比另一个更好。如果只是 if err 就嫌麻烦,那其他哪个语言的额外处理是能省略掉的呢?都省不掉,偏偏觉得 if err 就麻烦了,这有点自欺欺人了。
2022 年 8 月 5 日
回复了 gowk 创建的主题 Go 编程语言 用 Go 写 Web 后端合适吗?
@redvoilin 很多团队还真没怎么用对 go 。尤其历史包袱重的团队,或者比如 php java 转 go 的同学,我并不是鄙视 phper javaer ,而是因为以前积累的基本功造成的技术栈审美取向与 go 确实有较大不同,所以就像很多人喷 go 一样,gopher 也喷绝大多数其他语言的解决方案
2022 年 8 月 5 日
回复了 gowk 创建的主题 Go 编程语言 用 Go 写 Web 后端合适吗?
@javaisthebest 丰富完善能罩得住业务,但是太丑陋了,让人作呕是因为太丑不是它不丰富不完善。另外,好多阿里同学自己吐槽他们内部框架臃肿不堪、性能低下。
我不知道兄弟你是不是阿里的或者是哪个部门的,或许你见过的阿里的东西比较好?能否推荐个我去学习下,免得我也被各种阿里同学或者非阿里同学整天骂阿里的 KPI 开源误导了(不过我看过一些阿里的开源,确实挺让人作呕的)。就是因为听说了这么多,所以阿里的哥们想内推挖我都直接拒绝了,审美取向不合。。。
2022 年 8 月 5 日
回复了 gowk 创建的主题 Go 编程语言 用 Go 写 Web 后端合适吗?
很多人怕是不知道某些大厂内部的 java 基础设施有多么让人作呕。
没错,我说的就是阿里之流
2022 年 8 月 5 日
回复了 gowk 创建的主题 Go 编程语言 用 Go 写 Web 后端合适吗?
在新业务没有历史包袱、并且能够实现人力招聘的前提下,大厂都在拥抱 go ,只剩下半桶水程序员还在吵吵不适合
2022 年 8 月 5 日
回复了 hhhhhh123 创建的主题 程序员 如何定义,初 中 高 级开发?
按一线薪资标准,简单:
初级:1w 以内
中级:1-2w
高级:2w 以上
2022 年 8 月 5 日
回复了 zuiye111 创建的主题 职场话题 一个大龄大厂搬砖工的叹息
这光景,先狗住再说吧
2022 年 8 月 4 日
回复了 AlpacaCode 创建的主题 Go 编程语言 现在的工作内容会影响到以后的就业方向吗
如果润,devops 是好方向,就业容易、薪资可能比纯开发还高一点,坚持目前方向是好事情,国内 devops 待遇一般。

如果不润:
1. 既然 3D 图形不是一开始就在做,以后转通常成就也不会太大、竞争力不如别人专业领域一直从事的,薪资天花板可能相对低些,但如果是因为真爱想做自己喜欢的,那请随意。
2. 区块链,要动就早点动,要么就别动。只是做一些链上的功能开发不难,自学一两周个把月就能熟悉很多基础,然后找个工作就是了。如果是想做区块链本身的核心架构算法之类的开发,需要的基本功就比较多了,不是短期能成的事情
2022 年 8 月 1 日
回复了 fstar 创建的主题 程序员 TCP 关闭连接的不同版本,哪个才是对的?
@iosyyy #10 好的
2022 年 8 月 1 日
回复了 extiing 创建的主题 生活 你能够接受这样的分手原因吗?
拿得起、放得下,自古两难全,做到一样也可。
2022 年 7 月 31 日
回复了 fstar 创建的主题 程序员 TCP 关闭连接的不同版本,哪个才是对的?
另外,有时候 v 站的人戾气太重了,希望少点阴阳怪气,莫欺少年穷。
OP 在这研究这些是很值得鼓励的事情,总比很多人玩半辈子 CURD 要强多了
2022 年 7 月 31 日
回复了 fstar 创建的主题 程序员 TCP 关闭连接的不同版本,哪个才是对的?
OP 别看这图,改看状态转换图吧,比这清晰多了
2022 年 7 月 29 日
回复了 eryajf 创建的主题 程序员 我的 GitHub stars 汇总归类列表,欢迎大家 star 收藏
有没有一种可能,OP 你对精品的定义有所误解?
@gam2046 不同的服务类型和框架对优雅的定义、代码的封装都不太一样,分类展开了说有点多。。给个详细点的业务类型?
2022 年 7 月 27 日
回复了 left7341 创建的主题 奇思妙想 你有什么收藏爱好吗
一起睡过的妹子照片
@wangyu17455 这样做是 Read 能得到 err 了,但是 socket 如果本身还是活跃的,这就是误杀了

还是我来做课代表吧!

@ppolanwind 正确的做法:
1. 不要通过调用判断是否断开的方法去判断是否断开(比如 IsClosed )
2. 正常使用 Conn ,根据使用的返回值判断,比如 Read/Write 时返回了 err ,就是断开了

以上两条只是说怎么处理,实际实现 Conn 封装时通常要做的:
1. 单独一个协程处理读
2. 如果需要广播功能,单独一个协程处理写,否则可以不用单独协程、直接写就行

前面已经有人提到 keepalive ,但不够全面,仍需注意:
1. TCP 的 keepalive (传输层,4 层)只是检测连接健康状态,但不能用于判断连接的活跃状态。比如链路通顺、4 层 keepalive 是健康的,但 7 层应用层没有数据交互,这种属于僵尸连接了,对于正常的服务器,是应该踢掉这种长时间不活跃的僵尸连接的。所以 TCP 的 keepalive 选项不能解决僵尸连接的问题
2. 7 层应该自己进行 keepalive 协议包的收发比如 websocket 的 ping/pong ,来相互判断。业务协议活跃时可以节约掉 ping/pong 、一段时间没有业务协议交互再 ping/pong ,但 keepalive 间隔本来也比较大所以即使不节约这点也没关系。
3. 既然 7 层应该有自己的 keepalive ,其实 4 层的 keepalive 就没必要了
1  2  3  4  5  6  7  8  9  10 ... 12  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2879 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 13:29 · PVG 21:29 · LAX 06:29 · JFK 09:29
♥ Do have faith in what you're doing.