You are not logged in.

  • Login
Bitte besucht unser neues Forum unter https://forum.nitrado.net | Please visit our new Forum at https://forum.nitrado.net

Dear visitor, welcome to Nitrado.net Prepaid Gameserver Community-Support - Archiv. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

XemsDoom

User / Kunde

  • "XemsDoom" is male
  • "XemsDoom" started this thread

Posts: 758

Location: Zurich

Occupation: Sidekick

  • Send private message

1

Friday, August 10th 2012, 12:00pm

[Application] MexServer | Fast & Secure Database-Server

MexServer - Secure/Fast Database-Server
MexServer ist ein schneller und sicherer Datenbank-Server, um einfach Daten zu speichern. Ein MexDBNet Client verbindet sich via SSL mit dem MexServer und kann dann
Daten schreiben oder lesen. MexServer hat ein eigenes Authentifizierungs-System. Der Server ist multithreaded und die Menga an Queries/Updates Threads kann in der Configuration eingestellt werden. Ein MexDBNet Client muss sich am Server mit einem Username und Password authentifizieren um überhaupt was zu tun. Keine SQL Kenntnisse müssen vorhanden sein!


Performance:
Bei den Tests die ich gemacht habe, konnte ich von Zurich nach Deutschland 10000 Einträge mit 20 Kolonnen in 11 Sekunden schreiben, via SSL-Connection.

Concept:



Features:
  • SSL Connection
  • Authentication-System
  • No need to know SQL
  • Fast And Secure
  • Multithreaded Server(Thread-Pooled)
Configuration:
  • Define Username and Password
  • Define On Which Port MexServer Runs On
  • Define The Max Amount Of Query/Update Threads
MQL(Mex Query Language):

  • Spoiler Spoiler

    • Start session: s:username: password
    • Create sub-MexDB: cdb:dbname:id
    • Remove sub-MexDB: rdb:dbname:id
    • Getting keyvalue: q:dbname:index:key:id
    • Getting list: ql:dbname:index:key:id
    • Getting keyset: qks:dbname:index:id
    • Getting keys: qk:dbname:index:id
    • Getting keyvalues: qkv:dbname:index:id
    • Getting indices: qi:dbname:id
    • Adding/Update key/keyvalue: av:dbname:index:key:value:id
    • Adding list: al:dbname:index:key:list:id
    • Adding entry: ae:dbname:entry:id
    • Adding entries: aes:dbname:entries:id
    • Removing keyvalues: rk:dbname:index:key:id
    • Removing entries: re:dbname:index:id
    • Has database: hdb:dbname:id
    • Has index: hi:dbname:index:id
    • Has key: hk:dbname:index:key:id
    • Destroy session: d:s:id
Downloads: Version 1.0 |
HasteBin without limit: Xems' Hastebin

This post has been edited 9 times, last edit by "XemsDoom" (Aug 10th 2012, 10:03pm)


Nolig

User / Kunde

  • "Nolig" is male
  • "Nolig" has been banned

Posts: 1,630

Thanks: 8

  • Send private message

2

Friday, August 10th 2012, 4:19pm

Props raus! MexDB konnte mich nie überzeugen. Aber hiermit könnte man quasi auf MySQL verzichten. (Fast...)..
Genial!
Warum stammeln in den Foren so viele Leute wirres Zeug wie „na dat doch volkom klar“? Weil es offenbar "cool" ist, sich als total bescheuert zu outen und die PISA-Studie zu untermauern!
Etwas kann Sinn ergeben oder Sinn stiftenSinn machen ist jedoch nicht sinnvoll!

XemsDoom

User / Kunde

  • "XemsDoom" is male
  • "XemsDoom" started this thread

Posts: 758

Location: Zurich

Occupation: Sidekick

  • Send private message

3

Friday, August 10th 2012, 4:49pm

Props raus! MexDB konnte mich nie überzeugen. Aber hiermit könnte man quasi auf MySQL verzichten. (Fast...)..
Genial!
Danke Noah. :)
HasteBin without limit: Xems' Hastebin

Nolig

User / Kunde

  • "Nolig" is male
  • "Nolig" has been banned

Posts: 1,630

Thanks: 8

  • Send private message

4

Sunday, August 12th 2012, 3:02pm

So erstes Projekt fertig...

