【问题标题】:If i want event driven server what to use libevent or libev?如果我想要事件驱动服务器,该使用什么 libevent 或 libev?
【发布时间】:2011-05-01 20:04:47
【问题描述】:

我想使用事件驱动库之一制作基本的聊天服务器。 但是选择什么? libevent 或 libev 哪个更好?哪个有更好的 c++ 支持? 哪个符文在 Windows 中更好? 什么更快?更快地开发和理解

【问题讨论】:

    标签: c++ libevent


    【解决方案1】:

    我更喜欢 libev。它非常简约,我见过的一些基准(可能是旧的)表明它表现更好。文档也不错。

    【讨论】:

      【解决方案2】:

      我更喜欢 libevent,因为
      1) 它有一个 http 服务器(本地服务器和as an external project),
      2)http客户端(如果你需要你的事件驱动服务器使用外部服务真的很有用); libev 有一个,但它不会为我编译最近的 libev
      3) dns 服务器(我用它来自动重定向流量以实现高可用性)
      4) IMO,更好的文档
      5) 维护得更好(见 2)

      【讨论】:

      • libev 没有 http 客户端,因此第 2) 和第 5) 点都没有意义。此外,libev 有一个 libevent 兼容层,因此为 libevent 设计的外部组件(例如 http 客户端或服务器)很有可能无需任何更改即可工作。
      • 有一个客户端,但没关系:如果 libev 没有 http 客户端,那么第 2 点比我想象的更有意义。即使没有 2,5 也是有效的,我只是懒得添加更多示例。
      【解决方案3】:

      选择不仅仅是在 libevent 和 libev 之间。 Boost.asio 非常好。编程模型运行良好,并且集成到了您应该使用的 Boost 中。

      如果您只是在学习,您不太可能注意到由库引起的任何速度差异。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-27
        • 1970-01-01
        • 2021-10-30
        • 2015-04-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多