-
03.01.2012, 00:46 #11
AW: KQC - Knuddels Quiz Crawler v0.1 Beta
Wenn man auf Stabilität setzt, ist eine Console deutlich besser. Meine lief mehrere Wochen permanent durch, mit einer GUI hatte ich durchaus schlechtere Erfahrungen.
Außerdem ist der Bot nicht für normale botgeile Nutzer bestimmt, deswegen ist zusätzlich eine schöne Oberfläche nicht erforderlich.
-
03.01.2012, 00:47 #12
- Registriert seit
- 19.12.2011
- Beiträge
- 356
Thanked 164 Times in 101 PostsAW: KQC - Knuddels Quiz Crawler v0.1 Beta
Ja Diebspiel wenn man keine GUI ordentlich programmieren kann, dann kommt es da natürlich zu Problemen
Ordentlich programmieren und auch dann läuft sowas mit GUI ohne Probleme lange
-
03.01.2012, 00:53 #13
AW: KQC - Knuddels Quiz Crawler v0.1 Beta
Wie kann man nur so wenig Ahnung haben.
Du meinst also ernsthaft, eine GUI ist von der Performance (inkludiert RAM Verbrauch) performanter oder mindestens genau gleich wie eine Konsole?
Völlig egal! Dann gibt ja noch mein zweites Argument, nämlich das sie in diesem Fall nicht nötig ist.
-
The Following 3 Users Say Thank You to Diebspiel For This Useful Post:
-
03.01.2012, 01:06 #14
- Registriert seit
- 19.12.2011
- Beiträge
- 356
Thanked 164 Times in 101 PostsAW: KQC - Knuddels Quiz Crawler v0.1 Beta
Nein, aber die 4mb ram und 3millionen ops tun einem PC nicht weh^^
zumindest was STABILITÄT angeht^^
-
03.01.2012, 01:27 #15
AW: KQC - Knuddels Quiz Crawler v0.1 Beta
Habt ihr nicht gerade noch von Stabilität gesprochen?
Naja. Bei mir war irgendwann der Input vom Server null und dann hat die KLib versagt. Kann aber auch mein Fehler gewesen sein, ich werde das die nächsten Tage einmal mit Java realisieren.
MfG„Es sind nicht unsere Fähigkeiten, die zeigen, wer wir wirklich sind, es sind unsere Entscheidungen.“
- Albus Dumbledore, Harry Potter 2
/guestchat registerGuest
-
03.01.2012, 01:28 #16
- Registriert seit
- 19.12.2011
- Beiträge
- 356
Thanked 164 Times in 101 PostsAW: KQC - Knuddels Quiz Crawler v0.1 Beta
Deswegen wunder ich mich, warum Diebspiel mit der Argumentation Performance kommt wenn wir über Stabilität reden^^
-
03.01.2012, 01:39 #17
AW: KQC - Knuddels Quiz Crawler v0.1 Beta
while( behappy() ) { code(); }
-
03.01.2012, 01:56 #18
AW: KQC - Knuddels Quiz Crawler v0.1 Beta
Hatte ich auch so:
PHP-Code:static void autoLoginOut()
{
System.Threading.Thread.Sleep(1000 * 15);
int random = new Random().Next(1000 * 3);
String nickname = null;
String password = null;
while (true)
{
int minute = DateTime.Now.Minute;
if (nickname == null)
{
try
{
[NICKNAMEN]
}
catch (Exception x)
{
nickname = null;
}
}
if (!isLoggedIn && (minute > 58 || minute < 9 || (minute > 29 && minute < 40)))
{
//String nickname = getRandomNickname();
//String password = nickNames[nickname];
try
{
Console.WriteLine(">> LOGGING IN WITH {0}!", nickname);
System.Threading.Thread.Sleep(random);
qc = new QuizClient();
qc.Connect(KNLib.RemoteEndpoint.DE, "218.104.55.28", 1080);
qc.Login(nickname, password, "Quiz");
System.Threading.Thread.Sleep(5000);
qc.joinAllChannels();
isLoggedIn = true;
}
catch (Exception x)
{
nickname = null;
isLoggedIn = false;
}
}
else if (isLoggedIn && (minute == 15 || minute == 45))
{
Console.WriteLine(">> LOGGING OUT!");
System.Threading.Thread.Sleep(random);
qc.Disconnect();
isLoggedIn = false;
nickname = null;
}
System.Threading.Thread.Sleep(1000 * 60);
}
}
PHP-Code:using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.Net;
namespace RunCollector
{
class Program
{
private static bool isLoggedIn = false;
static void Main(string[] args)
{
foreach (Process p in Process.GetProcesses())
{
if (p.ProcessName.StartsWith("QuizColl")) // So hieß das Prgm.
{
p.Kill();
}
}
killShit();
System.Threading.Thread tr = new System.Threading.Thread(autoLoginOut);
tr.Start();
}
private static void killShit()
{
foreach (Process p in Process.GetProcessesByName("javaw"))
{
p.Kill();
}
}
static void autoLoginOut()
{
System.Threading.Thread.Sleep(1000 * 15);
int random = new Random().Next(1000 * 3);
String nickname = null;
String password = null;
while (true)
{
int minute = DateTime.Now.Minute;
if (nickname == null)
{
try
{
[...]NickNamenHandling
}
catch (Exception x)
{
nickname = null;
}
}
if (!isLoggedIn && (minute > 58 || minute < 9 || (minute > 29 && minute < 40)) && nickname != null)
{
try
{
Console.WriteLine(">> LOGGING IN WITH {0}!", nickname);
System.Threading.Thread.Sleep(random);
Process proc = new Process();
proc.StartInfo.FileName = "QuizCollectiong";
proc.StartInfo.Arguments = String.Format("{0} {1}", nickname, password);
proc.StartInfo.UseShellExecute = false;
proc.Start();
qc.Connect(KNLib.RemoteEndpoint.DE, "218.104.55.28", 1080);
qc.Login(nickname, password, "Quiz");
System.Threading.Thread.Sleep(5000);
qc.joinAllChannels();*/
isLoggedIn = true;
}
catch (Exception x)
{
nickname = null;
isLoggedIn = false;
}
}
else if (isLoggedIn && (minute == 15 || minute == 45))
{
Console.WriteLine(">> LOGGING OUT!");
System.Threading.Thread.Sleep(random);
foreach (Process p in Process.GetProcesses())
{
if (p.ProcessName.StartsWith("QuizColl"))
{
p.Kill();
}
}
killShit();
isLoggedIn = false;
nickname = null;
}
System.Threading.Thread.Sleep(1000 * 60);
}
}
}
}
„Es sind nicht unsere Fähigkeiten, die zeigen, wer wir wirklich sind, es sind unsere Entscheidungen.“
- Albus Dumbledore, Harry Potter 2
/guestchat registerGuest
-
04.01.2012, 04:55 #19
- Registriert seit
- 06.11.2011
- Beiträge
- 418
Thanked 686 Times in 246 PostsAW: KQC - Knuddels Quiz Crawler v0.1 Beta
Ich weiß auch nicht warum eine GUI eher abkacken sollte als eine Konsole. Man muss halt darauf achten richtig zu synchronisieren wenn man aus mehreren Threads auf die GUI, welche vom Main-Thread ausgeführt wird, zugreift.
Den einzigen Vorteil den ich bei einer Konsole sehe ist, dass man sie auf einen Server laufen lassen kann ohne einen Desktop zu installieren. Und den Speicher den man spart, das sind aber wirklich nur ein paar MB.
-
04.01.2012, 06:35 #20
- Registriert seit
- 28.10.2011
- Beiträge
- 625
Thanked 279 Times in 168 PostsAW: KQC - Knuddels Quiz Crawler v0.1 Beta
Gut hier muss man noch unterscheiden zwischen Stabilität und Performance.
Natürlich ist die reine Konsolenanwendung nicht so performance-lastig wie eine Anwendung mit GUI. Kommt auch immer auf den Einsatzzweck an.
Die Stabilität war ja auch eher auf die Lauffähigkeit bezogen. Beispielsweise wie lange die Anwendung läuft bis se abschmiert.
Mentos hatte glaube ich weiter oben etwas geschrieben, dass er immer probleme hatte, dass die Anwendung nach 7-8 Stunden abgeschmiert ist..
Meine vermutung ist, dass es an der connection liegt.
Ich habe für Knugle auch eine komplette crawl-architektur geschrieben gehabt. Wenn du nicht ganz genau alles abstimmst, kann es sein, dass nicht rechtzeitig offene verbindungen geschlossen werden.
Das Problem was ich früher mal hatte (und was auch bei dir evtl. der fall ist), dass nachher soviele connections nicht beendet wurden, und dadurch einen overflow passiert sein könnte. Stell dir vor du hast 7126325 Millionen verbindungen offen ^^ Natürlich kann ein Rechner/Server nicht so viele Ports belegen. Irgendwann ist alles dicht und alle ports sind belegt. Bei einem Test hatte ich dadurch sogar den kompletten rootserver lahmgelegt, da er keinerlei verbindungen mehr ein und aus gehen konnten.
Ähnliche Themen
-
[BETA-Release] ProReg Knuddels Registrationsbot
Von DMW007 im Forum Knuddels RegistrationsbotsAntworten: 1Letzter Beitrag: 23.05.2012, 12:14 -
[Release] UHandy - Knuddels Handybot BETA
Von DMW007 im Forum Knuddels StayOnline BotsAntworten: 0Letzter Beitrag: 29.02.2012, 21:27 -
beta.vodafone.de Knuddels-Login Problem
Von Suchty im Forum Fragen & ProblemeAntworten: 2Letzter Beitrag: 15.01.2012, 04:41 -
[C#] Knuddels Online Nicks Crawler
Von Brainy im Forum SourcecodeAntworten: 0Letzter Beitrag: 25.07.2011, 19:40
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.