2009-07-14 1 views
0

Ist es möglich, eine P2P mit nur PHP zu implementieren? Ohne Flash oder Java und natürlich ohne eine Art Agent/Client auf dem Computer zu installieren.Ist es möglich, eine Peer-to-Peer-Kommunikation mit nichts als PHP

so, obwohl es nicht „wahr“ p2p sein könnte, aber es wäre Server verwenden Verbindung irgendeiner Art zu schaffen, aber der Rest der Kommunikation getan p2p mit müssen

i für wenig Fehlkommunikation entschuldigen, durch " php "ich meinte nicht ein php-binary, sondern ein php-script, das auf dem web-server fern von beiden peers gehostet wird, so dass jeder peer nur einen browser hat.

+0

Vielleicht möchten Sie ein wenig mehr erklären, was Sie mit dieser Frage meinen. Wie willst du PHP benutzen? Mit einem Webserver oder Stand-Alone? Was sollte die Benutzerschnittstelle können? – txwikinger

+0

Ja, eine Klarstellung wäre gut. Ich befürchte, dass ich für die Beantwortung der Frage, die OP gestellt hat, abgelehnt wurde, anstatt der Frage, die sie * bedeuteten * (was "Kann ich einen browserbasierten P2P-Dienst mit nur PHP implementieren", zu dem die Antwort natürlich "nein" ist) . – chaos

+0

Warum nicht einfach File Sharing von Opera Unite verwenden? http://unite.opera.com/service/132/ –

Antwort

2

Nr

Sie könnten — ein P2P-Client/Server in PHP schreiben, aber es würde auf den beteiligten Computern installiert werden müssen.

Sie können PHP nicht auf einem Webserver ausführen lassen, da zwei andere Computer miteinander kommunizieren, ohne dass eine P2P-Software installiert ist.

Sie können nicht einmal JavaScript verwenden, um — die gleiche Ursprungsrichtlinie würde es verhindern helfen.

JavaScript mit einem Browser könnte einen PHP-basierten Server als Vermittler verwenden, so dass zwei Clients kommunizieren können —, aber Sie werden P2P nicht erreichen.

+1

Warum nicht WebRTC testen? peer.js – CMCDragonkai

0

Bedeutet keine Peer-to-Peer-Kommunikation, dass die Kommunikation direkt von einem Client zum anderen erfolgt, ohne dass Server in der Mitte sind? Da PHP eine serverbasierte Software ist, glaube ich nicht, dass irgendein Programm, das Sie darauf schreiben, als echtes P2P betrachtet werden kann.

Wenn Sie Client-zu-Client-Kommunikation mit einem PHP-Server als der mittlere Mann aktivieren möchten, ist das jedoch definitiv möglich.

+0

Downvoted für falsche Informationen. PHP ist nicht serverbasiert. –

+1

Um PHP-Skripte lokal auszuführen, müssen Sie einen PHP-Interpreter installieren, und wenn das OP nicht Flash oder Java installieren möchte, bezweifle ich, dass PHP lokal installiert werden soll. – chrisbunney

1

ohne Computer

Jeder Computer haben müßte installiert, um die PHP-Binärdateien auf einem irgendeine Art von Agenten/Client-Installation.

EDIT

ich in einem anderen Beitrag sehen Sie Browser-basierte erwähnt. Sicherheitseinschränkungen in JavaScript würden diesen Interaktionstyp verbieten.

0

Abhängig davon, ob der Browser Daten an diese PHP-Anwendung senden soll.

Ich habe IRC-Bots komplett in PHP gemacht, die ihren Status und ihre Ausgabe in meinem Webbrowser ähnlich wie mIRC zeigten. Ich habe das Timeout Limit auf unendlich gesetzt und bin über Sockets mit dem IRC Server verbunden. Sie könnten sich jedoch mit etwas verbinden. Sie können es sogar auf eingehende Verbindungen warten lassen und mit ihnen umgehen.

Was Sie nicht tun können, ist ein Browser benötigt eine Zwei-Wege-Verbindung zu halten, ohne Anfragen abbrechen (noch nicht sowieso ...)

0

Nein, nicht wirklich. PHP-Skripte sollen nur für sehr kurze Zeit ausgeführt werden. In der Regel beträgt die standardmäßige maximale Laufzeit zwei Minuten, was normalerweise für die P2P-Kommunikation nicht ausreicht. Danach wird das Skript abgebrochen, obwohl der Serveradministrator dies deaktivieren kann.Aber auch dann muss die gesamte Downloadzeit der http-Verbindung zwischen dem Server und dem Client eingehalten werden. Der Browser des Clients zeigt in dieser Zeit den Seitenlade-Indikator an. Wenn die Verbindung die meisten Webserver beschädigt, wird das PHP-Skript beendet, so dass der P2P-Download abgebrochen wird.

So kann es möglich sein, das P2P-Protokoll zu implementieren, aber in einem Client/Server-Szenario haben Sie Probleme mit dem Ausführungsmodell von PHP-Skripten.

0

Ja, aber es ist nicht das, was allgemein p2p genannt wird, da es einen Server dazwischen gibt. Ich habe jedoch das Gefühl, dass das, was Sie tun möchten, ist Ihre Kollegen miteinander kommunizieren zu lassen, anstatt eine direkte Verbindung zwischen ihnen ohne Zwischenhändler Server haben (was ist, was normalerweise mit P2P gemeint ist)

Abhängig Bei den Skalierbarkeitsanforderungen kann das Implementieren dieser Art von Kommunikation trivial (einfaches Abfrageskript auf Clients) oder anspruchsvoll (asynchroner Kometserver) sein.

1

Es ist nicht theoretisch, da die serverseitige Anwendung (PHP) nicht über den Systemzugriff des Peers verfügt, der zum Definieren einer Socket-Verbindung zum Definieren von Ports, IP-Adressen usw. benötigt wird.

ADDITION:

Aber wenn Sie in jedem Peer Web Server mit PHP gehen sind, das kann dir geben, was Sie suchen.

Verwandte Themen