SOAP & Performance?

mavinatic

Bekanntes Mitglied
Hallo Community,

ich bin auf eine Frage gestoßen welche mir das Internet nicht so wirklich beantworten konnte:

Ist SOAP sehr inperformant, sodass man kein Gameserver damit verwenden könnte? Weil es baut ja letztlich auf HTTP und TCP auf?!

Gruß
 
Aus eigener Erfahrung kann ich sagen, das ich mit Soap Ergebnisse hatte, die nur sehr knapp hinter EJB und direkt RMI lagen. EJB, RMI-Klassen und Webservice hatten dabei natürlich die gleiche interne Logik und Parameter usw.
 
Wenn es sich nicht um Browsergames oder Rundenstrategie handelt, würde ich NICHT höher levelige Protokolle nehmen.
TCP und UDP ist ne fallsache, aber man kommt nicht darum rum sich ein eigenes Nachrichtensystem zu schreiben. (Bzw ein fertiges zu benutzen alternativ). Ansonsten kann man durch den SOAP overhead schon alleine die Leitung dichtmachen.
 
Warum sollte der "Overhead" so gigantisch groß sein? Ich möchte einfach paar "Methoden" über einen Webservice anbieten? Habe ich noch alternativen?
 
Warum soap overhead hat naja fangen wir einfach an

ich will nen positionsupdate schicken
2 byte nachrichtentyp
12 byte 3 flaots -> 1 vector
-> 14 bytes total

SOAP ist stringbasiert wenn ich mich nicht täusche, bzw übermittelt strings da http und so.
-> 2 byte pro buchstaben
wenn ich jetzt den vector
1000,1000,1000 schicke wären das minimal
3*4*2 bytes, daz den nachrichten typ auch mindestens 2 byte
-> ideralerweise wenn es keine header GÄBE sind wir schon bei 2+24 byte, also fast 50% overhead
 
Mein Empfehlung wäre einfach ein Protokoll mit Protobuf oder Thrift zu generieren. Die codierten Nachrichten sind sehr kompakt und die Verarbeitung ist auch schön schnell.
 
Protobuf? Thrift? Ich kenne diese Begriffe nicht.

RESTful Webservice klingt sehr gut!

Protobuf stammt von Google und wird dort laut der Projekt-Seite für nahezu alle internen RPC-Protokolle und Dateiformate verwendet. Thrift ist ursprünglich von Facebook und wird dort für viele interne Protokolle verwendet. 2008 wurde Thrift dann als Incubator Projekt von der Apache Foundation aufgenommen.

Hier noch die Links dazu:
Protobuf
Thrift
 
Nur damit das nicht falsch verstanden wird: Simon ist in 2008 nicht stehen geblieben. Die entwicklung ist nicht aktiv. Die Forenbeiträge aus 2008 spiegeln schon lange nicht mehr die aktuelle Performance wieder.

Ein paar Messungen zum Thema "Simon Performance" (ganz speziell Test-Case #4) gibts hier: SIMON - Start - root1.de - Software Engineering

Gruß
Alex
 
Zuletzt bearbeitet von einem Moderator:

Zurück
Oben