Сервер параллельной обработки запросов
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

n Стадия 1
Установление соединения клиент-сервер

n Стадия 2
Сервер параллельной обработки передает управление дочернему процессу

n Стадия 3
Если во время обработки запроса поступает запрос от другого клиента, сервер параллельной обработки передает управление новому дочернему процессу

 

 

 

Вопрос 106 Классы DatagramSocet и DatagramPacket , работа с ними.26-29 Лекция Основы создания сетевых приложений на Java .

 




Дейтаграммы

n Дейтаграмма – независимое, самодостаточное сообщение, посылаемое по сети, чья доставка, время (порядок) доставки и содержимое не гарантируются

n Могут использоваться как для адресной, так и для широковещательной рассылки

 

Класс DatagramPacket

n Экземпляры класса являются прототипами дейтаграмм-сообщений

n Конструкторы

l DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)

l И прочие…

n Методы

l byte[] getData()

l int getLength()

l int getOffset()

l SocketAddress getSocketAddress()

l void setSocketAddress(SocketAddress address)

l void setData(byte[] buf, int offset, int length)

l И прочие…

 

Класс DatagramSocket

n Экземпляры являются не ориентированными на соединение сокетами

n Конструкторы

l DatagramSocket()

l DatagramSocket(int port, InetAddress laddr)

l И другие…

n Методы

l void bind(SocketAddress addr)

l void close()

l void connect(InetAddress address, int port)

l void send(DatagramPacket p)

l void receive(DatagramPacket p)

l И другие…

 

Передача дейтаграмм

 

Вопрос 107 Класс URL , работа с ним. 30-34. Лекция Основы создания сетевых приложений на Java .

Uniform Resource Locator

n URL – адрес ресурса в Интернет

n Имя протокола
Протокол, используемый для связи

n Имя хоста
Имя компьютера, на котором
расположен ресурс

n Имя файла
Путь к файлу на компьютере

n Номер порта
Номер порта для соединения (необязателен)

n Ссылка
Ссылка на именованный якорь (необязательна)

n Может быть абсолютным и относительным

URL gamelan = new URL("http", "www.gamelan.com", 80,

                 "pages/Gamelan.network.html");

 







Прямое чтение из URL

import java.net.*;

import java.io.*;

public class URLReader {

public static void main(String[] args) throws Exception {

URL yahoo = new URL("http://www.yahoo.com/");

BufferedReader in = new BufferedReader(

                     new InputStreamReader(

                       yahoo.openStream()));

String inputLine;

while ((inputLine = in.readLine()) != null) {

System.out.println(inputLine);

}

in.close();

}

}

 

Чтение из URL -соединения

import java.net.*;

import java.io.*;

public class URLConnectionReader {

public static void main(String[] args) throws Exception {

URL yahoo = new URL("http://www.yahoo.com/");  

URLConnection yc = yahoo.openConnection();  

BufferedReader in = new BufferedReader(                          

                     new InputStreamReader(                          

                       yc.getInputStream()));

String inputLine;

while ((inputLine = in.readLine()) != null) {

System.out.println(inputLine);

}

in.close();

}

}

 

Запись в URL -соединение

import java.io.*;

import java.net.*;

public class Reverse {

public static void main(String[] args) throws Exception {

if (args.length != 1) {

System.err.println("Usage: java Reverse" +

                    "string_to_reverse");

System.exit(1);

}

String stringToReverse = URLEncoder.encode(args[0],

                          "US-ASCII");

URL url = new URL(

          "http://java.sun.com/cgi-bin/backwards");

URLConnection connection = url.openConnection();

connection.setDoOutput(true);

PrintWriter out = new PrintWriter(

                     connection.getOutputStream());

out.println("string=" + stringToReverse);

out.close();

BufferedReader in = new BufferedReader(

                     new InputStreamReader(

                       connection.getInputStream()));

String inputLine;

while ((inputLine = in.readLine()) != null)

System.out.println(inputLine);

in.close();

}

}

 

 

Дата: 2019-07-30, просмотров: 255.