Note that there are some explanatory texts on larger screens.

plurals
  1. POsocket programming multiple client to one server
    primarykey
    data
    text
    <p>How do you handle multiple client to connect to one server? I have this LogServer.java</p> <pre><code>import javax.net.ssl.*; import javax.net.*; import java.io.*; import java.net.*; public class LogServer { private static final int PORT_NUM = 5000; public static void main(String args[]) { ServerSocketFactory serverSocketFactory = ServerSocketFactory.getDefault(); ServerSocket serverSocket = null; try { serverSocket = serverSocketFactory.createServerSocket(PORT_NUM); } catch (IOException ignored) { System.err.println("Unable to create server"); System.exit(-1); } System.out.printf("LogServer running on port: %s%n", PORT_NUM); while (true) { Socket socket = null; try { socket = serverSocket.accept(); InputStream is = socket.getInputStream(); BufferedReader br = new BufferedReader( new InputStreamReader(is, "US-ASCII")); String line = null; while ((line = br.readLine()) != null) { System.out.println(line); } } catch (IOException exception) { // Just handle next request. } finally { if (socket != null) { try { socket.close(); } catch (IOException ignored) { } } } } } } </code></pre> <p>and an embedded applet with part of the code like this e.g</p> <pre><code>import java.io.*; import java.util.logging.*; public class LogTest { private static Logger logger = Logger.getAnonymousLogger(); public static void main(String argv[]) throws IOException { Handler handler = new SocketHandler("localhost", 5000); logger.addHandler(handler); logger.log(Level.SEVERE, "Hello, World"); logger.log(Level.SEVERE, "Welcome Home"); logger.log(Level.SEVERE, "Hello, World"); logger.log(Level.SEVERE, "Welcome Home"); } } </code></pre> <p>now the question is if I run "java LogServer" on the server, it will open the application and waiting for input stream and if I open my site, it will start streaming the log. But if I open one more using other computer/network, the second site does not log the stream. seems like it's because the first one still bind to port 5000. </p> <p>How do I handle this? How does socket actually work with multiple client / one server?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload