Tomcat 中部署 web 应用 ---- Dubbo 服务消费者 Web 应用 war 包的部署

时间:2022-09-03 11:24:03

使用Maven构建Dubbo服务的可执行jar包

Dubbo服务的运行方式:

1、使用Servlet容器运行(Tomcat、Jetty等)----不可取

  缺点:增加复杂性(端口、管理) 浪费资源(内存)

2、自建Main方法类来运行(Spring容器) ----不建议(本地调试可用)

  缺点: Dobbo本身提供的高级特性没用上 自已编写启动类可能会有缺陷

3、使用Dubbo框架提供的Main方法类来运行(Spring容器)----建议使用

  优点:框架本身提供(com.alibaba.dubbo.container.Main) 可实现优雅关机(ShutdownHook)

注意点: spring-context.xml <import resource="classpath:spring/spring-xxx.xml" />

Tomcat 中部署 web 应用

虚拟机模拟IP: 192.168.3.66
部署容器:apache-tomcat-7.0.70
端口:8080
应用:blade-web.war

1、 下载(或上传)最新版的 Tomcat7:

$wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz 

2、 规范安装目录:

/home/wusc/edu/web/xxx-tomcat 如: /home/wusc/edu/web/boss-tomcat 

3、 解压安装

$ mkdir –p /home/wusc/edu/web
$ tar -zxvf apache-tomcat-7.0.70.tar.gz
$ mv apache-tomcat-7.0.70 /home/wusc/edu/web/boss-tomcat 

4、 移除/home/wusc/edu/web/boss-tomcat/webapps 目录下的所有文件:

