Тема: Про Lameguard
Показать сообщение отдельно
Непрочитано 31.05.2014, 06:58   #10
Пользователь

Автор темы (Топик Стартер) Re: Про Lameguard

Подскажите куда что девать :
3. скрипт запуска игрового сервера изменить так, чтобы модуль защиты был первым в списке classpath,
и перед запускающим классом сервера вписать com.lameguard.LameGuard

пример:
java ... -cp lameguard-1.9.5.jar: ... com.lameguard.LameGuard l2p.gameserver.GameServer
(остальные либы) (строка запуска геймсервера)



Вот скрипт запуска :


@echo off
@color 0E
title EmuRT GameServer
:start
echo Starting EmuRT GameServer.
echo.
REM set PATH="type here your path to java jdk/jre (including bin folder)"
REM Default parameters for a basic server.

REM ======== Optimize memory settings =======
REM Minimal size with geodata is 1.5G, w/o geo 1G
REM Make sure -Xmn value is always 1/4 the size of -Xms and -Xmx.
REM -Xms<size> set initial Java heap size
REM -Xmx<size> set maximum Java heap size
REM -Xmn<size> Size of young generation
REM ===============================
REM Set heap min/max to same size for consistent results
REM одинаковый размер памяти для Xms и Xmx, JVM пытается удержать размер heap'а минимальным, и если его нужно меньше, чем в Xmx - гоняет GC понапрасну
SET java_opts=%java_opts% -Xms1024m
SET java_opts=%java_opts% -Xmx3072m

REM Non Heap memory
SET java_opts=%java_opts% -XX:PermSize=512m
REM Maximum size of the permanent generation.
SET java_opts=%java_opts% -XX:MaxPermSize=640m

REM Garbage collector/Performance Options
SET java_opts=%java_opts% -XX:+UseConcMarkSweepGC
SET java_opts=%java_opts% -XX:+UseParNewGC
SET java_opts=%java_opts% -XX:+CMSIncrementalMode
SET java_opts=%java_opts% -XX:MaxGCPauseMillis=500
SET java_opts=%java_opts% -XX:+DoEscapeAnalysis
SET java_opts=%java_opts% -XX:+UseBiasedLocking
SET java_opts=%java_opts% -XX:+EliminateLocks
REM SET java_opts=%java_opts% -XX:CMSIncrementalSafetyFactor=50
REM Number of garbage collector threads for the parallel young generation collections and for the parallel parts of the old generation collections
SET java_opts=%java_opts% -XX:ParallelGCThreads=10
SET java_opts=%java_opts% -XX:ParallelCMSThreads=5

SET java_opts=%java_opts% -XX:+AggressiveOpts
REM Default size of new generation
REM SET java_opts=%java_opts% -XX:NewSize=512m
REM SET java_opts=%java_opts% -XX:MaxNewSize=1024m
REM instructs the VM to set a 2:1 ratio between young and tenured generations (Ratio of new/old generation sizes)
REM SET java_opts=%java_opts% -XX:NewRatio=2
REM Sets survivor space ratio to 1:8, resulting in larger survivor spaces (the smaller the ratio, the larger the space). Larger survivor spaces allow short lived objects a longer time period to die in the young generation
REM SET java_opts=%java_opts% -XX:SurvivorRatio=8
REM Allows 80% of the survivor spaces to be occupied instead of the default 50%, allowing better utilization of the survivor space memory.
REM SET java_opts=%java_opts% -XX:TargetSurvivorRatio=50
REM SET java_opts=%java_opts% -XX:MaxTenuringThreshold=5

SET java_opts=%java_opts% -XX:+UseCMSInitiatingOccupancyOnly
SET java_opts=%java_opts% -XX:CMSInitiatingOccupancyFraction=80

REM SET java_opts=%java_opts% -XX:+CMSParallelRemarkEnabled
SET java_opts=%java_opts% -XX:+CMSClassUnloadingEnabled

REM The important setting in 64-bits with the Sun JVM is -XX:+UseCompressedOops as it saves memory and improves performance
SET java_opts=%java_opts% -XX:+UseCompressedOops
SET java_opts=%java_opts% -XX:+UseFastAccessorMethods

REM Logging
REM SET java_opts=%java_opts% -XX:+PrintGCDetails
REM SET java_opts=%java_opts% -XX:+PrintGCDateStamps
REM SET java_opts=%java_opts% -XX:+PrintGCApplicationStoppedTime
REM SET java_opts=%java_opts% -XX:+PrintGCTimeStamps
REM SET java_opts=%java_opts% -XX:+PrintGC
REM SET java_opts=%java_opts% -Xloggc:./log/game/garbage_collector.log

SET java_settings=%java_settings% -Dfile.encoding=UTF-8
SET java_settings=%java_settings% -Djava.net.preferIPv4Stack=true

