Auktionshaus - mit was implementieren?
-
kingruedi schrieb:
Ich denke mal, dass EBay und co ihre Software in C oder C++ schreiben, da man dadurch extra Speed rausholen kann. Ebay hat deswegen ja auch die Endung .dll und nicht .php und co.
Aber meine persönliche Meinung ist eh, dass ein Webinterface für Auktionsdienste total kacke ist, da man in der entscheidenden Sekunde dann auf einen langsammen Browser Reload warten muss.
Also da ebay in C/C++ geschrieben ist wage ich jetzt mal stark zu bezweifeln... was ist ebay schon? Ne oberfläche für ne Datenbank. Ein prog, das rohdaten aus ner DB in einen HTML-Anzug wirft. Die müssten schon total bescheuert sein dafür C/C++ zu verwenden.
-
@CMatt
Dann wär ja auch jedes CGI bescheuert deiner Meinung nach, oder?? Warum?
-
Was eBay genommen hat, weiß ich auch nicht. Willst Du aber eine schnelle und saubere Lösung haben, kann ich Dir nur Java(J2EE!) empfehlen. Die Ausführungszeit ist zudem bei solchen Anwendungen und großen Lasten in Java deutlich schneller, als C/C++ CGI's.
Greets
-
AJ schrieb:
@CMatt
Dann wär ja auch jedes CGI bescheuert deiner Meinung nach, oder?? Warum?jo
:p
Nö, jetzt mal im ernst... ich finde C/C++ ist einfach nicht die richtige sprache für ein web-interface. Die wo die Arbeit stattfindet, also in der datenbank ect. finde ich C/C++ ok, aber nicht um HTML-Seiten zu erstellen. Ok, durch ne CGI-lib bekommst zwar ein paar schöne funktionen dafür, aber string-manipulation ist nun mal nicht grad ne stärke von C++.
Ich sehen dort keinen wirklichen anwedungsbreich für C++. Für ein interface das nur sql-strings an datenbanken sendet und dann das ergebnis in ne HTML-page schreibt ist doch PHP, ASP,... viel besser geeignet, da diese Sprachen ja dafür entwickelt wurden.
Also bitte sag mir warum du C++ als sparche für ein web-interface einsetzten würdest, ich sage dir warum ichs nicht würde:
- String-funktionen: in C/C++ leider nur das nötigste vorhanden. Im vergleich zum funktionsumfang von z.B. Perl ist C++ ne echte qual.
- Sicherheit: In ner managed sprache mit ner VM, .NET-Platform ect. dahinter ist es einfach um einiges schwieriger käse zu produzieren als in C++.
- Geschwindigkeit: Ok, das wär ein vorteil von C++, interesiert mich aber hier nicht, da hier nicht wirklich 'gearbeiet' wird, sondern einfach nur ein string zusammengestellt wird. Und wenn ihr euch darum sorgt das der interpreter zu viel CPU-Zeit frisst, nimm ein precompiled perl-script, oder Java wie oben erwähnt.
- Verbreitung: Welcher web-designer kann C++? Welcher PHP, perl oder ne andere 'web-sprache'.
- Kosten: Was kostet ein web-designer mit PHP, perl, ... kentissen pro stunde, was ein C++ entwickler?
-
CMatt schrieb:
Also bitte sag mir warum du C++ als sparche für ein web-interface einsetzten würdest
Das eBay eine isAPI Engine verwendet, macht durchaus Sinn. Wenn du z.B.
mal mobile.de nimmst, die haben im März 2004, 21.248.414 Visits und
704.689.626 Page Impressions gehabt. Das sind also allein schon ca. 500
Visits pro Minute. Jetzt kannst du dir ja ungefähr ausmalen, wieviel
Zugriffe mehr eBay pro Monat hat. Das bekommst du mit keiner cgi Schnittstelle
der Welt zum laufen. Das Problem von php, perl etc. ist halt, das bei jedem
Seitenaufruf eine neue Instanz auf dem Server erzeugt wird und du somit
jeden Server (Raid-Systeme) killen würdest. Wenn du zum Beispiel Amazon
anschaust die haben ihre Engine in Java geschrieben, was somit die einzige
Alternative zu c ist.
-
2oopuls schrieb:
Das Problem von php, perl etc. ist halt, das bei jedem
Seitenaufruf eine neue Instanz auf dem Server erzeugt wird und du somit
jeden Server (Raid-Systeme) killen würdest.Wie gut dass das nicht stimmt. Es gibt ja mod_php - damit PHP so schön schnell ist.
Mit fastCGI hätte man das Problem übrigens auch nicht.
btw: C++ Programme würden sich auch jedesmal neustarten...
-
Shade Of Mine schrieb:
2oopuls schrieb:
Das Problem von php, perl etc. ist halt, das bei jedem
Seitenaufruf eine neue Instanz auf dem Server erzeugt wird und du somit
jeden Server (Raid-Systeme) killen würdest.Wie gut dass das nicht stimmt. Es gibt ja mod_php - damit PHP so schön schnell ist.
Mit fastCGI hätte man das Problem übrigens auch nicht.
btw: C++ Programme würden sich auch jedesmal neustarten...
Das glaub ich aber nicht. Der Vorteil der isAPI.dll liegt ja eben darin, das
die dll einmalig in den Speicher geladen wird.Quelle: http://www.leu.bw.schule.de/beruf/projektg/online/news12/sicherheit.htm
+++ snip +++
Mit jeder einzelnen Abfrage aus dem Internet wird ein weiterer Prozess gestartet, der sich immer wieder aufs Neue anmelden und abmelden muss. Dass dieses Verfahren bei stark frequentierten Websites schnell zu Kapazitätsengpässen führen kann, ist offensichtlich. Abhilfe versprechen proprietäre Web-Server-APIs wie das ISAPI von Microsoft oder Netscapes NSAPI, die den Aufruf von CGI-Skripten überflüssig machen. Der Serverprozeß holt sich statt dessen zur Laufzeit die entsprechenden Anwendungsfunktionen aus einer DLL und führt sie innerhalb seines Prozess- und Adressraums aus.
+++ snip +++Quelle 2: http://www.hummel1.de/prog/isapi/isapikonzept.htm
+++ snip +++
Das ISAPI-Prinzip hat gegenüber anderer Verfahren, insbesondere gegenüber dem verwandten CGI (Common Gateway Interface, siehe CGI-Tutorial von Stefan Müller) etliche Vorteile. Einmal geladen, verbleibt die DLL im Speicherraum des Servers. Damit entsteht bei wiederholten Aufrufen ein Geschwindigkeitsvorteil gegenüber Varianten mit erneutem Laden. Als DLL wird das Programm auch nur einmal geladen, selbst wenn mehrere Clientanforderungen zeitgleich zu beantworten sind. Beim CGI-Verfahren hingegen startet für jede Anforderung eine neue Instanz des Programms. Damit wird bei ISAPI wertvoller Arbeitsspeicher auf der Servermaschine eingespart. Gegenüber den in der UNIX-Welt weit verbreiteten CGI-Scripts entstehen Vorteile dadurch, daß die DLLs echten Programmcode darstellen, der unmittelbar ablauffähig ist. Scripts hingegen müssen interpretiert werden. All das führt in der Praxis dazu, daß ISAPI-Lösungen ein überdurchschnittlich gutes Zeit- und Ressourcenverhalten zeigen.
+++ snip +++Ich kann dir noch viel mehr Quellen zeigen, die das gleiche schreiben.
-
@CMatt
Hat mich nur mal interesiert.
Ich mache Web-Sachen lieber mit PHP. Hab aber auch nur kleine Dinge ;). Mit C/C++ bzw. CGIs ist mir das zu umständlich.
-
AJ schrieb:
@CMatt
Hat mich nur mal interesiert.
Ich mache Web-Sachen lieber mit PHP. Hab aber auch nur kleine Dinge ;). Mit C/C++ bzw. CGIs ist mir das zu umständlich.und deshalb lässt du mich hier ne halbe Seite voll tippen!?!?!?!?!
*briefbombe_abschick*
:p :p
-
Naja hätte nicht gedacht, dass du so viel schreibst dazu :D.
Jedenfalls ist es sehr informativ, also ist es nicht vollkommen umsonst ;).
-
2oopuls: Gibt es für nicht MS-Server eine Alternative dazu?
-
Webentwickler schrieb:
2oopuls: Gibt es für nicht MS-Server eine Alternative dazu?
Ich denk dann mal nur Java(J2EE!) wie es Magoon schon gesagt hat.
Mehr weiß ich über die Java Engine aber auch nicht. Mit dem Thema
isAPI habe ich mich vor einiger Zeit auch nur mal beschäftigt,
weil ich wissen wollte wie eBay so läuft. Da es ganze Foren gibt,
wo es immer nur um die Frage geht, warum man kein eBay mit php
erstellen kann.Eine echte isAPI Alternative kenn ich auch nicht aber mir wäre es
auch lieb, wenn es da etwas für Linux gäbe. Windows Server sind
ja dann doch etwas zu teuer.