使用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的那点事

<!-- End -->

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

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

感谢您的阅读。

最新文章

  1. JS DOM学习笔记
  2. 多线程并发流程控制之dispatch_group 有关函数
  3. pythonchallenge关卡破解
  4. JAVA算数运算符
  5. C 实现一个简易的Http服务器
  6. js get 传参 汉字 乱码问题
  7. 《C++ primer》--第7章
  8. 误解了Windows Server AppFabric
  9. 武汉科技大学ACM :1002: 零起点学算法66——反话连篇
  10. 【转】android电池(四):电池 电量计(MAX17040)驱动分析篇
  11. Docker可视化管理工具Shipyard安装与配置
  12. 老男孩Python全栈开发(92天全)视频教程 自学笔记05
  13. java类加载器——ClassLoader
  14. 从BAT这种公司平薪跳槽头条,是否值得?
  15. markdown &amp; mathjax 初学笔记 latex
  16. python中修改工作目录
  17. Mysql linux -N命令
  18. tomcat和eclipse-wtp的一些配置
  19. Numpy知识之随机散步实例
  20. jupyter notebook 初步使用配置调整

热门文章

  1. kuangbin专题十六 KMP&amp;&amp;扩展KMP HDU4300 Clairewd’s message
  2. maven mirrorOf
  3. POJ 1000 A+B
  4. datatables通过ajax调用渲染数据,怎么根据数据给td添加class
  5. ssh连接异常
  6. sonar 测试覆盖率
  7. Eclipse + Git + 码云
  8. 百度Echart 地图
  9. 笔记-spring aop 原理学习2
  10. Golang常用数据结构(对照python)