$ rm -rf /home/wusc/edu/web/boss-tomcat/webapps/* 

5、 上传 Dubbo 服务消费者 Web 应用 war 包 blade-web.war 到/home/wusc/edu/web/boss-tomcat/webapps

6、 防火墙开启 8080 端口,用 root 用户修改/etc/sysconfig/iptables,

# vim /etc/sysconfig/iptables

  增加:
    ## boss-tomcat:8080

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

  重启防火墙:

# service iptables restart

7、 Tomat 内存设置(举例:在下面添加所需要设置的java内存大小,比如设置java堆内存为3g,新生代为1536m,永久代初始值为256m,最大值为512m,每个线程大小2m,参数如下:
JAVA_OPTS="-Xms3072m -Xmx3072m \-XX:PermSize=256M \-XX:MaxPermSize=512m \-Xss2m \-Xmn1536m"):

$ vi /home/wusc/edu/web/boss-tomcat/bin/catalina.sh
#!/bin/sh
JAVA_OPTS='-Xms128m -Xmx512m -XX:PermSize=128m'

8、 启动 Tomat7

$ /home/wusc/edu/web/boss-tomcat/bin/startup.sh

9、 浏览   http://192.168.3.66 :8080/blade-web

10、 配置 Tomcat 开机启动:

  在虚拟主机中编辑/etc/rc.local 文件,加入:

su - wusc -c '/home/wusc/edu/web/boss-tomcat/bin/startup.sh'

<!-- Start -->

获知及时信息,请关注我的个人微信订阅号:0与1的那点事

Tomcat 中部署 web 应用 ---- Dubbo 服务消费者 Web 应用 war 包的部署

<!-- End -->

本文为博主原创文章,转载请注明出处!

http://www.cnblogs.com/libingbin/

感谢您的阅读。

Tomcat 中部署 web 应用 ---- Dubbo 服务消费者 Web 应用 war 包的部署的更多相关文章

  1. Tomcat中部署web应用 ---- Dubbo服务消费者Web应用war包的部署

    样例视频:http://www.roncoo.com/course/view/f614343765bc4aac8597c6d8b38f06fd IP: 192.168.2.61 部署容器:apache ...

  2. SpringBoot应用War包形式部署到外部Tomcat

    这一篇文章介绍SpringBoot应用修改默认打jar形式部署为打war包形式,部署到外部Tomcat. SpringBoot应用默认打包成为可执行jar模式让我们感觉到部署的便捷,接下来给大家介绍一 ...

  3. Springboot项目打成war包,部署到tomcat上,正常启动访问报错404

    前言: 项目介绍,此项目是一个Maven多模块项目,模块项目:all(父模块):util (公用的工具类):dao(实体类.业务类.mapper.mapper.xml):business(业务serv ...

  4. IDEA中将工程打包成war包及部署到Tomcat流程

    工程打包成war包及部署到Tomcat流程 再IDEA开发工具中,将工程打包成war包流程: 父pom里需要移除内置的tomcat <dependency> <groupId> ...

  5. springboot打war包后部署到tomcat后访问返回404错误

    springboot打war包后部署到tomcat后访问返回404错误 1.正常情况下,修改打包方式为war <packaging>war</packaging> 2.启动类继 ...

  6. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat&lpar;第四话&rpar;:把war包远程部署到tomcat

    上一节介绍了如何用Ant插件来打war包,本节接着介绍如何把build好的war自动部署到tomcat中 1.先安装 Deploy to container Plugin插件 2. 在构建后操作中添加 ...

  7. Dubbo-使用Maven构建Dubbo服务的可执行jar包

    一.为什么要构建Dubbo服务的可执行jar包? 1.1 Dubbo服务运行方式比较 ✎使用Servlet容器运行(Tomcat.Jetty等)  ---不可取 --缺点:增加复杂性(多了容器的端口) ...

  8. Centos7上一次War包的部署与运行

    Centos7上一次War包的部署与运行 前言 由于前段时间第一次部署一个小型的项目,时间一长所以有些步骤有时候时间一长就忘了,在此做个简单的记录 一.原始系统开发环境 操作系统:Windows10: ...

  9. SpringBoot集成Socket服务后打包(war包)启动时如何启动Socket服务(web应用外部tomcat启动)

      1.首先知道SpringBoot打包为jar和war包是不一样的(只讨论SpringBoot环境下web应用打包)     1.1.jar和war包的打开方式不一样,虽然都依赖java环境,但是j ...

随机推荐

  1. redmine export long csv file failed&colon; 502 proxy error

    After modified the file \apps\redmine\conf\httpd-vhosts.conf: <VirtualHost *:8080> ServerName ...

  2. yii2 实现多表联查

  3. python 练习 28

    ython pass是空语句,是为了保持程序结构的完整性. pass 不做任何事情,一般用做占位语句. Python 语言 pass 语句语法格式如下: pass 实例: #!/usr/bin/pyt ...

  4. 判断DataSet是否有数据

    if (data1.Tables[0].Rows.Count>0)        {            MessageInfoText.Text = data1.Tables[0].Rows ...

  5. Song of Pi

    def main(): pi = ' # 预先给出需要比较的值 t = int(raw_input()) for _ in xrange(t): song = raw_input().strip(). ...

  6. 【45】java的封装剖析

    类是构造对象的模板或蓝图. 封装的一些概念 从形式上看,封装不过是将数据和行为组合到一个包中,并对对象的使用者隐藏了数据的实现形式. 每个对象都包含实例域和方法.实例域的集合代表了一个集合的状态,通过 ...

  7. 委托的多线程方法BeginInvoke

    同步方法和异步方法: 同步方法调用在程序继续执行之前需要等待同步方法执行完毕返回结果.(比如烧水泡茶,需要等水烧开了才能继续泡茶) 异步方法则在被调用之后立即返回以便程序在被调用方法完成其任务的同时执 ...

  8. mysql导入source注意点

    mysql的导入导出要注意字符集,防止查询乱码! 导入前设置字符集 set names utf8; //导入指定编码source /xxx.sqlcommit;

  9. 提取ipa里面的资源图片

    有时候发现个不错的UI,就想扒出来看看,ipa里的图片你知道的,都不能直接用,所以找到两个方法:一.用python转换1.将ipa文件后缀改为zip,然后解压缩.2.新建一个文件夹,将解压后的包里的p ...

  10. adb 命令大全

    传送门 --> https://github.com/mzlogin/awesome-adb ADB,即 Android Debug Bridge,它是 Android 开发/测试人员不可替代的 ...