1
我在試圖將我的Java項目部署到Google雲引擎時經歷了一段艱難的時期。我閱讀了大部分Google雲文檔,但我仍然無法弄清楚。將Java項目部署到Google計算引擎
我想要的只是tcp通信。我不需要HTML本身來做一些事情。很多指南都提到servlet和http get和post,但我只需要tcp。 也許我缺乏信息,這就是爲什麼我無法管理它。
所以首先 - 我需要某種形式的http服務器來運行tcp請求嗎?如果不是,我該如何部署我的項目?
現在我的項目只有Java。如果它很重要,我使用IntelliJ。這是這樣的。
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class MainServer {
public static void main(String[] args) {
final int SERVER_PORT = 3000;
final int SERVER_TIMEOUT = 5000;
try (ServerSocket serverSocket = new ServerSocket(SERVER_PORT)) {
while (true) {
try {
Socket clientSocket = serverSocket.accept();
clientSocket.setSoTimeout(SERVER_TIMEOUT);
new ClientThread(clientSocket).start();
} catch (IOException ignored) {
}
}
} catch (IOException ignored) {
}
}
}
而在ClientThread中,我會處理每個請求。
我在本地嘗試了它,它完美地工作。
現在我只需要將該項目部署到計算引擎並使其工作。
此外,我在服務器上安裝了Java JRE。我希望端口3000是好的,如果不是我可以改變它。
如果我不那麼清楚,請提前致謝。
謝謝!當你這樣說的時候非常簡單。 我所要做的就像你說的那樣 - 創建一個可運行的JAR,將其複製到服務器並運行它。並且不要忘記在防火牆中允許相關的端口和協議。 –
你能提供更多的細節嗎?通過使用「ng new」創建的angularjs項目來創建項目的這項工作?我如何製作可運行的JAR?我如何複製到雲端?你提到複製到CE,我想複製到AE(應用程序引擎) - 我的理解是它們是兩個不同的東西。 – mobibob
Compute Engine和App Engine確實不同:https://stackoverflow.com/questions/22697049/what-is-the-difference-between-google-app-engine-and-google-compute-engine/22697189#22697189 –