Ein Chat-Programm... Die Übertragungen sind überwältigend : O Die Ping zwischen Client -> Server -> Client ist kleiner als die von Skype... (Kommt natürlich auf den MexDBServer an...)! Die API ist super. Wow! Wirklich... Ich habe Dir mal 5€ Nitrado-Guthaben geschickt.
@XemsDoom.
MfG, Nolig.
Warum stammeln in den Foren so viele Leute wirres Zeug wie „na dat doch volkom klar“? Weil es offenbar "cool" ist, sich als total bescheuert zu outen und die PISA-Studie zu untermauern!
Etwas kann Sinn ergeben oder Sinn stiftenSinn machen ist jedoch nicht sinnvoll!

XemsDoom

User / Kunde

  • "XemsDoom" is male
  • "XemsDoom" started this thread

Posts: 758

Location: Zurich

Occupation: Sidekick

  • Send private message

5

Sunday, August 12th 2012, 3:12pm

So erstes Projekt fertig...

Ein Chat-Programm... Die Übertragungen sind überwältigend : O Die Ping zwischen Client -> Server -> Client ist kleiner als die von Skype... (Kommt natürlich auf den MexDBServer an...)! Die API ist super. Wow! Wirklich... Ich habe Dir mal 5€ Nitrado-Guthaben geschickt.
@XemsDoom.
MfG, Nolig.
Danke, zeigst du dann dein Chat Programm auch mal? Würde mir es gerne anschauen^^


Die letzten Builds/Libraries können nun auf meinem Jenkins gedownloaded werden: http://ci.xemsdoom.com/view/MexProjects/
HasteBin without limit: Xems' Hastebin

Nolig

User / Kunde

  • "Nolig" is male
  • "Nolig" has been banned

Posts: 1,630

Thanks: 8

  • Send private message

6

Sunday, August 12th 2012, 3:27pm

Ja, ich veröffentliche es heute/morgen in Form eines Bukkit-Plugins.
Ich sag' mal so.. Es ist nicht so elegant.. Ich wollte es einfach nur testen..

Ich habe im Client einen Thread, der fragt den Server auf einen Eintrag (Database) ab.. Ist diese vorhanden, so wird der Eintrag ausgelesen (String) und im Chat gebroadcastet... Sobald er gebroadcastet wurde, wird der Eintrag vom Clienten gelöscht... Passiert etwas im Chat von eienm Clienten (Bukkit-Server mit Plugin) so erstellt das Plugin (der Client) einen Eintrag und der andere Client liest ihn dann wieder aus und löscht ihn.

Ist halt nicht super über den Umweg mit dem Server... Und den Server dauerhaft auf einen neuen Eintrag abzufragen ist auch nicht das Beste. Ich wollte eig. nur das Ding testen. Wie ich damit auskomme...

EDIT:
Aber trotz des Umweges mit dem Server, ist die Übertragung schneller als Skype. (Chat String mit einem char...).. Das ist beachtlich..
Der Thread sleeped immer 0.01 Milisekunden. Hier liegt das "Problem", quasi Pingen wir den Server dauerhaft an. Es ging mir in dem Test nur darum, wie schnell Einträge ein/- und ausgelesen werden... Wenn ich das veröffentliche setze ich den Sleep selbstverständlich hoch...
Warum stammeln in den Foren so viele Leute wirres Zeug wie „na dat doch volkom klar“? Weil es offenbar "cool" ist, sich als total bescheuert zu outen und die PISA-Studie zu untermauern!
Etwas kann Sinn ergeben oder Sinn stiftenSinn machen ist jedoch nicht sinnvoll!

XemsDoom

User / Kunde

  • "XemsDoom" is male
  • "XemsDoom" started this thread

Posts: 758

Location: Zurich

Occupation: Sidekick

  • Send private message

7

Sunday, August 12th 2012, 3:31pm

Si si, testing is nice.
HasteBin without limit: Xems' Hastebin

XemsDoom

User / Kunde

  • "XemsDoom" is male
  • "XemsDoom" started this thread

Posts: 758

Location: Zurich

Occupation: Sidekick

  • Send private message

8

Thursday, August 16th 2012, 11:02am

Update:
  • Faster server response
  • SSL connection is now optional and can be turned on in the config.
  • Fixed remove-db commands not working probarly.
  • Changed delimiters for client-server communication.
HasteBin without limit: Xems' Hastebin

Bitte besucht unser neues Forum unter https://forum.nitrado.net| Please visit our new Forum at https://forum.nitrado.net

Similar threads