我看到了很多关于如何使用perl,C构建Apache模块的例子,但是没有文档来描述如何使用java构建Apache模块。
是否可以使用Java构建Apache模块?
发布于 2016-11-07 23:38:30
这很少被实践,因为Apache经常产生多个进程(cf )。( preforked)和在它们中运行一个Java会使RAM需求膨胀到很高的水平。
您可以将Apache配置为只使用一个线程进程。在这种模式下,这种安排更有意义。但是,像这样的Apache安装很少,而且很远。
无论如何,运行Java模块与在任何其他C代码中使用Java并没有太大的不同。您可以围绕Apache函数编写一个基于JNI的包装器,以便让Java代码能够使用它们,您也可以在JNI的帮助下生成Java虚拟机。JNI是你的朋友。有很多关于它的文件,很多书。基本上,您需要知道如何用C编写自己的Apache模块,还需要了解JNI和瞧,您可以使用Java构建Apache模块。
如果您正在寻找一个库来为您执行JNI提升,那么这将是Stackoverflow的主题。而且,由于上述原因,大多数库开发人员都不会去那里。以下是其中一项承诺的摘录:“mod_gcj的最初计划是将libgcj运行时直接嵌入到Apache进程中,就像mod_perl一样。不幸的是,使用线程的传统处理模型与使用Unix上的分支的Apache之间存在一些冲突。因此,mod_gcj在一个单独的进程中运行,这个进程由Apache和托管它的多线程libgcj运行时组成。”-- http://mod-gcj.sourceforge.net/about.html。
https://stackoverflow.com/questions/40037265
复制相似问题