V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lesismal  ›  全部回复第 2 页 / 共 53 页
回复总数  1055
1  2  3  4  5  6  7  8  9  10 ... 53  
@momo24672 我就很喜欢 post 一把梭.
聊点具体的, 你没有限定范围, 就以 api 为例, 请问 post 一把梭哪里 sb 了?
> POST 一把梭的全是 SB/垃圾

@momo24672 不选择 Restful 的人会越来越多, 注意, 我说的是"不选择", 而不是"放弃", 因为 Restful 本来就不是必选项. 另外, 别太自信了
AI 是人类自举, 未来更高阶的智慧生命
有个<让你不再害怕指针>, 好好看下基本就搞定 c 的指针了
26 天前
回复了 740moe 创建的主题 程序员 [开源] 新的 TG 图床源码分享
现在压力给到了 russa 程序员同行这边
你先看看以前那些被偷的, 哪家是因为家里有小爱? 哪家是因为家里没上锁?...
学代码之前数数可从来没从 0 开始过啊...
学代码之时觉得从 0 开始咋这么反人类...
学代码之后觉得从 1 开始咋这么反人类...
@cmdOptionKana
其实不停 call 之前, OP 已经是比较脆皮了, 自己开 H 在先, 别人玩笑一下就不理别人了, 还真是小仙女.

不过看了半天, 我觉得没必要讨论这个了, 因为你看 OP 这个帖子和上个帖子, 基本都是不做任何回复, 加上语句写得逻辑不怎么通顺, 我甚至怀疑是弱 AI 发的文在测试人类.

所以各位还是别在这浪费时间了
首先, OP 开 H 玩笑; 然后对方说"告诉家长", 按我的理解, 这应该更是开玩笑吧? OP 拉黑别人别人不停 Call 也是因为喜欢你吧? 如果本身并没有限制 OP 不允许这不允许那, 也不能像一些楼层说的那样叫控制欲强吧? "还没娶就开始耍脾气"这也是半带着玩笑哄你, 半带着玩笑嫌你脾气差

OP 确认他是认真要告诉家长吗? 如果不确认, 那是不是有点过于敏感/脆皮了...

相亲打情骂俏开玩笑很正常的, 这不行那不行的话, 那建议单身, 不要自己脆皮然后出来伤害别人感情了...
> 最近想开了,打算找个活干,不读书了

这属于是误判, 其实是想不开.
OP 回头吧, 优先出国, 其次国内 top2 研究生继续, 否则单从技术职业规划的角度讲, 都是给未来减分.
我在网吧忘了下机, 被后面坐我那的程序员盗了密码
我工位忘了锁屏, 被坐在旁边的同事拿到了密码
我使用了代理软件, 我电脑到代理之间不是 tls
......
Welcome!
对不起,#1 是我草率了,没了解过 zeromq 、以为是消息队列发布订阅的方式实现的 rpc ,如果只是用 zeromq 做网络库、那 ok ,我向 OP 道歉!

简单扫了下 gaterpc 代码,其他一点看法不知道是否准确,python 我不熟,如果不对请指正:
1. 一些地方用了 await asyncio.sleep(1),例如 connect 相关的,connect 之后 await asyncio.sleep(1),这个感觉应该根据实际的连接成功为好,固定等待这么久可能性能上不够友好了
2. 看到注释里有这么一段:
“客户端,TODO: 对于没有收到回复的请求记录并保存下来,可以设置重试次数来重新请求。”
不建议框架层自己做重试,因为 timeout 并不代表对方一定没收到,有可能对方收到了请求并进行了处理但连接异常、
回包没收到,因为框架层不知道应用层业务特点、无法保证幂等之类的,由用户在应用层自行处理重试可能会更好
@body007 这不是啥复杂问题,只是个简单的用法错误,没必要用“方案”这么重的词来形容。。
BTW ,OP 自己的 python 代码里用的就是同一个 deobj = zlib.decompressobj(),go 里用了不同的 zlib reader 读取两个片段、第二个片段没有 header 、当然就出错了
上接: https://www.v2ex.com/t/1024087#reply11


package main

import (
"bytes"
"compress/zlib"
"fmt"
"os"
)

func main() {
bin1, _ := os.Open("1.bin")
defer bin1.Close()
bin2, _ := os.Open("2.bin")
defer bin2.Close()

input := new(bytes.Buffer)
input.ReadFrom(bin1)
zr, err := zlib.NewReader(input)
if err != nil {
fmt.Printf("zlib error: %v\n", err)
return
}

defer zr.Close()

buf := make([]byte, 1024)
n1, err := zr.Read(buf)
fmt.Println("read 1 over:", n1, err)
fmt.Println("buf 1:", string(buf[:n1]))
input.ReadFrom(bin2)
n2, err := zr.Read(buf[n1:])
fmt.Println("read 2 over:", n2, err)
fmt.Println("buf 2:", string(buf[n1:n1+n2]))
}


output:

read 1 over: 124 <nil>
buf 1: {"t":null,"s":null,"op":10,"d":{"heartbeat_interval":41250,"_trace":["[\"gateway-prd-us-east1-c-0bwh\",{\"micros\":0.0}]"]}}
read 2 over: 36 <nil>
buf 2: {"t":null,"s":null,"op":11,"d":null}
@rekulas
#4 看了下,你自己的代码里的错误主要是因为用不同的 zlib.NewReader 去读两个片段、因为只有第一个片段包含头部信息、而每个 zlib Reader 必须先读一个 header 才行,所以当你第二个新的 zlib.NewReader 去读不包含 header 的第二个片段的时候就出错了

只 zlib.NewReader 一次,用这个 reader 去读每次收到的数据片段就可以了。把 bv 的代码稍微改下顺序就 ok 了,具体代码稍等我贴到你原帖去
35 天前
回复了 GunsRose 创建的主题 问与答 邻居早上扰民怎么办?
@lesismal
#70 刚开始没注意 OP 说声音太大,以为钢琴应该没太大声音、毕竟不是自己屋里。
如果声音特别大,说明楼的隔音也不行、可能质量本身就不够硬,还是建议搬家吧,万一哪天楼质量问题上热搜。。
1  2  3  4  5  6  7  8  9  10 ... 53  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2900 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 42ms · UTC 13:35 · PVG 21:35 · LAX 06:35 · JFK 09:35
Developed with CodeLauncher
♥ Do have faith in what you're doing.