Linux 安装Resin4.0.40

6 篇文章 0 订阅
2 篇文章 0 订阅

转载自:https://blog.51cto.com/467754239/1558435


一、Resin简介

Resin官网地址:http://caucho.com/

Resin源码包下载地址:http://caucho.com/products/resin/download

 

Resin是CAUCHO公司的产品,是一个非常流行的支持servlets和jsp的引擎,速度非常快。

Resin本身包含了一个支持HTTP/1.1的WEB服务器。虽然它可以显示动态内容,但是它显示静态内容的能力也非常强,速度直逼APACHESERVER。许多站点都是使用该WEB服务器构建的

Resin也可以和许多其他的WEB服务器一起工作,比如Apache server和IIS等。Resin支持Servlets 2.3标准和JSP 1.2标准。熟悉ASP和PHP的用户可以发现用Resin来进行JSP编程是件很容易的事情

Resin支持负载平衡(Load balancing),可以增加WEB站点的可靠性。方法是增加服务器的数量。比如一台SERVER的错误率是1%的话,那么支持负载平衡的两个Resin服务器就可以使错误率降到0.01%

 

版本区别

resin 普通版本和pro版本主要区别是 pro支持缓存和负载均衡。pro因为有强大的cache功能,独立作为web服务器处理静态页面性能都可以和apache有一比。但普通版本独立作为web服务器性能就要差一些。当然可以使用apache+resin的方案借助apache的缓存功能提高性能。 但负载均衡就是普通版不能比的了。

 

二、部署的平台

[root@Resin src]# uname -r

2.6.32-358.el6.x86_64[root@Resin src]# cat /etc/centos-release

CentOS release 6.4 (Final)[root@Resin src]# uname -r

2.6.32-358.el6.x86_64[root@Resin src]# service iptables status

iptables:未运行防火墙。[root@Resin src]# getenforce

Disabled

 

三、Resin的源码安装

1、安装依赖环境JDK

[root@Resin src]# tar xf jdk-7u60-bin-linux-x64-16.tar.gz -C /usr/local/[root@Resin src]# cat > /etc/profile.d/jdk.sh << EOF> JAVA_HOME=/usr/local/jdk1.7.0_60> CLASSPATH=\$JAVA_HOME/lib:\$JAVA_HOME/jre/lib> PATH=\$PATH:\$JAVA_HOME/bin> export PATH JAVA_HOME CLASSPATH> EOF[root@Resin src]# source /etc/profile[root@Resin src]# java -version

java version "1.7.0_60-ea"

Java(TM) SE Runtime Environment (build 1.7.0_60-ea-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)

2、编译Resin

[root@Resin src]# yum -y install gcc gcc-c++ make[root@Resin src]# tar xf resin-pro-4.0.40.tar.gz [root@Resin src]# cd resin-pro-4.0.40[root@Resin resin-pro-4.0.40]# ./configure --prefix=/usr/local/resion --with-java-home=/usr/local/jdk1.7.0_60 --enable-64bit[root@Resin resin-pro-4.0.40]# make && make install

Resin Configuration Summary:

 

  RESIN       : 4.0.40

    home      : /usr/local/resion

    root      : /usr/local/resion

    conf      : /usr/local/resion/conf

    log       : /usr/local/resion/log

    plugins   : common resin_os resin

    init      : /etc/init.d/resin

 

  JAVA_HOME   : /usr/local/jdk1.7.0_60

 

  JNI         : 64-bit

    include       : -I/usr/local/jdk1.7.0_60/include -I/usr/local/jdk1.7.0_60/include/linux

    CFLAGS        : 

    cflags_shlib  : -fpic

    ld_shlib      : gcc

    ldflags_shlib : -shared -fPIC -m64

    libs_shlib    : 

    epoll() for keepalives

 

  OPENSSL     : No OpenSSL has been found

    *** OpenSSL libraries cannot be compiled ***

 

3、启动Resin服务

#第一种方法启动[root@Resin ~]# /usr/local/resion/bin/resin.sh start

Resin/4.0.40 launching watchdog at 127.0.0.1:6600

Resin/4.0.40 started -server 'app-0' with watchdog at 127.0.0.1:6600

 

第二种方法启动[root@Resin ~]# service resin start

4、验证Resin

[root@Resin ~]# netstat -tnlp |grep java

tcp        0      0 127.0.0.1:6800              0.0.0.0:*                   LISTEN      4338/java           

tcp        0      0 127.0.0.1:6600              0.0.0.0:*                   LISTEN      4292/java           

tcp        0      0 :::8080                     :::*                        LISTEN      4338/java

5、浏览器访问Resin

http://resin-ip:port

5.2 点击【/resin-admin】进入登陆、注册页面;如下图所示

5.3 由于首次登陆Resin还没有用户,所以先注册一个管理员账号;如下图所示

5.4 点击【Create Configuration File】;如若用户创建成功,提示如下图所示

5.5 注册用户创建成功后会在/usr/local/resion/conf目录下生成一个admin-users.xml.generated的模板文件,这个模板不能直接使用,我们需要将其改成为admin-users.xml文件

[root@Resin ~]# cd /usr/local/resion/conf/

[root@Resin conf]# cp admin-users.xml.generated admin-users.xml

注释:如果部署到无GUI界面的系统上如:CentOS Solaris Ubuntu-Server等,无法通过浏览器访问本地resin-admin,则需要修改resin.properties文件爱你,开启远程访问权限,然后再次登录

[root@Resin conf]# vim resin.properties

5.6 首次登陆后的界面如下:

 

四、简单的Resin部署web测试环境

1、拷贝自已的项目到Resin的webapps目录下

