gpt4 book ai didi

performance - Erlang(或 Elixir )性能(每秒请求数)比 jruby 慢?

转载 作者:行者123 更新时间:2023-12-03 13:53:34 25 4
gpt4 key购买 nike

作为一名 ruby​​ist,我决定采用 erlang 以获得高性能、可靠的后端。
设置非常简单:获取 post 请求,向 redis 写入内容,返回统计信息。所有的json。这也是为什么我如此关心每秒请求数的原因。

选择工具:webmachine , jiffy用于 json 编码/解码,poolboy用于连接池和 eredis用于redis通信。

使用机器:macbook pro,i5 2.4Ghz,8GB 内存。

我的 erlang 每秒收到大约 5000 个请求,而 jruby/torqbox得到了大约12,000。 (look here for a complete ruby performance test setup)

我意识到我可以在 erlang 中使用 ets 来节省时间,并在响应后将 redis 留作“后台处理”,但这不会产生什么影响。甚至对'hello world' erlang 腿后面的简单测试。

有什么建议么?我做错了吗?

最佳答案

我的 2 美分。你有错误的一端。您正在测试 JVM 已针对其进行优化的一种机器上的问题,该机器已针对 JVM 进行了优化。

您真的不会看到 Erlang/OTP 在 mac book pro 上可用的内核数量方面的优势。这只是我的粗略猜测,但我会惊讶地看到 Erlang 在少于 8 核的服务器上击败了 JVM。在当前的硬件上使 JVM 尽可能快地投入了大量的工时。

编写线程安全的 I/O 代码相当简单,真正的问题出现在处理数十到数百个线程之间的内存访问时。

用 Erlang/Elixir 编写的目标是当前 16 或 32 核的高端服务器,并有可能在不久的将来扩展得更高。

关于performance - Erlang(或 Elixir )性能(每秒请求数)比 jruby 慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25302247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com