java -server %java_settings% %java_opts% -cp config;../lib/* l2p.gameserver.GameServer

REM Debug ...
REM java -Dfile.encoding=UTF-8 -cp config;./* -Xmx1G -Xnoclassgc -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,ad dress=7456 l2p.gameserver.GameServer

if ERRORLEVEL 2 goto restart
if ERRORLEVEL 1 goto error
goto end
:restart
echo.
echo Server restarted ...
echo.
goto start
:error
echo.
echo Server terminated abnormaly ...
echo.
:end
echo.
echo Server terminated ...
echo.

pause

Добавлено через 10 минут
Хотя может это скрипт запуска, а то запускающий файл:

#!/bin/bash

# ======== JVM settings =======
# Set heap min/max to same size for consistent results
# одинаковый размер памяти для Xms и Xmx, JVM пытается удержать размер heap'а минимальным, и если его нужно меньше, чем в Xmx - гоняет GC понапрасну
javaopts="$javaopts -Xms2048m"
javaopts="$javaopts -Xmx2048m"
javaopts="$javaopts -Xms1228m"
javaopts="$javaopts -Xss160k"

# Non Heap memory
javaopts="$javaopts -XX:PermSize=384m"
# Maximum size of the permanent generation.
javaopts="$javaopts -XX:MaxPermSize=384m"

# Garbage collection/Performance Options
javaopts="$javaopts -XX:+UseConcMarkSweepGC"
javaopts="$javaopts -XX:+UseParNewGC"
javaopts="$javaopts -XX:+CMSIncrementalMode"
javaopts="$javaopts -XX:MaxGCPauseMillis=25"
javaopts="$javaopts -XX:+DoEscapeAnalysis"
javaopts="$javaopts -XX:+UseBiasedLocking"
javaopts="$javaopts -XX:+UseAdaptiveGCBoundary"
javaopts="$javaopts -XX:+EliminateLocks"
# javaopts="$javaopts -XX:CMSIncrementalSafetyFactor=50"
# Number of garbage collector threads for the parallel young generation collections and for the parallel parts of the old generation collections
javaopts="$javaopts -XX:ParallelGCThreads=8"
javaopts="$javaopts -XX:ParallelCMSThreads=4"

javaopts="$javaopts -XX:+AggressiveOpts"
# Default size of new generation
javaopts="$javaopts -XX:NewSize=576m"
javaopts="$javaopts -XX:MaxNewSize=576m"
# instructs the VM to set a 2:1 ratio between young and tenured generations (Ratio of new/old generation sizes)
javaopts="$javaopts -XX:NewRatio=2"
# Sets survivor space ratio to 1:8, resulting in larger survivor spaces (the smaller the ratio, the larger the space). Larger survivor spaces allow short lived objects a longer time period to die in the young generation
javaopts="$javaopts -XX:SurvivorRatio=4"
# Allows 80% of the survivor spaces to be occupied instead of the default 50%, allowing better utilization of the survivor space memory.
javaopts="$javaopts -XX:TargetSurvivorRatio=90"
javaopts="$javaopts -XX:MaxTenuringThreshold=6"

javaopts="$javaopts -XX:+UseCMSInitiatingOccupancyOnly"
javaopts="$javaopts -XX:CMSInitiatingOccupancyFraction=80"

javaopts="$javaopts -XX:+CMSParallelRemarkEnabled"
javaopts="$javaopts -XX:+CMSClassUnloadingEnabled"
javaopts="$javaopts -XX:+ClassUnloading"

# The important setting in 64-bits with the Sun JVM is -XX:+UseCompressedOops as it saves memory and improves performance
javaopts="$javaopts -XX:+UseCompressedOops"
javaopts="$javaopts -XX:+UseFastAccessorMethods"

# Logging
# javaopts="$javaopts -XX:+PrintGCDetails"
# javaopts="$javaopts -XX:+PrintGCDateStamps"
# javaopts="$javaopts -XX:+PrintGCApplicationStoppedTime"
# javaopts="$javaopts -XX:+PrintGCTimeStamps"
# javaopts="$javaopts -XX:+PrintGC"
# javaopts="$javaopts -Xloggc:./log/game/garbage_collector.log"

# не изменять
java_settings=" -Dfile.encoding=UTF-8"
java_settings="$java_settings -Djava.net.preferIPv4Stack=true"

# Java profiler (jvisualVM)
#java_settings="$java_settings -Djava.rmi.server.hostname=IP -Dcom.sun.management.jmxremote.port=PORT -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

# ==========================================

# exit codes of GameServer:
# 0 normal shutdown
# 2 reboot attempt

while :;
do
java -server $java_settings $javaopts -cp config:../lib/* l2p.gameserver.GameServer > log/stdout.log 2>&1

[ $? -ne 2 ] && break
sleep 30;
done

Последний раз редактировалось Kluni; 31.05.2014 в 07:08. Причина: Добавлено сообщение
Kluni вне форума Ответить с цитированием