[root@Resin ~]# mkdir /usr/local/resion/webapps/api[root@Resin ~]# cat /usr/local/resion/webapps/api/index.jsp <%@ page language="java" %><html>

  <head><title>TomcatA</title></head>

  <body>

    <h1><font color="red">TomcatA </font></h1>

    <table align="centre" border="1">

      <tr>

        <td>Session ID</td>

    <% session.setAttribute("abc","abc"); %>

        <td><%= session.getId() %></td>

      </tr>

      <tr>

        <td>Created on</td>

        <td><%= session.getCreationTime() %></td>

     </tr>

    </table>

  </body></html>

2、修改Resin配置文件

    <host id="" root-directory=".">

      <!--

         - webapps can be overridden/extended in the resin.xml

        -->

      <web-app id="/" root-directory="webapps/ROOT"/>

      <web-app id="/api" root-directory="webapps/api"/>

 

    </host>

3、测试

五、Resin4基于目录和域名的部署

1、同一个域名下多个子app,根据url层级来指向

http://www.allentuns.com/

http://www.allentuns.com/api1

http://www.allentuns.com/api2

2、多个域名对应指定的host,根据域名来指定

http://www.allentuns.com/

http://www.zhengyansheng.com/

 

【第一种配置方法】

    <!-- the default host, matching any host name -->

    <host id="" root-directory=".">

      <!--

         - webapps can be overridden/extended in the resin.xml

        -->

      <web-app id="/" root-directory="webapps/ROOT"/>

      <web-app id="/api" root-directory="webapps/api"/>

      <web-app id="/cms1" root-directory="/www/cms1.cdvcloud.com"/>

      <web-app id="/cms2" root-directory="/www/cms2.cdvcloud.com"/>

 

    </host>

 

【第二种配置方法】

    #第一个appserver

    <host id="www.allentuns.com" root-directory=".">

      <!--

         - webapps can be overridden/extended in the resin.xml

        -->

      <web-app id="/" root-directory="webapps/tset1/ROOT"/>

 

    </host>

    #第二个appserver

        <host id="www.zhengyansheng.com" root-directory=".">

      <!--

         - webapps can be overridden/extended in the resin.xml

        -->

      <web-app id="/" root-directory="webapps/test2/ROOT"/>

 

    </host>

 

六、Resin4基于不同端口的部署

[root@Resin ~]# cd /usr/local/resion/conf/[root@Resin conf]# vim resin.xml #只展示重点部分#注释:Resin默认端口是8080;添加如下代码,在本机配置两个实例端口为8081、8082<cluster id="app1">

    <!-- define the servers in the cluster -->

    <server-multi id-prefix="app1" address-list="${app1_servers}" port="6801"/>

 

    <!-- the default host, matching any host name -->

        <host id="" root-directory=".">

              <!--

                            - webapps can be overridden/extended in the resin.xml

                                    -->

      <web-app id="/" root-directory="/var/www/html/app1/ROOT"/>

 

    </host>

    </cluster>

<cluster id="app2">

    <!-- define the servers in the cluster -->

    <server-multi id-prefix="app2" address-list="${app2_servers}" port="6802"/>

 

    <!-- the default host, matching any host name -->

        <host id="" root-directory=".">

              <!--

                            - webapps can be overridden/extended in the resin.xml

                                    -->

      <web-app id="/" root-directory="/var/www/html/app2/ROOT"/>

 

    </host></cluster>

 

修改当前目录vim  resin.properties 修改如下内容:

# app-tier Triad servers: app-0 app-1 app-2

app_servers       : 127.0.0.1:6800

app1_servers      : 127.0.0.1:6801

app2_servers      : 127.0.0.1:6802

# Use overrides for individual server control, for example: app-0.http : 8081

app.http           : 8080

app1.http          : 8081

app2.http          : 8082

 

重新启动Resin服务使其重新加载Resin配置文件

[root@Resin conf]# service resin restart

Stopping resin: .

Starting resin: .

 

查看多端口Resin服务是否启动

[root@Resin ~]# netstat -tnlp |grep java

tcp        0      0 127.0.0.1:6800              0.0.0.0:*                   LISTEN      2418/java           

tcp        0      0 127.0.0.1:6801              0.0.0.0:*                   LISTEN      2431/java           

tcp        0      0 127.0.0.1:6802              0.0.0.0:*                   LISTEN      2439/java           

tcp        0      0 127.0.0.1:6600              0.0.0.0:*                   LISTEN      2371/java           

tcp        0      0 :::8080                     :::*                        LISTEN      2418/java           

tcp        0      0 :::8081                     :::*                        LISTEN      2431/java           

tcp        0      0 :::8082                     :::*                        LISTEN      2439/java

 

建立Resin测试页面并访问页面

[root@Resin ~]# cat /var/www/html/app1/ROOT/index.jsp <%@ page language="java" %><html>

  <head><title>app1 port 8081</title></head>

  <body>

    <h1><font color="red">app1 port 8081 </font></h1>

    <table align="centre" border="1">

      <tr>

        <td>Session ID</td>

    <% session.setAttribute("abc","abc"); %>

        <td><%= session.getId() %></td>

      </tr>

      <tr>

        <td>Created on</td>

        <td><%= session.getCreationTime() %></td>

     </tr>

    </table>

  </body></html>

[root@Resin ~]# cat /var/www/html/app2/ROOT/index.jsp <%@ page language="java" %><html>

  <head><title>app2 port 8082</title></head>

  <body>

    <h1><font color="red">app2 port 8082 </font></h1>

    <table align="centre" border="1">

      <tr>

        <td>Session ID</td>

    <% session.setAttribute("abc","abc"); %>

        <td><%= session.getId() %></td>

      </tr>

      <tr>

        <td>Created on</td>

        <td><%= session.getCreationTime() %></td>

     </tr>

    </table>

  </body></html>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值