Java開發技術大雜燴(一)之Redis、Jmeter、MySQL的那些事

###前言mysql

畢業答辯告一段落,接下來好好努力工做。linux

###Redis遇到的一些問題redis

DENIED Redis is running in protected mode because protected mode is enabled, no bind address was specified, no authentication password is requested to clients. In this mode connections are only accepted from the loopback interface. If you want to connect from external computers to Redis you may adopt one of the following solutions: 1) Just disable protected mode sending the command 'CONFIG SET protected-mode no' from the loopback interface by connecting to Redis from the same host the server is running, however MAKE SURE Redis is not publicly accessible from internet if you do so. Use CONFIG REWRITE to make this change permanent. 2) Alternatively you can just disable the protected mode by editing the Redis configuration file, and setting the protected mode option to 'no', and then restarting the server. 3) If you started the server manually just for testing, restart it with the '--protected-mode no' option. 4) Setup a bind address or an authentication password. NOTE: You only need to do one of the above things in order for the server to start accepting connections from the outside.
複製代碼

這是redis的保護機制,鏈接redis只能是127.0.0.1這個ip,咱們遠程鏈接是拒絕的。因此咱們須要在redis.conf進行以下配置。spring

  • 1.配置protected-mode no,禁用redis默認保護機制。 sql

    image.png

  • 2.配置daemonize yes,讓redis後臺啓動。 數據庫

    image.png

  • 3.註釋掉bind 127.0.0.1這行代碼apache

    image.png

  • 4.而後經過指定配置文件啓動方式啓動redis。vim

redis-server redis.conf
複製代碼
  • 5.經過telnet 111.230.11.184 6379,發現遠程登陸成功。
    image.png

###Jmeter遇到的一些問題bash

  • 1.設置Jmeter在linux上環境變量,vim /etc/profile,進行以下配置,而後source /etc/profile保存配置讓其生效。
export JMETER_HOME=/usr/local/apache-jmeter-4.0
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH
複製代碼

###MySQL遇到的問題服務器


  • 1.當我在作秒殺商品壓測的時候,發現會頻繁的訪問數據庫。因而將數據源鏈接池中的spring.datasource.druid.inital-size(初始化鏈接)設置爲500,spring.datasource.druid.min.idle(最小空閒鏈接,鏈接池允許保持空閒狀態的最小鏈接,低於這個數量將會建立新的鏈接)設置爲500,spring.datasource.druid.max-active(最大活動鏈接,鏈接池在同一時間可以分配的最大活動鏈接的數量)設置爲1000。而後看輸出臺拋出了Data source rejected establishment of connection, message from server: "Too many connections"。這是因爲太多的鏈接數量超過了mysql默認的鏈接數,咱們只須要在/etc/my.cnf添加以下配置(初始化鏈接數設置的過大,會致使應用啓動變得很慢):
max_connections=1000 全部用戶鏈接數的最大值
max_user_connections=520 單一用戶鏈接數的最大值
wait_timeout=60  60s後關閉空閒鏈接,對正在工做的鏈接不受影響
複製代碼
  • 3.學習Linux命令:netstat -anp|grep 8086,查看佔用8086端口的程序的pid。
  • 4.學習Linux命令 :cat /var/log/mysqld.log|grep ERROR,查看mysqld.log日誌文件中ERROR級別的日誌內容。
  • 5.學習Linux命令:mysql -uroot -p,登陸mysql。SHOW VARIABLES LIKE "%max%connec%",查看參數配置。
    image.png
  • 6.當我在linux下,登陸mysql後,輸入show databases,發現沒有反應。百度後,發現必需要在每行命令結尾加上 \g。
    image.png
    image.png
  • 7.學習Linux命令:cat /proc/meminfo,查看linux服務器當前可用內存。真正可用的內存=MemFree+Buffers+Cached
    image.png

###尾言

mayday

相關文章
相關標籤/搜索