C und PHP kombinieren

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • C und PHP kombinieren

    HI

    ich bin gerade an der Planung für die technische Umsetzung eins Browsergames (etwas, andem zur zeit wohl so ziemlich jeder coded der sonst nix zu tunhat)

    für mich isses einfach nur ne technische spielerei um ein wenig in übung zu bleiben

    so, nun zum eigentlichen Thema


    ich möchte im prinzip ein Backend in reinem C und MySQL haben und das Frontend für den User und die Admins in PHP

    ich stelle mir vor, dass ein cronjob alle minute (oder 2,3...) aufgerufen wurd und die aufträge abarbeitet.

    so stell ich mir das vor:

    19:00 Uhr bis 19:01 Uhr: User gibt die aufträge, die aufträge werden ins system gestellt

    19:01 wird das spielfeld auf readonly gesetzt, und die aufträge abgearbeitet, und dabei möglicherweise sehr viele datenbestände aktualisiert, am ende erzeugt der cronjob aus einem template und dem aktuellen datenbestand eine statische htm seite, die das frontend mittels PHP einliest

    so wäre quasi die hohe Performance von C für die "dreckige" Arbeit zuständig und PHP wirklich nur für die useraktionen.

    der user hat halt in der minute nur diese ansicht und kann seine aufträge abgeben, und beim nächsten tick wird dann die ansicht aktualisiert (bauftragstatus, ressourcen weg usw)

    sollte der user in der minute 2 mal aufträge erteilen, so werden neue aufträge des gleichen typs überschrieben, oder falls genug ressourcen da, hinzuaddiert

    php muss also nur darstellen, welche aufträge erteilt werden könnten und diese dann ins system stellen

    was haltet ihr davon ?


    ich hab mal mit c 100.001 inserts gemacht in eine tabelle mit 2 spalten (id, mediumint und wert, varchar 255), das dauerte 5,56 sekunden und mit php dauerte das ganze 46 sekunden, was mir aber völlig schleierhaft ist...

    es erfolget keine ausgabe, nur die zeit wurde am ende ausgegeben...

    cya max


    An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

  • #2
    Ist ein cooler, performanter Ansatz!
    Aber was ist jetzt die Frage?

    Kommentar


    • #3
      habt ihr erfahrungen damit ? seht ihr Probleme ? alternativen ?


      hab mal links bekommen zu PHP-Optimizern, die lassen den compilierten code im speicher, anstatt das skript jedes mal neu zu übersetzen, nur als beispiel...


      An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

      Kommentar


      • #4
        Warum machst du es denn nicht komplett in CGI?
        Die Musikreview Seite

        hi, i'm a signature virus. copy me into your signature to help me spread.

        Kommentar


        • #5
          CGI benutze ich überhaupt nicht, das wäre ja kontraproduktiv

          das c programm wird ja direkt als cronjob aufgerufen und nicht per PHP


          ich denke ich werde 60% in PHP machen und alles andere wie Ressourcenproduktion, Kämpfe usw in reinem C...


          An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

          Kommentar


          • #6
            Hmm...ist auf jeden Fall interessant.

            Prinzipiell wäre erstmal interessant, welches Spielkonzept dein Spiel hat, also rundenbasierend oder echtzeit. Bei rundenbasierten Spielen ist sicher eine effiziente Art, die nach einer abgelaufenden Runde nötigen Berechnungen/Änderungen/Updates, in einer möglichst perfomanten Art durchzuführen von Vorteil. Da ist C/C++ oder Java sicherlich gegenüber php in Vorteil.
            Bei einem Echtzeitspiel hätte deine Lösung den großen Nachteil, dass aktuelle Daten immer ersten nach einem Update zur Verfügung stehen. Es wäre ja durchaus auch möglich das Spiel komplett in C++ zu programmieren und die Ausgabe darauf aufzubauen. Wie du dein Frontend erzeugst ist im Prinzip ja offen. Hängt halt stark davon ab, was du für ein Spiel entwickeln möchtest.

            Kommentar


            • #7
              es sollte schon in echtzteit sein, aber das is leider sehr ressourcenfressend, daher bin ich am überlegen was man da machen kann

              die wichtigsten aktionen sind in echtzeit, und dass z.B. die ressourcen nur alle 60 sekunden neu berechent werden macht ja nichts, und die kämpfe können statt um 12 uhr 44 und 15 sekunden auch um punkt 12 uhr 45 anfangen ohne dass es dem spielspass nen abbruch tut


              An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

              Kommentar


              • #8
                Du könntest es ja so machen, dass das Spiel als Anwendung im Hintergrund läuft und alle nötigen Berechnungen durchführt, während php für die Darstellung verantwortlich ist. Das ist ja glaub eh das, was du vor hattest. Du könntest ja z.B. die Anwendung dann auch von außen triggern (also veranlassen, dass bestimmten Operationen durchgeführt werden).

                Kommentar


                • #9
                  ja, das wäre möglich

                  mus mal testen wieviel ressourcen so ein prozess benötigen würde, aber eine sehr gute idee...


                  An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

                  Kommentar

                  Lädt...
                  X