Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Kommunikation zwischen einer PHP Instanz (Apache) und einem PHP CLI Server auf einem Computer

Frage Entwicklung PHP

Mitglied: Martinkoell

Martinkoell (Level 1) - Jetzt verbinden

30.01.2013, aktualisiert 22:06 Uhr, 2406 Aufrufe, 5 Kommentare

Ich habe einen Computer (Debian) mit zwei Diensten:
Dienst 1) Auf dem Computer läuft ein PHP CLI als Websocket-Chatserver.
Dienst 2) Auf dem Computer läuft ein Apache2+PHP5 der beim Seitenaufruf Daten generiert.

Problem:
Die generierten Daten von Dienst 2 sollen auf irgendeine Art zum Dienst 1 übertragen werden damit dieser sie an die Websocket Clients sendet. Mein erster Versuch, eine PHP-PHP Websocket-Verbindung aufzubauen ist gescheitert.

Gibt es sonstige Möglichkeiten?

Grüße,
Martin
Mitglied: Hitman4021
31.01.2013 um 05:37 Uhr
Hallo,

PHP als Socket-Chatserver? Ohne Threading?

Nagut wenn du noch sagst um was für Daten es geht und ob das ganze in Echteit erfolgen muss kann man dir bestimmt helfen.

Gruß
Bitte warten ..
Mitglied: SlainteMhath
31.01.2013 um 09:42 Uhr
Moin,

als erstes würde mir einfallen:

Austausch per (MY-)SQL DB
oder
Austausch per Filesystem

Apache/PHP5 schreibt, PHP-CLI liest und löscht.

lg,
Slainte
Bitte warten ..
Mitglied: Martinkoell
07.02.2013, aktualisiert um 20:55 Uhr
hi ihr beiden danke für die posts.

Austausch per SQL:
Der Websocket-Server in der CLI arbeitet bereits mit einer (MY)SQL-Tabelle, damit ich als Admin während des Betriebes von Ausserhalb die Clients auslesen kann ohne auf $'s zugreifen zu müssen.
Problem: Die SQL-Verbindung hat keinen Trigger, also "Event bei SQL Change" oder so.

Austausch per FS:
Derzeit habe ich es genau so gelöst. Eine Datei wird vom Apache2/PHP5 beschrieben und setzt gleichzeitig einen Eintrag in die DB.
Ist dann die Dateigröße > 1 checkt das der CLI-Server bei der Endless-While durch ein Fileopen und liest die "übergebenen" Werte aus der DB.
Der DB-Trigger ist somit eine Datei.

Ich hätt gern multidimensionale Arrays hin und hergeschoben

Die Funktionen getvar und putvar gehen bei mir auch nicht, obwohl php.ini variables_order ein "E" enthält..

Habt ihr ne bessere Idee als Trigger?
Doch eine Websocket-Verbindung zwischen den beiden PHP-Servern?

Das ganze läuft in Echtzeit, in der Minute werden etwa 500 Trigger ausgelöst

lg
Bitte warten ..
Mitglied: Martinkoell
08.02.2013, aktualisiert um 00:46 Uhr
okay. hab jetzt folgenden lösungsansatz:

zu beginn wird per globaler variable ein neue Socket-ressource erstelle:

$backendSocket = socket_create(AF_INET, SOCK_STREAM, 0);
socket_bind($backendSocket,'192.168.0.52',9000);
socket_listen($backendSocket,0);
socket_set_nonblock($backendSocket);


danach versuche ich in der mainloop (auf der auch auf websocket-verbindungen gewartet wird) dauernd auf verbindungsanfragen zu hören:

$bsbytes = @socket_recv($backendSocket, $buffer, 4096, 0);
echo $bsbytes;

dann kommt beim Server immer $bsbytes gleich "" und beim client kommt der Fehler: Connection refused (111)

Was mache ich falsch?
ich möchte eine if schreiben,
die eine mögliche verbindungsanfrage annimmt und den stream liest.

lg
Bitte warten ..
Mitglied: Martinkoell
08.02.2013 um 00:49 Uhr
okay mit

$backendSocket = socket_create(AF_INET, SOCK_STREAM, 0);
socket_bind($backendSocket,'192.168.0.52',9000);
// socket_set_blocking($backendSocket,0);
socket_set_nonblock($backendSocket);


loop:

$bsbytes = socket_listen($backendSocket,0);

if ($bsbytes)
{
socket_accept($backendSocket);
}


gings.
danke
Bitte warten ..
Ähnliche Inhalte
CMS
PHP - WordPress auf Apache schneller als auf IIS? (13)

Frage von Rene1976 zum Thema CMS ...

Datenbanken
gelöst SQL-Server: Wann Instanzen nutzen? (11)

Frage von User1000 zum Thema Datenbanken ...

Vmware
gelöst VMware Powershell CLI Scripts (15)

Frage von vinevg zum Thema Vmware ...

Windows Server
Monitoring von SQL Server 2012 Instanz (2)

Frage von banane31 zum Thema Windows Server ...

Neue Wissensbeiträge
Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(2)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (17)

Frage von liquidbase zum Thema Voice over IP ...

TK-Netze & Geräte
TK-Anlage VoIP - DECT Erweiterung (16)

Frage von Lynkon zum Thema TK-Netze & Geräte ...