ラベル windowsバッチ の投稿を表示しています。 すべての投稿を表示
ラベル windowsバッチ の投稿を表示しています。 すべての投稿を表示

2018年1月22日月曜日

【Windowsバッチ】Javaのメモリ監視と解放(プロセス監視・ディスク監視等)

ポックンのWindowsメモリ解放についてもメモ

Javaベースで動いているシステムで
メモリの枯渇に悩まされている時に
使えるかもしれないバッチ。

OSSの全文検索システム(FESS)を
運用している際に効果があったもの。

定期再起動運用を決める前に試してみてもよいかも。
また、統合サービスなどを使用せず、特定のプロセス活動を監視し
メモリなどが一定になったら~~~するや
簡易的なパフォーマンスやディスク監視にも応用ができるかと。

ちなみに「empty.exe」は、Microsoft社が公開しているメモリ解放ツール。

なお、符号付32bitの範囲(-2147483648 ~ 2147483647)を超える場合は
「SET /A GHI=%TM:~0,3%」などする必要あり。

@ECHO OFF
:MOD_STA

FOR /F "delims=" %%A IN (tasklist ^|find java) DO SET ABC=%%A
SET DEF=%ABC:,=%
ECHO %DEF%
FOR /F "tokens=5" %%I IN (ECHO %DEF%) DO SET /A TM=%%I
ECHO %TM%
IF %TM% GTR 70000 (
Empty.exe *
)

GOTO MOD_STA

2018年1月8日月曜日

プログラムが成功するまで繰り返し実行するバッチ

ポックンのプログラムが成功するまで繰り返し実行し続けたい時のバッチ

以下は、3つのプログラムが全て終了コード正常(0)を
返すまで、失敗したプログラムのみ実行し続ける。

@echo off
setlocal enabledelayedexpansion

set RET1=1
set RET2=1
set RET3=1

:restart

if not !RET1! == 0 (
program1.exe
set RET1=!ERROLEVEL!
)

if not !RET2! == 0 (
program2.exe
set RET2=!ERROLEVEL!
)

if not !RET3! == 0 (
program3.exe
set RET3=!ERROLEVEL!
)

if !RET1! == 0 if !RET2! == 0 if !RET3! == 0 (
goto end
)

goto restart

:end