• 请不要在回答技术问题时复制粘贴 AI 生成的内容
flikecn
V2EX  ›  程序员

Go 语言项目性能优化实例剖析

  •  
  •   flikecn ·
    flike · Nov 4, 2015 · 5154 views
    This topic created in 4021 days ago, the information mentioned may be changed or developed.

    最近 kingshard 的功能开发节奏慢了许多。一方面是工作确实比较忙,另一方面是我觉得 kingshard 的功能已经比较完善了,下一步的开发重点应该是性能优化。毕竟作为一个 MySQL proxy,如果转发 SQL 的性能很差,再多的功能都无济于事。所以这个周末一直宅在家里优化 kingshard 的转发性能。经过两天的探索发现,将 kingshard 的转发 SQL 性能提升了 18%左右,在这个过程中学到了一下知识。借此机会分享一下,同时也是督促一下自己写博客的积极性。:)

    在这就不细说了,感兴趣的请移步: https://github.com/flike/kingshard/blob/master/doc/KingDoc/kingshard_performance_profiling.md

    20 replies  •  2015-11-07 15:20:52 +08:00
    flikecn
    flikecn
    OP
    Nov 4, 2015
    1
    有感兴趣的吗?
    coolicer
    coolicer
    Nov 4, 2015
    2
    @flikecn 小型的应用是不是用不到啊。
    flikecn
    flikecn
    OP
    Nov 4, 2015
    3
    @coolicer 我觉得如果需要读写分离,就可以用到。
    struCoder
    struCoder
    Nov 4, 2015
    4
    一直在关注这个项目。顶
    zhujinliang
    zhujinliang
    Nov 4, 2015
    5
    感谢楼主的测试与实践
    之前写一个直播服务器时也注意到 SetNoDelay ,奇怪 go 为什么默认为 true ,以我的理解,这个不应该是 tcp 栈自动调度的么
    0987363
    0987363
    Nov 4, 2015
    6
    正在做的东西跟这个比较类似, 看了下代码,没有说响应时间呢

    我测试的单线 accept , read 到数据,原封不动写回去,客户端超时 2s ,休眠 1s 循环请求,最高不超过 2w 个连接
    加上 reuseport ,最高 3w-4w 之间
    协议栈缓冲区什么的都加大了的
    MeOO
    MeOO
    Nov 4, 2015
    7
    好东西,正在学 GO
    gamexg
    gamexg
    Nov 4, 2015
    8
    @zhujinliang false 会造成小包最大延迟一个 ttl 发送,也就是小包协议增加延迟。 true 是优化吞吐量,但是下载之类的真的需要吞吐量的时候一般每次 write 的数据都不会少,立即发送也足够填满 tcp 包。
    flikecn
    flikecn
    OP
    Nov 4, 2015
    10
    @zhujinliang 感觉对于需要大量发送数据包的服务来说,应该关闭这种选项。
    flikecn
    flikecn
    OP
    Nov 4, 2015
    11
    @nevernet 之前也参与了 Atlas 开发,不过现在开发了一个新的 proxy 。功能更强大。:)
    flikecn
    flikecn
    OP
    Nov 4, 2015
    12
    @0987363 响应设计可以测了,没放上去。 QPS 越高,响应时间肯定越短。
    flikecn
    flikecn
    OP
    Nov 4, 2015
    13
    @gamexg 是的。不同的应用,肯定不一样。
    oop99
    oop99
    Nov 4, 2015
    14
    mark, 在学 go
    flikecn
    flikecn
    OP
    Nov 4, 2015
    15
    @oop99 :)
    lenran
    lenran
    Nov 4, 2015
    16
    kingsoft?我在猜楼主的身份
    flikecn
    flikecn
    OP
    Nov 5, 2015
    17
    @lenran 嗯,我目前在 WPS 工作。
    lenran
    lenran
    Nov 5, 2015
    18
    @flikecn 果然!楼主涉猎很广啊
    flikecn
    flikecn
    OP
    Nov 6, 2015
    19
    @lenran 菜鸟一枚。
    lenran
    lenran
    Nov 7, 2015
    20
    @flikecn 您过谦了!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1511 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 15:34 · PVG 23:34 · LAX 07:34 · JFK 10:34
    ♥ Do have faith in what you're doing.