Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 18

Thema: CGI/C versus PHP

  1. #1
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485

    CGI/C versus PHP

    Hallo

    Ich bewerbe mich gerade bei einer Ausschreibung für einen Webshop. Mein Mitkonkurrent ist wesentlich billiger, bietet aber imho das schlechtere Service und den schlechteren Shop.

    Ich bewerbe mich mit dem Joomla-Webshop und einigen eigenen Modulen, während hingegen mein Mitbewerber anscheinend, was ich so gehört habe, eine Eigenproduktion aus CGI und C anbietet. Eine Implementation des Shops meines Mitbewerbers gibts hier: http://www.shop.4all.at/

    Ich suche nun Argumente gegen diesen Shop, da man irgendwann an den Punkt kommt, wo man nicht mehr nur sein eigenes Produkt hoch loben kann, sondern auch den Mitbewerber schlechter aussehen lassen muss.

    Ich möchte mich hier auf keine ethische Diskussion einlassen, auch wenn ich weiß, dass das Argument "Die anderen tuns ja auch" eigentlich nur die eigene Unfähigkeit verdeckt.

    Bis jetzt habe ich nur bemerkt, dass CSS irgendwie nicht richtig verwendet wird in diesem Shop, und dass das alles andere als valider HTML-Code ist. Ich möchte aber auch Argumente bringen, wieso diese Probleme nur schwer behebbar sein werden, dass seine Lösung unflexibel ist und auch die Performance nicht berauschend ist. Ich möchte auch Argumente gegen CGIC vorbringen, nur habe ich noch nicht das passende im Netz gefunden.

    Wenn also jemand kein Problem mit der Ethik dabei hat oder einfach Spaß daran findet, Seiten schlecht zu reden, dann ist er in diesem Thread herzlich willkommen. Wenn jemand seine Argumente mit Quellen unterlegen kann, bin ich ihm ebenfalls sehr dankbar.

    Danke schon mal im Voraus,

    mfg, Christian Sterzl
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  2. #2
    Registrierter Benutzer
    Registriert seit
    19.12.2006
    Beiträge
    13
    Was mir auf jedenfall auffällt ist dieser GRAUENHAFT html code. Weder valide, noch modern, und css kommt völlig unnütz zum Einsatz.

    Außerdem benutzt er sehr viele Java SCript, was die User-Kompatibilität deutlich senken müsste. Er benutzt an vielen Stellen viele Bilder anstatt Text, was dazu führt, dass die Ladezeiten steigen (grade für Leute mit Modem), und dass die Seite sehr unflexibel ist und wirkt. Will man zB als Sehbehinderter die Schrift vergrößern, wird das ganze Design gesprengt, da der Header komplett aus Bildern besteht, und sonstige Kleinigkeiten dummerweise auch.

    Die Module an den Seiten sind dann auch nicht gleichbreit was das optische angeht, dass sieht ein wenig unangenehm aus. Einige Maße wurde außerdem fest in px festgelegt. Das führt dazu, dass bei der Schriftgrößen-Erhöhung
    flexible Texte über die zB aus Bildern bestehende, mit Pixeln fixierte Navi geht.

    Ob das für den normal Anwender jedoch von Bedeutung ist, kannn man nie so genau sagen.


    zu CGI/C kann ich nicht so viel sagen, nur das diese eigentlich schneller Arbeiten als PHP, da der C-Code nicht geparst werden muss.

    Letzendlich ist bei der Performance auch der Code an sich entscheidend, wie die Aufgaben umgesetzt wurden, aber da werden wir wohl keinen Blick drauf kriegen

    Ich fände es ganz nett würdest du uns mal einen Link von deinem Projekt gebe, damit wir einen genauen Vergleich haben, bzw wir dir Tipps geben können^^

    Click

  3. #3
    Registrierter Benutzer
    Registriert seit
    22.08.2002
    Ort
    Nürnberg
    Beiträge
    638
    Ehrlich gesagt: CGI/C kann wesentlich besser sein als PHP, muss es aber nicht.

    Ich weiß, Du willst es sicherlich nicht hören. Aber das was Du als Fehler ankreidest (schlechtes HTML) sollte sich in den meisten Fällen schnell beheben lassen. Das interessante aber, lässt sich bei PHP nicht beheben: PHP ist ein Interpreter, während ein C-Programm compiliert ist. PHP hat ständig irgendwelche Sicherheitslöcher wo man sich bei der Installation sehr genau Gedanken machen muss wie man es konfiguriert. Bei einem C-Program, welches nur ein bestimme Aufgabe auszuführen hat, ist dies einfacher zu realisieren.
    Homepage: www.pingu.info

  4. #4
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    Vielen Dank erstmal für eure ersten Inputs. Dass C langsamer ist, dass dachte ich mir schon, dass sich dieses Argument nicht halten lassen wird.

    Zitat Zitat von Click Beitrag anzeigen
    Ich fände es ganz nett würdest du uns mal einen Link von deinem Projekt gebe, damit wir einen genauen Vergleich haben, bzw wir dir Tipps geben können^^
    Meinen Shop gibt es noch nicht, da ich erst anfangen werde wenn ich den Auftrag auch tatsächlich habe. Ich werde bis dahin (ist ja noch über eine Woche) den Joomla-Shop noch etwas anpassen für eine Präsentation und dabei vor allem die Vorzüge des CMS wie WYSIWYG oder mein CRM-Modul hervorheben, sowie die leichtere Anpassbarkeit unseres Shops und unsere Services, wo wir den Kunden von der Planung bis hin zum Launch begleiten.

    Den Shop wird es wohl erst nächste Woche in einer Alpha-Version zum Ansehen geben. Ich möchte nur nicht zu viel Geld in eine Ausschreibung investieren, da meine Erfahrung gezeigt hat, dass es sich oft gar nicht so sehr auszahlt.

    Aber um einen kleinen Eindruck zu gewinnen: Diese Seite und diese sind ebenfalls mit Joomla (zumeist Standardmodule) realisiert. An diesen möchte ich mich weitestgehend orientieren bei der Templateerstellung.

    Wenn es aber dann soweit ist, lasse ich mir immer gerne helfen. Schließlich ist das der Gedanke dieses Forums, helfen und geholfen werden

    mfg, Christian
    Geändert von Waxolunist (05-04-2007 um 13:09 Uhr)
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  5. #5
    Registrierter Benutzer Avatar von Gaert
    Registriert seit
    09.05.2002
    Ort
    Nußloch
    Beiträge
    1.317
    Zitat Zitat von Waxolunist Beitrag anzeigen
    Dass C langsamer ist, dass dachte ich mir schon, dass sich dieses Argument nicht halten lassen wird.
    Ich denke da hast du was falsch verstanden... das Gegenteil ist der Fall!
    Geändert von Gaert (05-04-2007 um 19:09 Uhr)


  6. #6
    Registrierter Benutzer Avatar von Waxolunist
    Registriert seit
    19.06.2006
    Ort
    Wien
    Beiträge
    485
    CGIC ist schneller als ein mod_php, obwohl bei CGI für jeden Request ein eigener Prozeß gestartet wird, ausgehend von der Annahme, dass beides gut programmiert ist. Weil dass ich mit jeder Sprache schnelle und langsame Programme schreiben kann ist mir schon klar.

    So habe ich das jetzt verstanden. Früher dachte ich anders. Oder war mein früheres Ich im Recht?

    Gibt es hier Benchmarks dazu? Wohl nicht, da zu unterschiedlich.
    Spezialitäten heute: PLSQL, TSQL, Java (alles mit Webanwendungen), Groovy, Grails, ASP.NET, Javascript, Python, Django
    Straight through, ohne Umwege ans Ziel

  7. #7
    Registrierter Benutzer
    Registriert seit
    15.10.2005
    Ort
    Franken
    Beiträge
    362
    PHP 5 und CGI-C geben sich nicht besonders viel, wenn man ein ausreichend Aufgebohrtes Backend hat.
    Wenn der andere Anbieter das nicht hat: Er ist unflexibel.
    Das mit dem parsen stimmt auch nur bedingt, gibt ja eAcc oder ZendOptimizer.

    C kann seine Vorteile nur in kombi mit ASP.net richtig nutzen.
    Dank der Rekursion kann ich IF-Schleifen bauen.

    In neuem Glanz: www.turbohummel.de

  8. #8
    Registrierter Benutzer
    Registriert seit
    18.11.2004
    Beiträge
    23
    Hallo Leute,

    bringt doch mal ein paar Zahlen bevor ihr euch hier einredet, dass PHP an die Geschwindigkeit von C rankommen könnte. Ich sage: auch mit Zend und den ganzen Schrott wird PHP niemals die Geschwindigkeit von einem guten C Programm erreichen.

    Bei Interesse poste ich euch Beispielkode der mit PHP 12 Stunden läuft und mit C 10 Sekunden.

    LÜGE: "C kann seine Vorteile nur in kombi mit ASP.net richtig nutzen."

    Frohe Ostern

  9. #9
    Registrierter Benutzer
    Registriert seit
    19.12.2006
    Beiträge
    13
    Zitat Zitat von rgubatz Beitrag anzeigen
    Bei Interesse poste ich euch Beispielkode der mit PHP 12 Stunden läuft und mit C 10 Sekunden.
    Das würde ich gerne mal sehen (ich Zweifel nicht dran, ist nur aus Interesse).

    Gleichfalls frohe Ostern

  10. #10
    Registrierter Benutzer Avatar von BlueJay
    Registriert seit
    27.08.2004
    Beiträge
    825
    Zitat Zitat von Waxolunist Beitrag anzeigen
    Hallo

    Ich bewerbe mich mit dem Joomla-Webshop ...
    Eine Implementation des Shops meines Mitbewerbers gibts hier: http://www.shop.4all.at/
    Im Klartext: Frontpatsch gegen Joomla, Tables und MS-Code-Suppe gegen DIV-Suppe, HTML2 bis maximal 3 gegen HTML4

    Das Einzige, was mir da einfällt: Joomla ist moderner, Overhead haben beide reichlich.

    so long,
    BlueJay
    Eigentlich ganz einfach, wenn man's weiss!

  11. #11
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Zitat Zitat von rgubatz Beitrag anzeigen
    Hallo Leute,

    bringt doch mal ein paar Zahlen bevor ihr euch hier einredet, dass PHP an die Geschwindigkeit von C rankommen könnte. Ich sage: auch mit Zend und den ganzen Schrott wird PHP niemals die Geschwindigkeit von einem guten C Programm erreichen.

    Bei Interesse poste ich euch Beispielkode der mit PHP 12 Stunden läuft und mit C 10 Sekunden.

    LÜGE: "C kann seine Vorteile nur in kombi mit ASP.net richtig nutzen."

    Frohe Ostern
    Das CGI/C Schneller ist als PHP ist für mich keinerlei Diskussion.
    Selbst im Entwickler FAQ für die Zend Engine und den Extensions wird diese Aussage ganz klar dargelegt. Man Empfiehlt sogar das man sich für manche Dinge besser eine Extension Baut als das ganze mit PHP-Quelltext zu Realisieren Ich habe mir selbst aus Interesse mal ein Paar Extensions geschrieben und der Unsterschied ist Optisch Spürbar zu gunsten C
    Nicht umsonst ist 80% von Google in C geschrieben
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  12. #12
    Registrierter Benutzer
    Registriert seit
    18.11.2004
    Beiträge
    23
    C:
    Code:
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <libxml/xmlmemory.h>
    #include <libxml/parser.h>
    
    void
    parseStory (xmlDocPtr doc, xmlNodePtr cur) {
    
    	xmlChar *key;
    	cur = cur->xmlChildrenNode;
    	while (cur != NULL) {
    	    if ((!xmlStrcmp(cur->name, (const xmlChar *)"DE_DE"))) {
    		    key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1);
               puts("\t<word>");
               fputs("\t\t<DE_DE>",stdout);
     	   	   fputs(key,stdout);
               puts("</DE_DE>");
               puts("\t</word>");
    		    xmlFree(key);
     	    }
    	cur = cur->next;
    	}
        return;
    }
    
    static void
    parseDoc(char *docname) {
    
    	xmlDocPtr doc;
    	xmlNodePtr cur;
    
    	doc = xmlParseFile(docname);
    	
    	if (doc == NULL ) {
    		fprintf(stderr,"Document not parsed successfully. \n");
    		return;
    	}
    	
    	cur = xmlDocGetRootElement(doc);
    	
    	if (cur == NULL) {
    		fprintf(stderr,"empty document\n");
    		xmlFreeDoc(doc);
    		return;
    	}
    	
    	if (xmlStrcmp(cur->name, (const xmlChar *) "picturemaxx_dictionary")) {
    		fprintf(stderr,"document of the wrong type, root node != picturemaxx_dictionary");
    		xmlFreeDoc(doc);
    		return;
    	}
    	
    	cur = cur->xmlChildrenNode;
    	while (cur != NULL) {
    		if ((!xmlStrcmp(cur->name, (const xmlChar *)"word"))){
    			parseStory (doc, cur);
    		}
    		 
    	cur = cur->next;
    	}
    	
    	xmlFreeDoc(doc);
    	return;
    }
    
    int
    main(int argc, char **argv) {
    
    	char *docname;
    		
    	if (argc <= 1) {
    		printf("Usage: %s docname\n", argv[0]);
    		return(0);
    	}
    
     puts("<?xml version=\"1.0\"?>\n<picturemaxx_dictionary dictonary=\"dictionary_de_de_en_en\">\n");
    
    	docname = argv[1];
    	parseDoc (docname);
    
     puts("</picturemaxx_dictionary>\n");
    
    	return (1);
    }
    Nicht aufregen, das war nur ein mal-kucken-wie-schnell-C-ist-HACK.

    Und hier PHP:
    PHP-Code:
    <?php

    if (file_exists('dictionary_de_de_en_en.xml')) {
        
    $xml simplexml_load_file('dictionary_de_de_en_en.xml');

         
    $fd fopen("deutsch.txt","w");
         if(
    $fd) {
            for(
    $i=0;$xml->word[$i]->DE_DE;$i++) {
                
    fputs($fd,$xml->word[$i]->DE_DE "\r\n");
            }
            
    fflush($fd);
        }
    } else {
        exit(
    'Konnte Datei nicht laden.');
    }
    ?>
    Bei der ganzen Geschichte ging es darum, aus einem deutsch-englisch-Wörterbuch, welches 14MB gross war, alle deutschen Wörter zu extrahieren. Bei dem C-Programm sogar noch in XML.

    Ich glaube das einzigste Argument, welches für PHP spricht, ist das es überall und billig verfügbar ist.

    Frohe Ostern

  13. #13
    Registrierter Benutzer
    Registriert seit
    15.10.2005
    Ort
    Franken
    Beiträge
    362
    Wie ist PHP konfiguriert? Stehen dafür mind. 14 MB speicher zur Verfügung?
    C kann über den 14 MB verfügen, PHP normal auf 8 begrenzt.

    Setz die Grenze, hoch, guck was passiert.

    Oder setz mal auf den XML-Parser von Pear statt auf simple_xml.
    Dank der Rekursion kann ich IF-Schleifen bauen.

    In neuem Glanz: www.turbohummel.de

  14. #14
    Registrierter Benutzer
    Registriert seit
    18.11.2004
    Beiträge
    23
    Die Programme werden nicht per CGI aufgerufen sondern von der Kommandozeile und da gibts keine Begrenzungen.

    Kann sein dass ein anderer Parser ein bisschen schneller ist, ich wollte ja nur mal richtigstellen, dass man mit PHP eben niemals an die Geschwindigkeit von C rankommen kann, egal wie.

  15. #15
    Registrierter Benutzer
    Registriert seit
    15.10.2005
    Ort
    Franken
    Beiträge
    362
    Nicht ganz, aber es ist bei einer normalen Last kein relevanter Unterschied.
    Die Leistung von Shop-Systemen ist immer durch die Geschwindigkeit der Datenbank limitiert, hier liegt eindeutig eher das Nadelöhr.

    PS. auch die Kommandozeile hat ein Limit. Meist ist das aber in einer anderen php.ini festgelegt.
    Außerdem: Hier greifen EAcc und ähnliche überhaupt nicht.
    Geändert von Turbohummel (07-04-2007 um 19:40 Uhr)
    Dank der Rekursion kann ich IF-Schleifen bauen.

    In neuem Glanz: www.turbohummel.de

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •