Thread Transport

S

Samoniec

Gast
Hallo habe mal eine Frage zu einer Idee:

Ausgangssituation:
Zwei Server, auf diese werden Aufgaben verteilt. Jede Aufgabe befindet sich in einem eigenen Thread.

Frage / Idee:
Ist es möglich einen kompletten Thread sozusagen zu packen über TCP oder UDP an den zweiten server zus chicken?
Und kann dieser ihn einfach entpacken und wieder starten, bzw weiterlaufen lassen?

Das Ganze soll eine dynamische Lastverteilung ermöglichen.

Welche Möglichleiten gibt es für solch einen Ansatz?
 
T

tuxedo

Gast
AFAIK lassen sich Threads nicht in andere JVM-Instanzen "teleportieren". Du könntest aber den Task (das Runnable-Objekt), den der Thread bearbeitet etwas abstrahieren und es so ermöglichen, dass man den Task an beliebiger Stelle anhalten und speichern kann, so dass ein anderer Thread, sei es in der gleichen JVM oder in einer anderen auf einem anderen Rechner, den Task weiter bearbeiten kann.

Ergo: Du musst dir das selbst basteln. Der Thread an sich kann so nicht angehalten, transportiert und wieder gestartet werden.


- Alex
 
S

Samoniec

Gast
Hm ok.

Muss ich mir sozusagen eine Containerklasse bauen die alles Beherbergt was ich zum Arbeiten benötige und das immer einem Thread zum arbeiten geben. Der arbeitet gleich auf diesem Container oder extrahiert eben alles aus diesem Container.
 

FArt

Top Contributor
Hallo habe mal eine Frage zu einer Idee:

Ausgangssituation:
Zwei Server, auf diese werden Aufgaben verteilt. Jede Aufgabe befindet sich in einem eigenen Thread.

Frage / Idee:
Ist es möglich einen kompletten Thread sozusagen zu packen über TCP oder UDP an den zweiten server zus chicken?
Und kann dieser ihn einfach entpacken und wieder starten, bzw weiterlaufen lassen?

Das Ganze soll eine dynamische Lastverteilung ermöglichen.

Welche Möglichleiten gibt es für solch einen Ansatz?

Hört sich nach einem sehr ungünstigen Ansatz an. Lastverteilung sollte dir eine passene Laufzeitumgebung liefern, z.B. ein Applikationsserver oder ein anderer Container.
Einfache Lastverteilung erreicht man durch einfaches verteilen von Anfragen, ohne dass die einzelnen Instanzen voneinander wissen.
 

Semox

Bekanntes Mitglied
Hi

Leider kann man keine Threads packen und verschicken. Aus dem Grunde, daß Threads ein Teil eines Prozesses sind. Also leichtgewichtige Prozesse. Der "schwergewichtige" Prozeß selbst läuft in einem RAM auf einem Computer mit einem Adreßraum, der nicht teleportiert werden kann. Es sei denn Du benutzt ein Grid - so etwas was Supercomputer können, wo sich mehrere Computer, bzw. CPUs und deren Busse einen gemeinsamen RAM bzw. einen Adreßraum teilen können.

Ansonsten könntest Du mal mit RMI arbeiten und ein oder hunderte gleicher Objekte, die einen bestimmten Zustand erreicht haben sollen und parallel berechnet werden weiterleiten und verarbeiten. Sowas passiert ihn ähnlicher Weise beim Cloud-Computing.

Oder schau mal hier: JPPF Home

