Appserver.io PHP 应用服务器开源项目

我要开发同款
匿名用户2014年03月25日
51阅读
开发技术PHP
所属分类服务器软件、应用服务器
授权协议OSL

作品详情

appserver.io是一个多线程的PHP应用服务器,实现真正多线程的PHP编程,高效安全而且快速,速度比基于Nginx的Magento标准安装要快50%。使用上非常像Java的Servlet。

亮点:

使用Doctrine作为标准的持久层

SessionBeans(stateful,stateless+singleton)

MessageBeans

TimerService(tbd)

ServletEngine

IntegratedMessageQueue

Easyscaling

Webservices

要求:

PHP5.4+onx64orx86

ZTSenabled(threadsafety)

POSIXthreadsimplementation

Memcached(2.1+)

示例配置:

<servlet>    <description><![CDATA[A demo servlet]]></description>    <display-name>DemoServlet</display-name>    <servlet-name>DemoServlet</servlet-name>    <servlet-class>\TechDivision\Example\Servlets\DemoServlet</servlet-class></servlet><servlet-mapping>    <servlet-name>DemoServlet</servlet-name>    <url-pattern>/</url-pattern></servlet-mapping>

示例代码:

public function doGet(Request $req, Response $res){    // build path to template    $pathToTemplate = $this->getServletConfig()->getWebappPath() .        DIRECTORY_SEPARATOR . 'static' .        DIRECTORY_SEPARATOR . 'templates' .        DIRECTORY_SEPARATOR . 'layout.phtml';    // init template    $template = new DemoTemplate($pathToTemplate);    $baseUrl = '/';    // if the application has NOT been called over a    //VHost configuration append application folder naem    if (!$this->getServletConfig()->getApplication()->isVhostOf(        $req->getServerName())    ) {        $baseUrl .= $this->getServletConfig()->getApplication()->getName() . '/';    }    // set vars in template    $template->setBaseUrl($baseUrl);    $template->setRequestUri($req->getUri());    $template->setUserAgent($req->getHeader("User-Agent"));    $template->setWebappName($this->getServletConfig()->getApplication()->getName());    // set response content by render template    $res->setContent($template->render());}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论