Ankündigung

Einklappen
Keine Ankündigung bisher.

Lesen von Pipe

Einklappen

Neue Werbung 2019

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

  • Lesen von Pipe

    Hey,

    ich habe ein kleines Problem und komme nicht auf die Lösung.
    Ich lese von einer named pipe (fifo) Sachen aus, das geht auch wunderbar.

    Aber:
    Ich will ständig, wenn sich die fifo ändert die Sachen auslesen.
    Gibt es dafür eine Lösung?

    Vielen Dank

  • #2
    Einfach blockierend lesen, aber was hast du genau vor?
    [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

    Kommentar


    • #3
      Hey,

      Ich bekomme von der pipe aus Daten, die ich in der php-Klasse weiterverarbeite.
      Diese weiterverarbeitende Daten werden in Variablen gespeichert und sollen dann auf der Website, auf der ich mich gerade befinde, angezeigt werden.

      Idee:
      die Lese-Klasse lass ich immer von der Pipe lesen, wenn sich diese ändert (keine Ahnung wie das geht mit Threads?)
      dann die Daten eben verarbeiten und in Variablen der Lese-Klasse speichern.
      Diese Variablen dann an eine andere Klasse geben, die diese dann auf der WEbsite darstellt.

      Die Website soll sich dann ohne manuelle Akutalisierung selbst ändern, falls sich die Werte in der Pipe ändern.

      Wie kann man das am schlauesten realisieren?

      Kommentar


      • #4
        Long Polling? Am einfachsten aber wenn du per Ajax alle X Sekunden auf Neuerungen prüfst und ein eigener dauerhaft laufender Prozess die Daten empfängt und in eine DB schreibt.
        [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

        Kommentar


        • #5
          Das überfordert deine Kenntnisse wohl etwas. Mein Ansatz wäre so:

          - PHP-Skript als Daemon (oder evt. Perl), einfügen der Daten in Datenbank
          - NodeJS oder AJAX um Webseite zur Aktualisierung und auslesen der Differenz aus Datenbank
          [URL="https://github.com/chrisandchris"]GitHub.com - ChrisAndChris[/URL] - [URL="https://github.com/chrisandchris/symfony-rowmapper"]RowMapper und QueryBuilder für MySQL-Datenbanken[/URL]

          Kommentar


          • #6
            OK vielen, vielen Dank. An eine Datenbank hatte ich überhaupt nicht gedacht.


            Wie lese ich am schlauesten von der Pipe, wenn die sich (öfters) ändert?
            Habe gerade einige Anläufe gestartet allerdings hat das nicht so geklappt.

            Im Prinzip ist es ja eine "unendliche" Schleife:
            1) hat sich Pipe geändert
            2) falls 1) wahr: lese von der Pipe
            3) verarbeite die Daten,( schreiben in DB)
            4) wieder von vorne?

            Aber da hängt sich immer der Browser auf..

            Kommentar


            • #7
              //OT:
              http://arstechnica.com/civis/viewtopic.php?t=714224

              und wieso jetzt nochmal ne pipe?

              Kommentar


              • #8
                Was kann sich denn an einer Pipe "ändern"?
                [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

                Kommentar


                • #9
                  Habe keine Ahnung von sockets..

                  Kommentar


                  • #10
                    Zitat von tkausl Beitrag anzeigen
                    Was kann sich denn an einer Pipe "ändern"?
                    Der Inhalt?

                    Kommentar


                    • #11
                      Theoretisch hat eine Pipe keinen Inhalt, Praktisch hat diese natürlich einen Buffer. Aber merklich "ändern" tut sie sich nicht, außer dass du halt wieder Daten bekommst.
                      Wie ich in #2 schon schrieb, schreib dir einfach ein kleines Script welches dauerhaft blockierend ließt und alles in die Datenbank schreibt.
                      [QUOTE=nikosch]Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.[/QUOTE]

                      Kommentar


                      • #12
                        Zitat von hftler1993 Beitrag anzeigen
                        Habe keine Ahnung von sockets..
                        Bei solchem Enthusiasmus bin ich raus
                        [URL="https://github.com/chrisandchris"]GitHub.com - ChrisAndChris[/URL] - [URL="https://github.com/chrisandchris/symfony-rowmapper"]RowMapper und QueryBuilder für MySQL-Datenbanken[/URL]

                        Kommentar

                        Lädt...
                        X