gpt4 book ai didi

perl - 我应该使用什么标准来评估 Perl "app server"(mod_perl 替换)?

转载 作者:行者123 更新时间:2023-12-03 20:47:36 27 4
gpt4 key购买 nike

短版 :

我应该使用什么标准来评估 Perl“应用服务器”(mod_perl 替换)的可能候选者?

我们正在寻找某种框架,它允许重复执行各种 Perl 程序(作为服务),而无需以下成本:

  • 每次执行重新启动 perl 解释器一次
  • 每次执行一次加载/编译 Perl 模块

  • (这两者都是运行 mod_perl 提供的好处)

    备注:
  • 我们不太关心 mod_perl 提供的任何额外好处,例如深度 Apache 集成。
  • 这将是一个纯应用服务器,这意味着不需要任何特定于 Web 的功能(如果应用服务器提供它就没有问题,只是不需要)。
  • 我们当然会考虑明显的标准(原始速度、生产就绪稳定性、积极开发、在我们关心的操作系统上运行的能力)。我感兴趣的是我们可能希望从这样的框架/服务器中获得的不那么琐碎和微妙的事情。

  • 背景:

    在 $work,决定他们想要替换当前情况的权力(在 Embperl 中开发并通过 Apache/mod_perl 部署的简单 web 应用程序)。

    决定使用(本土)MVC 系统,该系统将为 View 提供 Java Spring 前端;并且 Controller 将解析后端服务请求到执行模型职责的每个应用程序服务(不要挂断这个细节 - 它与主要问题不太相关)。

    后端服务的选项之一是 Perl,这样我们就可以继续利用我们现有的所有 Perl IP(库、webapp 后端代码),而不必将其 100% 移植到 Java。

    总结一下:
        | View    | Model/app | Model loaded/executed by:                          |
    ================================================================================
    OLD | Empberl | Model.pm | mod_perl has Model.pm loaded, called from view.epl |
    NEW | Java | Model.pm | perl generic_model.pl -model Model (does "require") |
    ================================================================================

    现在,那些从事过 Perl Web 开发的人会立即注意到新设计最明显的问题:
        | Perl interpreter starts  | Perl modules are loaded and compiled |
    =======================================================================
    OLD | Once per mod_perl thread | Once per mod_perl thread
    NEW | Once per EVERY! request | Once per EVERY! request |
    =======================================================================

    换句话说,在新模型中,我们 不再具有 mod_perl 作为持久服务器端应用程序容器所提供的任何性能优势!!!

    因此,我们正在寻找可能的应用容器来提供相同的功能。

    (作为旁注,是的,我们考虑过简单地运行一个带有 mod_perl 的 Apache 实例作为这样的应用程序容器,这是一种可行的可能性。但是,由于不需要 Web 功能,我想看看是否有任何其他选项可以符合要求)。

    最佳答案

    Starman是一个高性能的预 fork PSGI/Plack Web 服务器,可以在该上下文中使用。构建一个为无状态 JSON 对象提供服务的 REST 应用程序很容易(这是一个简单的用例)。

    Starman 是一个生产就绪的服务器,很容易在反向代理 (this SO question may helps you) 后面安装一组 Starman 实例,以实现扩展目的

    关于perl - 我应该使用什么标准来评估 Perl "app server"(mod_perl 替换)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16985390/

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