Object Oriented Software Engineering   View all facts   Glossary   Help
subject > process^2 > server > Java server
Upserver

Java server
subjectfact 
Java serveris a subtopic of 3.5 - Technology Needed to Build Client-Server Systems2001-08-30 14:56:20.0
is a kind of server2001-08-30 14:56:20.0
may send messages to Java client at any time once a connection is established2001-08-30 14:56:20.0
must have an instance of Socket class in order to exchange information with clients2001-08-30 14:56:20.0
receives messages from the client using an instance of InputStream2001-08-30 14:56:20.0
sends messages to the client using an instance of OutputStream2001-08-30 14:56:20.0
sends stream of information to the client2001-08-30 14:56:20.0
serveraccepts connections from clients, normally involving some form of validation to ensure that the client is allowed to connect.2001-08-30 14:57:28.0
can also be a client at the same time2001-08-30 14:57:28.0
continues to serve currently connected clients after it has stopped listening2001-08-30 14:57:28.0
disconnects clients - the client may request disconnection by sending a message to the server, the client may just disappear suddenly due to the client crashing or the network connecting going down, or the server may force a client to disconnect if the client is not behaving well2001-08-30 14:57:28.0
does concurrently
  • Waiting for interactions with the user who is in charge of the server, and responding as necessary
  • Waiting for clients to try to connect and establishing connections as needed
  • For each connected client, waiting for messages coming from that client, and responding when messages arrive
2001-08-30 14:57:28.0
keeps a record of the connection while a client is connected2001-08-30 14:57:29.0
listens for clients attempting to connect2001-08-30 14:57:29.0
may be accessed by many clients simultaneously2001-08-30 14:57:29.0
may be located on the same computer as its clients or on a different computer2001-08-30 14:57:29.0
must be able to handle connections from many clients2001-08-30 14:57:29.0
must be able to respond to messages from all the connected clients2001-08-30 14:57:29.0
must initialize itself so that it is able to provide the required service2001-08-30 14:57:29.0
reacts to messages from connected clients: performing computations or obtaining information, and normally sending some information back to the requesting client and perhaps sending a message to another client or broadcasting messages to many clients at once.2001-08-30 14:57:29.0
stops listening if the number of connected clients becomes too high, or prior to shutting down2001-08-30 14:57:29.0
terminates when necessary, which involves such actions as notifying each client before terminating its connection2001-08-30 14:57:29.0
usually operates with at least two concurrent threads, and in general n+2, threads where n is the number of connected clients2001-08-30 14:57:29.0
will not accept new client connections if it has stopped listening2001-08-30 14:57:29.0
programis written by programmer2001-08-30 14:57:05.0
should follow consistent guidelines that make the program easy to read2001-08-30 14:57:06.0
process^2see also process2001-08-30 14:57:05.0

Upserver