V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huihuiHK
V2EX  ›  程序员

写 IM 的话 Go 和 Netty 哪个性能好?

  •  
  •   huihuiHK · 2022-01-10 16:48:02 +08:00 · 3278 次点击
    这是一个创建于 1046 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题。

    7 条回复    2022-01-11 19:48:02 +08:00
    KevinBlandy
        1
    KevinBlandy  
       2022-01-10 17:37:46 +08:00
    我个人觉得 Netty 。go 虽然可以开启多个协程,但是该阻塞还是阻塞。Netty 的 reactor 模式,所有操作都是异步的,不会阻塞。能充分榨干硬件性能。

    我也只是瞎猜哈,我没验证过。
    MidGap
        2
    MidGap  
       2022-01-10 18:14:47 +08:00
    Netty 已经成为语言了吗
    huihuiHK
        3
    huihuiHK  
    OP
       2022-01-10 19:20:40 +08:00
    @MidGap 一般用 java 写 im 的话首选 netty 吧
    gugugu233
        4
    gugugu233  
       2022-01-11 10:45:56 +08:00
    go 协程的优点是非常容易上手,编程范式标准统一很难写崩,并且能提供还算凑合的性能。而这个还算凑合的性能肯定是打不过基于 event drive 的框架。
    lovesky
        5
    lovesky  
       2022-01-11 14:50:09 +08:00
    用语言和框架做比较,不太合适吧。
    eurry
        6
    eurry  
       2022-01-11 19:11:48 +08:00
    netty
    Gota
        7
    Gota  
       2022-01-11 19:48:02 +08:00
    这个问题太泛泛了, 只有先明确 IM 的功能完备程度, 需要支持的水平扩展规模等实际问题之后才能合理估计性能, 不然容易陷入局部最优的窘境. 也可以先找 https://github.com/OpenIMSDK/Open-IM-Server 这类成熟的项目研究看看.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1004 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:04 · PVG 06:04 · LAX 14:04 · JFK 17:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.