【问题标题】:Jython, Jepp or Pylons for the performance用于表演的 Jython、Jepp 或 Pylons
【发布时间】:2010-12-01 21:25:37
【问题描述】:

我正在尝试在我的 GWT (Java) 项目中合并基于服务器的代码差异和突出显示。我设法合并了 Pygments 和 difflib into my code using Jython。基本思想是在服务器上生成完整的标记,然后简单地将代码作为innerHTML 注入到页面中。 我发现 Jython 完全不够用,因为即使对于相对较小的文件(2K-3K 行),也需要 Pygments 或 difflib 永远(几分钟而不是几秒钟)来处理这些文件。 Difflib 实际上在具有专用 500M 内存的进程中可靠地导致 OOM 错误 所以我想知道my current setup 是错误的还是Jython 根本不适合这个目的?

如果是这样,下一步是什么?我发现了Jepp,但是我必须为每个平台构建我的项目,而且它的文档很少,而且看起来不太稳定。另一种可能性是在同一主机上将 Pylons 作为单独的 Web 服务运行,并将标记直接发送到客户端或通过服务器引导它。还有一种方法是使用 Java System 将 python 脚本作为进程执行并捕获输出。

我很想听听关于此事的可靠建议。

【问题讨论】:

    标签: python performance pylons jython


    【解决方案1】:

    拥有单独的服务听起来是最好的选择。对于 Pygments,已经有一个服务 available(在 Google App Engine 上)。该应用程序的源代码是 BSD 开源代码,位于 GitHub here。当然,您也可以对其进行调整以添加 difflib 功能。

    【讨论】:

    • 是的。我刚刚发现了“瓶子”(bottle.paws.de),我认为它会解决我所有的麻烦:)
    【解决方案2】:

    我将接受上面的答案,因为它与我的发现一致,但只是为了让任何阅读此内容的人都知道 - 使用 Python 原生解决方案(如 Bottle)为 Pygments 运行单独的 Web 服务的性能比嵌入式 Jython 好很多倍。特别是在 Linux 上

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 2011-04-21
      • 2018-09-21
      相关资源
      最近更新 更多