nacos單機(jī)本地配置文件存儲(chǔ)位置方式
nacos單機(jī)本地配置文件存儲(chǔ)位置
C:\Users***\nacos\config\config_rpc_client_nacos\

單機(jī)版Nacos文件配置問題
Nacos服務(wù)自動(dòng)關(guān)閉
在使用Nacos時(shí),有時(shí)候會(huì)遇到服務(wù)自動(dòng)關(guān)閉的情況。
這通常涉及到三方面的原因:
- 內(nèi)存配置
- 啟動(dòng)方式
- 關(guān)閉方式
下面逐一說明。
內(nèi)存配置導(dǎo)致Nacos關(guān)閉
Nacos最新版本默認(rèn)的JVM配置是2G,如果你的服務(wù)器配置比較低,在這樣的默認(rèn)配置下會(huì)導(dǎo)致OOM情況的發(fā)生。
startup.sh中配置項(xiàng):
if [[ "${MODE}" == "standalone" ]]; then
? ? JAVA_OPT="${JAVA_OPT} -Xms512m -Xmx512m -Xmn256m"
? ? JAVA_OPT="${JAVA_OPT} -Dnacos.standalone=true"
else
? ? if [[ "${EMBEDDED_STORAGE}" == "embedded" ]]; then
? ? ? ? JAVA_OPT="${JAVA_OPT} -DembeddedStorage=true"
? ? fi
? ? JAVA_OPT="${JAVA_OPT} -server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
? ? JAVA_OPT="${JAVA_OPT} -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=${BASE_DIR}/logs/java_heapdump.hprof"
? ? JAVA_OPT="${JAVA_OPT} -XX:-UseLargePages"
fi這種情況,要么升級(jí)服務(wù)器配置,要么調(diào)整JVM參數(shù),如果非必須建議調(diào)整JVM參數(shù)。除非業(yè)務(wù)量必須需要這么大的配置。
啟動(dòng)方式導(dǎo)致關(guān)閉
使用Nacos較低版本時(shí),比如nacos 0.7.0 releases及以下版本時(shí),Linux下如下方式啟動(dòng):
sh startup.sh -m standalone
那么,當(dāng)關(guān)閉窗口之后,Nacos服務(wù)會(huì)自動(dòng)退出。這是因?yàn)闆]有作為后臺(tái)進(jìn)程啟動(dòng)的原因。
解決方案,啟動(dòng)時(shí)作為后臺(tái)進(jìn)程進(jìn)行啟動(dòng):
sh startup.sh -m standalone & // 或 setsid sh startup.sh -m standalone &
在高版本中,此問題已經(jīng)得到解決,腳本中執(zhí)行Java程序時(shí),用的便是后臺(tái)進(jìn)程。
shutdown腳本誤殺
在較低版本時(shí),默認(rèn)的shutdown.sh腳本腳本在集群情況下執(zhí)行會(huì)將同一臺(tái)機(jī)子上的所有節(jié)點(diǎn)都關(guān)閉掉,因?yàn)閟hell命令查找的是有nacos.nacos標(biāo)記的pid,當(dāng)搭建偽集群的情況,就會(huì)發(fā)生被誤殺的情況。
為了避免shutdown.sh腳本的誤殺,應(yīng)該默認(rèn)關(guān)閉當(dāng)前目錄下的節(jié)點(diǎn)更為安全,例如將原腳本更改為:
#!/bin/sh
# Copyright 1999-2018 Alibaba Group Holding Ltd.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# ? ? ?http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
BIN_DIR=$(cd `dirname $0`;pwd)
#獲取項(xiàng)目根目錄
DEPLOY_DIR=$(cd ${BIN_DIR};cd ..;pwd)
pid=`ps ax | grep -i $DEPLOY_DIR |grep java | grep -v grep | awk '{print $1}'`
if [ -z "$pid" ] ; then
? ? ? ? echo "No nacosServer running."
? ? ? ? exit -1;
fi
echo "The nacosServer(${pid}) is running..."
kill ${pid}
echo "Send shutdown request to nacosServer(${pid}) OK"以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
java方法實(shí)現(xiàn)簡(jiǎn)易ATM功能
這篇文章主要為大家詳細(xì)介紹了用java方法實(shí)現(xiàn)簡(jiǎn)易ATM功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
Java中String字符串轉(zhuǎn)具體對(duì)象的幾種常用方式
String對(duì)象可以用來存儲(chǔ)任何字符串類型的數(shù)據(jù),包括HTML、XML等格式的字符串,下面這篇文章主要給大家介紹了關(guān)于JavaString字符串轉(zhuǎn)具體對(duì)象的幾種常用方式,需要的朋友可以參考下2024-03-03
詳解Spring?Security怎么從數(shù)據(jù)庫加載我們的用戶
這篇文章主要為大家介紹了Spring?Security怎么從數(shù)據(jù)庫加載我們的用戶示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
Java8 HashMap的實(shí)現(xiàn)原理分析
Java8之后新增挺多新東西,接下來通過本文給大家介紹Java8 HashMap的實(shí)現(xiàn)原理分析,對(duì)java8 hashmap實(shí)現(xiàn)原理相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧2016-03-03
spring導(dǎo)入framework報(bào)紅問題
這篇文章主要介紹了spring導(dǎo)入framework報(bào)紅問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
Java?swing實(shí)現(xiàn)應(yīng)用程序?qū)?shù)據(jù)庫的訪問問題
這篇文章主要介紹了Java?swing實(shí)現(xiàn)應(yīng)用程序?qū)?shù)據(jù)庫的訪問,本次實(shí)驗(yàn)需要做一個(gè)GUI界面和一個(gè)連接查詢功能,在論壇上借鑒了其他大佬獲取網(wǎng)站內(nèi)容的部分代碼,然后自己做了一個(gè)及其簡(jiǎn)陋的swing界面,算是把這個(gè)實(shí)驗(yàn)完成了,需要的朋友可以參考下2022-09-09

