设为首页 收藏本站
查看: 992|回复: 0

[经验分享] tomcat中的redis、activemq、activemq数据库调优的使用

[复制链接]

尚未签到

发表于 2018-11-4 10:27:53 | 显示全部楼层 |阅读模式
  1.下载安装包redis-3.2.2.tar.gz,并且进行解压,解压后编译源码
  [root@localhost soft]# tar  -zxvf redis-3.2.2.tar.gz
  [root@localhost soft]# cd redis-3.2.2
  [root@localhost redis-3.2.2]# make
  编译完成后提示
  make[1]: Leaving directory `/soft/redis-3.2.2/src'
  2.编译完成后,在src目录下有四个可执行文件redis-server、
  [root@localhost redis-3.2.2]# mkdir /usr/local/redis
  [root@localhost redis-3.2.2]# cp redis.conf /usr/local/redis/
  [root@localhost redis-3.2.2]# cd src/
  [root@localhost src]# cp redis-server /usr/local/redis/
  [root@localhost src]# cp redis-benchmark /usr/local/redis/
  [root@localhost src]# cp redis-cli /usr/local/redis/
  [root@localhost src]# cd /usr/local/redis/
  [root@localhost redis]# ls
  redis-benchmark   #redis性能测试工具
  redis-cli         #redis命令行操作工具
  redis.conf        redis配置文件
  redis-server      #服务器的daemon启动程序
  3.修改配置文件
  [root@localhost redis]# vi redis.conf
  61 #bind 127.0.0.1      注释这一行,默认是指至运行自己访问自己
  128 daemonize yes       默认为no,改为yes,默认是不能以守护进程运行
  480 requirepass 123456  默认是没有开启redis的密码,设置redis的密码为123456
  4.redis启动服务
  /usr/local/redis/redis-server /usr/local/redis/redis.conf    配置文件已经改写为守护进程的方式
  [root@fanxiaohui redis]# ps -elf | grep redis
  5 S root       6524      1  0  80   0 - 33383 ep_pol 00:06 ?        00:00:00 /usr/local/redis/redis-server *:6379
  0 S root       6528   3187  0  80   0 - 25814 pipe_w 00:06 pts/1    00:00:00 grep redis
  5.客户端测试一下是否启动成功,开启认证功能后redis测试方法必须指定服务器IP地址、端口和密码
  [root@fanxiaohui redis]# redis-cli -h 127.0.0.1 -p 6379 -a 123456
  127.0.0.1:6379> set foo bar
  OK
  127.0.0.1:6379> get foo
  "bar"
  127.0.0.1:6379>
  可以看到取的值说明成功。
  activemq Linux中的部署和安装
  1.下载安装包apache-activemq-5.14.1-bin.tar.gz,并且进行解压,解压后编译源码
  [root@fanxiaohui soft]# tar -zxvf apache-activemq-5.14.1-bin.tar.gz
  [root@fanxiaohui soft]# mv apache-activemq-5.14.1 /usr/local/apache-activemq
  [root@fanxiaohui soft]# cd /usr/local/apache-activemq/bin/
  2.启动activemq服务
  /usr/local/activemq/bin/activemq start
  3.查看端口是否有运行程序
  [root@localhost bin]# netstat -anpult | grep 61616
  tcp        0      0 :::61616                    :::*                        LISTEN
  3576/java
  4.完成后添加开启自启动
  [root@localhost bin]# cat /etc/rc.local
  #!/bin/sh
  #
  # This script will be executed *after* all the other init scripts.
  # You can put your own initialization stuff in here if you don't
  # want to do the full Sys V style init stuff.
  touch /var/lock/subsys/local
  /usr/local/activemq/bin/activemq start
  5.apache-activemq调优配置
  持久化
  ActiveMQ支持持久化,可以将接收到的消息保存到数据库中,就算ActiveMQ重启,也照样能将尚未派发的消息发送出去。
  ActiveMQ的持久化机制,对于Queue类型的消息,将存储在Broker,但是一旦其中一个消费者完成消费,则立即删除这条消息。
  对于Topic类型的消息,即使所有的订阅者都完成了消费,Broker也不一定会马上删除无用消息,而是保留推送历史,之后会异步清除无用消息。
  而每个订阅者消费到了哪条消息的offset会记录在Broker,以免下次重复消费。因为消息是顺序消费,先进先出,所以只需要记录上次消息消费到哪里就可以了。
  配置持久化的方式,都是修改%ACTIVEMQ_HOME%conf/acticvemq.xml文件。
  1。持久化为文件
  这个你装ActiveMQ时默认就是这种,只要你设置消息为持久化就可以了。涉及到的配置和代码有
  
  
  
  2.持久化 为 mysql
  [root@fanxiaohui lib]# cd /usr/local/apache-activemq/lib
  [root@fanxiaohui soft]# mv  mysql-connector-java-5.1.34.jar /usr/local/apache-activemq/lib/
  你首先需要把MySql的驱动放到ActiveMQ的Lib目录下,如mysql-connector-Java-5.1.34.jar。
  [root@fanxiaohui soft]# cd /usr/local/apache-activemq/conf/
  [root@fanxiaohui conf]# vi activemq.xml
  85        
  86                  
  87                  
  ...............................
  ...............................
  133           
  134                                #使用的JDBC驱动的完整有效的java 类名
  135                           #传递给JDBC驱动的用于建立连接的URL
  136                             # 传递给JDBC驱动的用于建立连接的用户名
  137                          #传递给JDBC驱动的用于建立连接的密码
  138                          #开启池的prepared statement 池功能
  139                           # 最大活动连接:连接池在同一时间能够分配的最大活动连接的数量, 如果设置为非正数则表示不限制
  140                              #最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制
  141                             #小空闲连接:连接池中容许保持空闲状态的最小连接数量,负数表示没有现在
  142                           #初始化连接:连接池启动时创建的初始化连接数量
  143                           #最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为-1表示无限等待
  144                           #在空闲连接回收器线程运行期间休眠的时间值,以毫秒为单位.如果设置为非正数,则不运行空闲连接回收器线程
  145                           #在每次空闲连接回收器线程(如果有)运行时检查的连接数量
  146                            #连接在池中保持空闲而不被空闲连接回收器线程(如果有)回收的最小时间值,单位毫秒
  147                          #SQL查询,用来验证从连接池取出的连接,在将连接返回给调用者之前.如果指定,则查询必须是一个SQL SELECT并且必须返回至少一行记录
  148            
  从配置中可以看出数据库的名称是activemq,密码为:activemq.123 你需要手动在MySql中增加这个库。
  mysql>
  mysql>create database activemqdb;

  mysql>grant all on activemqdb.* to "activemq"@"%">  数据库配置好后才能启动activemq服务
  [root@fanxiaohui conf]# /usr/local/apache-activemq/bin/activemq start
  INFO: Loading '/usr/local/apache-activemq//bin/env'
  INFO: Using java '/usr/java/bin/java'
  INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
  INFO: pidfile created : '/usr/local/apache-activemq//data/activemq.pid' (pid '4123')
  [root@fanxiaohui conf]#  ps -elf | grep  activemq
  0 S root       4123      1 40  80   0 - 768127 futex_ 02:03 pts/0   00:00:04 /usr/java/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/usr/local/apache-activemq//conf/login.config -Dcom.sun.management.jmxremote -Djava.awt.headless=true -Djava.io.tmpdir=/usr/local/apache-activemq//tmp -Dactivemq.classpath=/usr/local/apache-activemq//conf:/usr/local/apache-activemq//../lib/: -Dactivemq.home=/usr/local/apache-activemq/ -Dactivemq.base=/usr/local/apache-activemq/ -Dactivemq.conf=/usr/local/apache-activemq//conf -Dactivemq.data=/usr/local/apache-activemq//data -jar /usr/local/apache-activemq//bin/activemq.jar start
  再次查看数据库时出现三张表
  mysql> show databases;
  +--------------------+
  | Database           |
  +--------------------+
  | information_schema |
  | activemqdb         |
  | data               |
  | fanxiaohui         |
  | mysql              |
  | performance_schema |
  | sys                |
  | test               |
  +--------------------+
  8 rows in set (0.00 sec)
  mysql> use activemqdb;
  Database changed
  mysql> show tables;
  +----------------------+
  | Tables_in_activemqdb |
  +----------------------+
  | ACTIVEMQ_ACKS        |
  | ACTIVEMQ_LOCK        |
  | ACTIVEMQ_MSGS        |
  +----------------------+
  3 rows in set (0.00 sec)
  activemq_acks   用于存储订阅关系,如果是持久化TOPIC,订阅者和服务器的订阅关系在这个表保存
  activemq_msgs   用于存储消息,Queue和Topic都存储在这个表中
  6.测试
  配置好后可以登录监控管理页面去看队列情况
  http://192.168.23.240:8161/admin
  1.添加用户名和密码,在conf目录下找到jetty-realm.properties
  cd /usr/local/activemq/conf/
  vi jetty-realm.properties
  18 # Defines users that can access the web (console, demo, etc.)
  19 # username: password [,rolename ...]
  20 system: manager,admin                          添加这一行,管理员的账号和密码
  21 admin: admin, admin
  22 user: user, user
  ~
  2.修改配置jetty.xml文件
  cd /usr/local/activemq/conf/
  [root@fanxiaohui conf]# vi  jetty.xml
  48
  49     
  50         
  51            
  52                 
  53                  
  54                  
  55                  
  56                 
  57            
  58         
  59     
  删除以上的行
  57                                 
  58                                 
  添加以上的行


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-630549-1-1.html 上篇帖子: redis3.0集群搭建 下篇帖子: 学习Redis笔记
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表