Secret Experience

Secret Experience (https://secretexperience.net/index.php)
-   [L2J] Dúvidas Solucionadas (https://secretexperience.net/forumdisplay.php?f=653)
-   -   Players param aleatoriamente (https://secretexperience.net/showthread.php?t=24163)

recognition 09-08-2010 06:00 PM

Players param aleatoriamente
 
Gracia Final - L2jServer.
L2J Revision 3872.
L2JDP Revision 6794.

Estou com um problema. Quando os players estão jogando, do nada todos eles param. 70% voltam a se movimentar depois de uns 10 segundos e 30% são desconectados. O servidor está em um VPS Debian Linux 64-BIT.

Alguém saberia me dizer que problema é esse e a solução?

Segue os dados do VPS e os processos principais.


VPS Resource Limits (a configuração contratada)

Hard Disk Space: 150gb
Guaranteed Ram: 2560mb
Burstable Ram: 2560mb
CPU Units: 10000
CPU Speed: 2500MHz
CPU Cores: 2
Bandwidth: 2000gb
Backup Limit: 5

VPS Resource Usage (O que está sendo usado)

Hard Disk Space: 1.06gb
Ram: 1928mb
Bandwidth: 11585.71gb
Backups: 2 Used

VPS Process Manager (Processos)

PID USER PR NI VIRT RES SHR S CPU MEM TIME COMMAND

5316 root 18 0 1484m 1.2g 9028 S 0 46.9 0:57.11 java
10161 root 18 0 8848 1200 996 S 0 0.0 0:00.00 GameServer_loop

9347 root 17 -2 400m 76m 8708 S 0 3.0 0:05.35 java
9340 root 18 0 8844 1192 996 S 0 0.0 0:00.00 LoginServer_loop

Preciso de ajuda pois já tentei de tudo e não sei ao certo o que é e uso a rev mais atualizada para Gracia Final da equipe L2jServer.

Daniel2 10-08-2010 12:56 PM

mano basta vc editar quantos MB de ram o java ta tumando do seu pc vai no promot do gameserver edita ele e coloca ele aque ;D :GEEK:

recognition 10-08-2010 06:51 PM

GameServer_Loop e LoginServer_Loop
 
Como se trata de Linux os arquivos executados pelo mesmo sao: GameServer_Loop e LoginServer_loop. Segue abaixo.

>> GameServer_Loop


#!/bin/bash

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

while :; do
[ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"
[ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"
java -Djava.util.logging.manager=net.sf.l2j.util.L2LogMa nager -Xms1024m -Xmx1024m -cp ./../libs/*:l2jserver.jar net.sf.l2j.gameserver.GameServer > log/stdout.log 2>&1
[ $? -ne 2 ] && break
# /etc/init.d/mysql restart
sleep 10
done

>> LoginServer_Loop

#!/bin/bash

err=1
until [ $err == 0 ];
do
[ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"
[ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"
nice -n -2 java -Xmx128m -cp ./../libs/*:l2jserver.jar net.sf.l2j.loginserver.L2LoginServer > log/stdout.log 2>&1
err=$?
# /etc/init.d/mysql restart
sleep 10;
done


** Outra coisa que acontece com os players que são desconectados, é que os mesmos ao relogarem na tela de Usuário e Senha, aparece a mensagem: " Conta já está em uso ", quando o mesmo player loga novamente, inserindo a senha novamente, aí ele consegue entrar no Game.

** Os players que não são desconectados, ficam parados no Game por uns 10 a 15 segundos e depois do nada voltam a andar novamente.

** Outra situação é que alguns players param e só andam quando primeiramente clicam nos nomes deles para andar novamente. Mas este caso, acontece mais raramente.

Recognition

Daniel2 11-08-2010 09:59 AM

Citação:

java -Djava.util.logging.manager=net.sf.l2j.util.L2LogMa nager -Xms1024m -Xmx1592m -cp ./../libs/*:l2jserver.jar net.sf.l2j.gameserver.GameServer > log/stdout.log 2>&1
[ $? -ne 2 ] && break
# /etc/init.d/mysql restart
coloque assim como eu citei acima se parar o lag vc coloque aque pq quando as contas desloga e pq o java desconecta elas ;D :GEEK:

recognition 27-08-2010 03:17 PM

O erro se repete.
 
Olá amigo,

Obrigado pela boa vontade em ajudar. Fiz como vc me orientou mas ainda persiste.

>> Os players ficam parados aleatoriamente, e são desconectados. Qdo relogam na tela de login na primeira tentativa, aparece a mensagem: Conta já está em uso. Já na segunda tentativa eles conseguem entrar normalmente. Em alguns casos o player já entra travado ... aí quando ele clica no próprio nome dele (canto superior esquerdo), ele volta a andar.

Quando o servidor estava no windows dava o mesmo problema, daí acredito que não tenha a ver com o sistema operacional. Quando estava na lan tb deu o mesmo problema.

Estou suspeitando quem tem a ver com o MySqL não sei.

Caso tenha alguma outra solução, estarei aguardando.

Obrigado pela ajuda.

Recognition.

.Over12 27-08-2010 05:35 PM

Java está atualizado?
O Que pode ser também falta de um Geodata no servidor, e outro caso é o VPS , quantos players já tem online? Vps de 2 GB aguenta maximo 50 Players.
Acima já começa a da os "Lags".

recognition 08-09-2010 12:41 PM

Verificação no Log stdout.log erro persite ainda.
 
Amigos,

Infelizmente o erro ainda persiste. Então estou postando as configurações para vocês analisarem, inclusive a mensagem do stdout.log onde informa que o player foi desconectado. Obrigado pela força que estão me dando. Migrei do Debian 64-BIT para o Ubuntu Server 64-BIT e o erro persiste da mesma forma.

- Quando acontece esse disconnect e o player tenta logar novamente, na tela de login, aparece a mensagem de que a conta já está em uso. Aí quando o player tenta logar mais uma vez, consegue com sucesso, sem aparecer nenhuma mensagem.
- Será problema na system? já tenho ela a mais de 1 ano e nunca usei outra.
- Será problema do Linux? Porque o server dá esse erro estando apenas com 2 PLAYERS ONLINE. O maior detalhe é que o server não desconecta, permanece online tanto o LoginServer quanto o Gameserver. Apenas os players. Segue dados, Java e erro do log:

--------------------------------------------------------
Dados do LoginServer.loop

#!/bin/bash

err=1
until [ $err == 0 ];
do
[ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"
[ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"
nice -n -2 java -Xmx256m -cp ./../libs/*:l2jserver.jar net.sf.l2j.loginserver.L2LoginServer > log/stdout.log 2>&1
err=$?
# /etc/init.d/mysql restart
sleep 10;
done

--------------------------------------------------------------------
Dados do GameServer.loop

#!/bin/bash

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

while :; do
[ -f log/java0.log.0 ] && mv log/java0.log.0 "log/`date +%Y-%m-%d_%H-%M-%S`_java.log"
[ -f log/stdout.log ] && mv log/stdout.log "log/`date +%Y-%m-%d_%H-%M-%S`_stdout.log"
java -Djava.util.logging.manager=net.sf.l2j.util.L2LogMa nager -Xms2000m -Xmx2000m -cp ./../libs/*:l2jserver.jar net.sf.l2j.gameserver.GameServer > log/stdout.log 2>&1
[ $? -ne 2 ] && break
# /etc/init.d/mysql restart
sleep 10
done

---------------------------------------------------------------
Versao do Java

java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.1) (6b18-1.8.1-0ubuntu1)
OpenJDK 64-Bit Server VM (build 16.0-b13, mixed mode)

-----------------------------------------------------------------
Erro que aparece no Log do GameServer.

Client [Character: Lukinhas - Account: lasabbg - IP: 201.79.230.230] disconnected abnormally.
SevenSigns: Data updated successfully.
Client [Character: Yoruichi - Account: nelliel - IP: 187.104.244.197] disconnected abnormally.
SevenSigns: Data updated successfully.

** É certo que este erro acontece por que o player não clicou no botão "Exit". Foi desconectado de forma anormal.

------------------------------------------------------------------
Esse é um erro que aparece no Log do LoginServer, porém um dos Developers do L2jServer informou que este erro não influencia na questão aqui colocada. Segue o Log:

loading login config
L2Properties: Missing property for key - PacketHandlerDebug
L2Properties: Missing property for key - RequestServerID
L2Properties: Missing property for key - AcceptAlternateID
L2Properties: Missing property for key - DatapackRoot
L2Properties: Missing property for key - RouterHostname
Loading mmo.properties
L2Properties: Missing property for key - IOSelectorThreadCount
MLog clients using java 1.4+ standard logging.

-------------------------------------------------------------------
Conclusão de tudo isso.

- O player está upando, e do nada fica parado juntamente com os Mobs;
- O player leva disconnect.
- Ao logar novamente, o player se depara com a mensagem: "sua conta já está em uso". O player loga mais uma vez e consegue logar.
- Dentro do game o player nasce e fica parado, você clica para as direções mas ele não anda. Percebe-se que os Mobs estão andando normalmente. O player só anda se clicar no nome dele no canto superior esquerdo.
- Depois de tudo isso o player está jogando normalmente no servidor até o próximo disconnect.

----------------------------------------------------------------------
Testes realizados

- SYSTEM : como eu tinha uma system que já usava a muito tempo resolvi trocar, mas o disconnect persistiu.
- GAMESERVER.LOOP e LOGINSERVER.LOOP : Aumentei os valores de cada arquivo, conforme está logo acima, mas o disconnect persistiu.

** Efetuando mais testes.

-------------------------------------------------------------------------
Aguardo alguma sugestão para esta solução. Sucesso.

bemlindo 08-09-2010 01:04 PM

bom ja tive um problema parecido com esse. um programador disse q era problema de handler. mas nao me passou a soluçao. se tiver algum programador de java aki no forum seria bom da uma olhada no codigo na area de handler para tentar axar a solução.

ou pode ser algum sistema de segurança do sistema operacional que ta desconectando afim de evitar invasoes.

obs: sao so observaçoes que poderá ajudar a descobrir o problema.

Daniel2 09-09-2010 10:50 AM

gameserver
Citação:

java -Djava.util.logging.manager=net.sf.l2j.util.L2LogMa nager -Xms1592m -Xmx2024m -cp ./../libs/*:l2jserver.jar net.sf.l2j.gameserver.GameServer > log/stdout.log 2>&1
loginserver
Citação:

java -Xmx1592m -cp ./../libs/*:l2jserver.jar net.sf.l2j.loginserver.L2LoginServer > log/stdout.log 2>&1
err=$?
faça assim se o seu pc tiver mais de 2GB de memoria se tiver menos você mi avise que eu diminuo pra você ;D :cute:

recognition 13-09-2010 11:21 AM

Aplicarei a nova configuração.
 
Olá Daniel2,

Obrigado pela disponibilidade e paciência.

O VPS tem + de 2 GB. Tem 2.5GB de memória física e 3.5GB de memória SWAP. Como Servidor é novo, ainda não tem 5 players online.

Irei aplicar esta nova configuração sugerida por você.

Farei também o teste de trocar o LoginServer por desencargo de consciência ao mesmo tempo que aplicarei estas novas configurações. Também farei revisão completa das configurações de rede do VPS alugado junto a uma pessoa com certificação LPI em Linux. Postarei as respostas em breve.

Peço que não fechem o tópico, pois tem testes que requer tempo para se ter uma conclusão.

Se persistir o problema postarei os Logs tanto do servidor quanto do Java que faz toda a execução.

Obrigado.


Horários baseados na GMT -3. Agora são 11:53 PM.

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