V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
guonaihong
V2EX  ›  Go 编程语言

golang 流式 http client 新版本发布啦!

  •  1
     
  •   guonaihong ·
    guonaihong · 2019-11-18 09:06:47 +08:00 · 4384 次点击
    这是一个创建于 1592 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新版本如期而至。除了优化已有的 API,还带来了新的 API。一如既往的优化工程质量从 83%提升到 93%。新的 color 模式让 debug 更醒目。example 的加入让你使用的门槛进一步降低。欢迎试用和提 issue。

    项目地址

    https://github.com/guonaihong/gout

    演示

    gout-example.gif

    第 1 条附言  ·  2019-11-18 17:49:04 +08:00

    有话要说

    如果在试用gout有任何不顺畅的地方,都可以提issue。会帮你解决。

    11 条回复    2019-11-19 09:21:27 +08:00
    xenme
        1
    xenme  
       2019-11-18 09:12:15 +08:00 via iPhone   ❤️ 1
    @Livid

    同一个主题同样的内容见过三次了。
    guonaihong
        2
    guonaihong  
    OP
       2019-11-18 09:24:14 +08:00
    @xenme 你见证了 v0.0.1 到 v0.0.3 版本。
    Hanggi
        3
    Hanggi  
       2019-11-18 09:52:43 +08:00
    @guonaihong 版本号定义太保守了吧。
    Ehco1996
        4
    Ehco1996  
       2019-11-18 10:00:42 +08:00
    昨天我尝试用了一下,最后放弃了,感觉用起来有点迷
    guonaihong
        5
    guonaihong  
    OP
       2019-11-18 10:23:26 +08:00
    @Ehco1996 需要发送什么样的请求? example 有很多常见的用法可以借鉴。
    guonaihong
        6
    guonaihong  
    OP
       2019-11-18 12:29:10 +08:00
    @Ehco1996 使用中如有不顺畅的地方,可以提 issue。下个版本一并优化。
    guonaihong
        7
    guonaihong  
    OP
       2019-11-18 12:42:07 +08:00
    @Hanggi 谢谢关注。
    计划是
    v0.0.4 主要特性是 benckmark   
    v0.0.5 主要特性是 match 模式   
    v0.0.6 主要特性性能优化。  

    v0.1.x 重量级特性开发。先保密。
    guonaihong
        8
    guonaihong  
    OP
       2019-11-18 23:36:37 +08:00
    @Ehco1996 刚刚优化了文档,现在是不是更清晰?
    zhengxiaowai
        9
    zhengxiaowai  
       2019-11-19 00:12:51 +08:00
    啥叫流式 http client ??

    翻了一下之前的帖子发现,发现说「流式是设计理念」,这个确实没太接触过,有什么东西可以参考学习一下吗?
    zhengxiaowai
        10
    zhengxiaowai  
       2019-11-19 00:14:49 +08:00
    看到了。。。原来是链式调用??但是还是没太懂这和「流式是设计理念」有什么关系
    guonaihong
        11
    guonaihong  
    OP
       2019-11-19 09:21:27 +08:00
    @zhengxiaowai 流式架构和链式实现不是一个维度的事情。不是说用了链式的库就代表流式架构。
    流式是像水流一样的架构,关键的部分有数据流,过滤器,管道。

    linux 一切都是文件的设计理念,约束了驱动层面必须实现 read, write, close 函数,同样的函数可以操作普通文件和网络 fd。让数据流的流转约束在 read+write 里面,使用 dup+fork 实现管道“|”就是很自然的事情。这就是 shell 管道操作背后的支撑力量。

    回到 gout,A.B 只是表象。只是像 shell 一样的管道符。内部如何设计数据流+过滤器 才是要不断优化和探索的过程。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1149 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:01 · PVG 07:01 · LAX 16:01 · JFK 19:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.