Wie kann mein programmiertes Tool mit einer anderen Instanz weltweit kommunizieren?

Das ganze ist ein Gedankenexperiment, es findet noch kein Programmierprojekt statt.

Möchte die genaue Idee nicht teilen, stellt euch einen geteilten Kalender, ein Tool fürs Büro oder einen Countdown vor.

Nehmen wir an das Tool wird lokal gestartet und soll nun mit 10 anderen Instanzen die auch jeweils lokal gestartet werden kommunizieren. Die Rechner befinden sich nicht im gleichem Netzwerk. Andere zusätzliche Instanzen sollen ebenfalls ihren eigenen fest zugewiesenen Kommunikationsraum haben und unabhängig funktionieren.

Jede Eingabe vom Benutzer soll mit den anderen bis zu 10 Instanzen in einem Raum synchronisiert werden.

Ich frage mich nun, wie genau realisiert man so etwas? Welches Protokoll, über welchen Weg? Wie geht man da heran?

Ich dachte daran einen IRC Server zu benutzen aber fairerweise muss ich sagen ich kenne mich (noch) nicht aus und das erscheint mir nicht die moderne Programmierart zu sein. Wie würde das ein Profi machen? Am Allerbesten wäre es, wenn man es so realisieren könnte, dass es sowohl als Anwendung laufen kann als auch im Browser.

Mit welchen Programmiersprachen und anderen Dingen ließe sich dieses Tool am besten umsetzten?

Ich hoffe ich konnte mich verständlich ausdrücken und wäre dankbar wenn mich Jemand in die richtige Richtung weisen könnte.

Computer, Internet, Software, Internetverbindung, Technik, programmieren, Programmiersprache, Technologie, Verbindung