Viele Grüße und Erfolg,
Semo
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand Thread und Ratelimiter Netzwerkprogrammierung 4
F Thread "extern" beenden Netzwerkprogrammierung 3
OnDemand Linux RAM per Thread Netzwerkprogrammierung 3
V Socket Audio Clip loopen ohne neuen Thread Netzwerkprogrammierung 2
C Thread Netzwerkprogrammierung 9
platofan23 Socket Hilfe mit Socket Thread und ArrayList Netzwerkprogrammierung 6
A RMI RMI - Thread Objekte übertragen und auf anderer Machine weiterlaufen lassen Netzwerkprogrammierung 0
S Socket ThreadPool oder Thread pro Client? Netzwerkprogrammierung 11
T Socket Server starten Thread Problem Netzwerkprogrammierung 12
P Wie spreche ich einen Thread an? Netzwerkprogrammierung 20
M Thread Scheduler Java 5.0? Netzwerkprogrammierung 2
7 Mehrere Verbindungen gleichzeitig in einem Thread mit ApacheHTTP Netzwerkprogrammierung 7
D Socket Dynamische Socket-Thread Erzeugung Netzwerkprogrammierung 2
B Socket Thread handling / Reader init Netzwerkprogrammierung 8
Z Socket Socket-Thread falsch? Netzwerkprogrammierung 5
Helgon Socket Thread Pooling Netzwerkprogrammierung 6
M Was macht Thread, wenn er aus einem "leeren" Inputstream liest ? Netzwerkprogrammierung 5
B callback thread udp Netzwerkprogrammierung 2
D RMI und Thread Netzwerkprogrammierung 4
S Kommunikationsproblem, Thread und manuel Netzwerkprogrammierung 4
U Socket Abhören eines Sockets/Ports in extra Thread Netzwerkprogrammierung 8
K ein Thread pro Stream Netzwerkprogrammierung 2
D Weiterer Thread auf Port 843 horcht Netzwerkprogrammierung 7
D Thread problem Netzwerkprogrammierung 3
S Thread, Daten vom Socket lesen Netzwerkprogrammierung 2
S Socket Thread in Schleife Netzwerkprogrammierung 4
G Objekte per TCP verschicken + Thread Netzwerkprogrammierung 4
T synchronized mit thread und rückgabe Netzwerkprogrammierung 4
Q Thread und Sockets... Netzwerkprogrammierung 2
2 Class mit ServerSocket erbt von Thread? Netzwerkprogrammierung 3
PAX Outputstream von anderem Thread verwenden lassen Netzwerkprogrammierung 5
C Server mit Multithreading (Thread-Pool) Netzwerkprogrammierung 2
E java.lang.NullPointerException aber nur wenns im Thread läuf Netzwerkprogrammierung 4
F EIN Thread in RMI auf Serverseite Netzwerkprogrammierung 3
G Server Thread beenden Netzwerkprogrammierung 16
T Socket-Thread: Designfrage Netzwerkprogrammierung 14
S Mit Thread arbeitende Maschine Netzwerkprogrammierung 6
T select() ohne NIO - oder wie Worker-Thread sauber beenden? Netzwerkprogrammierung 9
K Selbe Streams mehrfach nutzen (zusätl. Thread) Netzwerkprogrammierung 6
ven000m Thread Frage Netzwerkprogrammierung 11
B Thread.start() (run()) excption Netzwerkprogrammierung 2
M Thread läuft nicht weiter Netzwerkprogrammierung 2
B NullPointerException | Thread Netzwerkprogrammierung 4
U Current thread not owner Netzwerkprogrammierung 3
S readline-thread stoppt vorzeitig Netzwerkprogrammierung 6
J RMI - (RemoteException occurred in server thread) Netzwerkprogrammierung 2
S Webserverprogrammierung: Thread-Beschränkung Netzwerkprogrammierung 2
M Exception in thread "main" java.lang.NoClassDefFou Netzwerkprogrammierung 2
F problem mit thread bzw. netzwerkverbindung! Netzwerkprogrammierung 3
L netzwerk mit thread Netzwerkprogrammierung 3
G RMI thread safe ? Netzwerkprogrammierung 11
A Thread gibt Nachrichten mehrmals aus (Messenger in Java) Netzwerkprogrammierung 3
D rmi.transport.tcp.tcptransport Connectionhandler frisst 2/3 CPU Netzwerkprogrammierung 4

Ähnliche Java Themen


Oben