Я создал очень простое приложение для чата java.Может ли Java-класс, который действует как сервер через ServerSocket, размещаться в Интернете?
Хотя проект состоит из одного функционирующего как Сервер, а другой - Клиентом, который отправляет сокеты и получает сокеты с Сервера.
Но сервер не является Servlet или любой другой вид, это просто простой обычный класс Java, который функционирует в качестве сервера через ServerSocket ...
Если он может быть размещен в Интернете (облако желательно), как будет я знать новое имя хоста для использования клиентом ??? Будет ли порт изменен на ???
класс Сервер
public class ServerDoor {
public static void main(String args[]) throws IOException {
final int portNumber = 81;
ServerSocket serverSocket = new ServerSocket(portNumber);
while (true) {...}
}
}
Client Side
public static void main(String args[]) throws IOException {
final String host = "localhost"; // the host name!
final int portNumber = 81;
System.out.println("Creating socket to '" + host + "' on port " + portNumber);
while (true) {...}
}
Это подробные сведения о том, как именно вы собираетесь разместить его. Например, если вы зарегистрируете доменное имя для сервера, вы можете указать это имя в своем клиенте. Вы можете изучить статические методы класса [InetAddress] (http://docs.oracle.com/javase/8/docs/api/index.html), чтобы получить некоторые идеи. –
Есть ли облако, поддерживающее java? Специально не быть сервлетом, а быть простым классом java. Я имею в виду, что я могу загрузить Java-класс в облако и это даже поддерживается? –
Облачные сервисы, такие как Amazon EC2 и Google Compute Engine, предоставляют вам виртуальную машину, на которой вы можете запускать любое программное обеспечение, включая Java. – yole