首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Java 呼叫啟動 memcached:命令參數錯誤修正

     編輯:程式設計綜合問答

錯誤命令

String cmdStr = "F:/memcached_en32or64/x64/memcached.exe –d start"; // 注意:– 為全形長破折號,非 ASCII 連字號 -

修正

String cmdStr = "F:/memcached_en32or64/x64/memcached.exe -d start"; // 標準 ASCII 連字號 -

完整 memcached 參數說明

memcached.exe -h
-p        TCP 監聽埠 (預設 11211)
-U        UDP 監聽埠 (預設 0 關閉)
-l          綁定 IP (預設 INADDR_ANY)
-d start        作為服務啟動
-d restart      重啟服務
-d stop|shutdown 停止服務
-d install      安裝為 Windows 服務
-d uninstall    移除服務
-m          最大記憶體 (預設 64MB)
-c         最大並發連線 (預設 1024)
-v / -vv        詳細/極詳細日誌

Java 執行最佳實踐

  • 使用 ProcessBuilder 而非 Runtime.exec(),正確處理參數陣列、工作目錄、環境變數。
  • 啟動後讀取 stdout/stderr 確認是否成功,避免靜默失敗。
  • 生產環境建議用 **Windows 服務管理器 (sc create / sc start)** 或 **NSSM** 托管 memcached,而非 Java 臨時啟動。
ProcessBuilder pb = new ProcessBuilder(
    "F:/memcached_en32or64/x64/memcached.exe", "-d", "start");
pb.directory(new File("F:/memcached_en32or64/x64"));
Process p = pb.start();
// 讀取 p.getInputStream() / getErrorStream() 判斷結果
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved