quercus:一个纯java实现的php引擎使用手记
时间:2011-10-25
来源:互联网
quercus是什么?
quercus是Caucho公司针对php语言的java实现,100%完成了php5的解析。是resin内建支持的功能。同时,因为使用了 resin,使得php可以很容易得到连接池、分布式session、负载均衡等功能。使用resin的php项目可以更加安全,不存在很多 fastcgi的问题。
性能如何?
官方:用mediawiki与drupal来做实验,要比mod_php快4倍。
有一个编译选项,在resin专业版里支持,可以把php转成java class,得到更高性能。
新建一个java项目混合php项目
web.xml是关键,里面声明了*.php文件的访问都以com.caucho.quercus.servlet.QuercusServlet来执行。
1. <?xml version="1.0" encoding="UTF-8"?>
2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3. xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
5. id="WebApp_ID" version="2.5">
6. <display-name>testquercus</display-name>
7. <welcome-file-list>
8. <welcome-file>index.html</welcome-file>
9. <welcome-file>index.php</welcome-file>
10. </welcome-file-list>
11. <servlet>
12. <servlet-name>Quercus Servlet</servlet-name>
13. <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
14. </servlet>
15. <servlet-mapping>
16. <servlet-name>Quercus Servlet</servlet-name>
17. <url-pattern>*.php</url-pattern>
18. </servlet-mapping>
19. </web-app>
所有的php文件放在webapp下,所有的java文件还放到java目录里。
如何混合java到php中?
在java目录新建类Test54Chen,生成后位置:
WEB-INF/classes/com/chen/FrameWork.class
1. /**
2. * @author 54chen(陈臻) [[email protected] [email protected]]
3. * @since 2011-10-25 下午 08:40:49
4. */
5. package com.chen;
6.
7. public class FrameWork {
8. public String go(String who) {
9. return who + " gogogo!";
10. }
11. }
在webapp新建php文件:
test.php
1. <?php
2. import com.chen.FrameWork;
3. $f = new FrameWork();
4. var_dump($f->go("ohohoh"));
5. ?>
配置到resin中:
目标文件夹指到webapp。
访问:test.php
截图:
1.整个项目的情况
quercus
2.访问的结果
quercus php java
下一记:如何利用java做连接池提供给php使用。
作者: cc0cc 发布时间: 2011-10-25
作者: 夢諾雨蓒 发布时间: 2011-10-25
作者: bs 发布时间: 2011-10-25
实验还行,产品还不行。
作者: beimuaihui 发布时间: 2011-10-26
作者: lovehaw 发布时间: 2011-11-01
作者: zhidc 发布时间: 2012-08-03
作者: 新悦5 发布时间: 2012-08-04
作者: houhuiyang 发布时间: 2012-08-06
作者: xiaozhihui 发布时间: 2012-09-16
有人验证过这个么?
作者: bigrabbit 发布时间: 2012-09-17
用mediawiki与drupal来做实验,要比mod_php快4倍。?
有人验证过这个么?
是要快。
但是PHP加了opcode缓存,跑在nginx下,这个就不如了。
作者: iminto 发布时间: 2012-09-17
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28