Secret Experience

Secret Experience (https://secretexperience.net/index.php)
-   [L2J] Dúvidas Solucionadas (https://secretexperience.net/forumdisplay.php?f=653)
-   -   memoria do gameserver.bat (https://secretexperience.net/showthread.php?t=1161)

yschmitzz 09-12-2008 08:09 PM

memoria do gameserver.bat
 
To com 2 duvidas em relação a memoria que edita no .bat

1 - tem algum limite de memoria que se pode colocar no gameserver?
caso tenha, soponhamos que seja 1536mb se eu tiver um pc com 4gb de ram vai fazer alguma melhora ou o gameserver se limitara a 1536?


nao expliquei direito, a memoria que eu to falando que edita no bat é essa:
Código:

REM -------------------------------------
REM Default parameters for a basic server.
java -Dfile.encoding=UTF-8 -Xmx1024m -cp bsf.jar;bsh-2.0b4.jar;commons-logging-1.1.jar;mmocore.jar;javolution.jar;c3p0-0.9.1.2.jar;mysql-connector-java-5.1.5-bin.jar;l2jserver.jar;jython.jar net.sf.l2j.gameserver.GameServer
REM
REM If you have a big server and lots of memory, you could experiment for example with
REM java -server -Xmx1536m -Xms1024m -Xmn512m -XX:PermSize=256m -XX:SurvivorRatio=8 -Xnoclassgc -XX:+AggressiveOpts
REM -------------------------------------

vlw

Setokaiba 09-12-2008 08:41 PM

Sabendo que o sistema operacional só reconhece 2 GB mesmo. Sendo x32 bits.

Não há necessidades de por excedente a isto.

yschmitzz 10-12-2008 04:18 PM

suponhamos que eu coloque um 2003 server que rode até 8gb
o l2j bateriaalgum limite?

Setokaiba 10-12-2008 04:39 PM

Poucos sabem, mas a arquitetura x86 (Um dia na XPZona me perguntaram o que era x86 :wacko:) /32bits (Linux/Windows) oferece uma limitação importante para aplicações Java no tocante ao consumo de memória RAM. A arquitetura 32 bits pode endereçar nativamente no máximo 4GB de memória RAM (2^32 = 4.2 bilhões ~ 4Gb). Destes 4GB, metade (2GB) é reservada para o funcionamento do kernel e a outra metade (2GB) fica disponível para outros processos e aplicações. Não vou entrar no mérito da questão do porquê isso ocorre, até porque não entendo muito sobre estes assuntos de JAVA, porém adianto que existem algumas alternativas no Windows 2k/2k3/XP (/PAE) para endereçar um número maior de memória ao invés de 2GB, o mesmo é válido para os kernels mais novos do Linux (2.4 para cima), mas até agora não compreendi muito bem o que isso pode mudar em relação ao suporte à Java.

O fato é que a pilha (heap) do JVM utiliza a memória de forma contínua, alocando um bloco unitário, como um único processo, limitando o uso de RAM por uma instância JVM única à 1.8GB (os 200Mb restantes são usados pelo JVM para atender processos internos).
A pouco mais de uns dois meses, o Estive-O teve um problema e postou um tópico com a dúvida sobre o erro do Heap do Java, que não estava permitindo dar load no servidor, e se não me engano ele já havia locado o seu dedicado e os dias estavam correndo... A resposta foi simples, pois o Java dá erros de Heap Space quando a quantidade de memória informada, é inferior a existente.

Em resumo: se você está pensando em comprar um servidor na arquitetura x86/32bits (Intel/AMD) e pretende instalar mais do que 4GB de memória RAM pense e estude esta questão, pois você poderá estar comprando memória extra (e cara) que não fará a menor diferença, pois não poderá ser usada pelo JVM.

Se a sua aplicação no caso de servidor L2J, precisar de algo maior (o que está se tornando bastante comum hoje em dia), a solução é partir para a arquitetura 64bits (tanto em Windows quanto em Linux), arquitetura que graças à AMD está se tornando mais popular e viável ($) para os nossos bolsos. Em alguns casos você pode optar pelo modelo híbrido 32/64bits (Atlhon64) e ficar pronto para quando for a hora de migrar. O Ivan quem está mais por dentro dos modelos de processadores AMD, e Intel.

O interessante é saber que a arquitetura 32bits Sparc da Sun não apresenta este problema com o JVM. Que diferença faz ser dona da tecnologia não? :laugh:)

Eu prefiro ficar com Intel por ela ter um nome bonitinho, e também ser conhecida mundialmente... Muitas pessoas ficam até cabreiras quando acessam o site de algum servidor para poder verificar a configuração do servidor, e encontram AMD como processador do servidor.
Eu jogava num servidor L2OFF chamado PvPX e os processadores eram Intel... Mas joguei em servidores que o processador era AMD, a diferença foi imensa, não sei se partia da má administração que não configurou corretamente o servidor, ou se da falta de memória RAM, ou até mesmo no blefe da configuração. Muitas pessoas mentem a configuração do servidor, a pouco tempo atrás eu ajudava um amigo diretamente num servidor L2J, ele emulava num Pentium D e pedia para eu por no site que usava Dual Xeon xD :wacko:

Kryer 10-12-2008 05:11 PM

yschmitzz, você quer fazer oque no caso?
Aumentar a capacidade do Servidor?
Economizar mais memoria?
Ou liberar mais memoria e consumir menos a CPU?
Ouuuu, sei lá oq! ;P

newsamael 10-12-2008 06:01 PM

Se for almentar a ram awe do dos.
terá que almentar em vários lugares como em : Threads.properties.
E em outros.

yschmitzz 10-12-2008 06:28 PM

Vlw SetoKaiba deu para entender, entaoa unica forma seria usar o 64b?

Kryer estou querendo saber se o l2j possue alguma limitação na quantidade de memoria,se por exemplo eu tiver 8 gb de ram, ele vai trabalhar a 8 gb
mas da deu para entender pela explicação do seto xD

vlw newsamuel

Kryer 10-12-2008 06:43 PM

Hehe.. entao tá blz..
Porque é aquilo que ele disse sim. ^^
Mas eu achei que você queria fazer algo, se quisesse eu iria lhe explicar oque alterar. ^^

newsamael 10-12-2008 11:17 PM

Lembrando que o Mysql tmb necessita de bastante Ram.
Então faça uma boa divisão awe.
sendoq eu com 8gb de ram.
Coloque apenas 4gb para o java.

séria o mais correto a fazer.

MUHera 16-02-2009 05:15 AM

Eu Tenho um dedicado x64 Bits
Windowns server 2003
4GB Ram
Queria saber como almento memoria do java tah travando !


Horários baseados na GMT -3. Agora são 01:58 AM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.