因此,我有一个负载均衡器,当服务器上满是客户机时,我希望通过将服务器端口作为参数传递,以编程方式创建一个新的多线程服务器。
这就是我如何尝试启动一个新的服务器示例
int newport = 4001
SMTPserver server = new SMTPserver();
server.SMTPserver(port);
这是我的服务器
public class SMTPserver {
public static Socket connsock = null;
public static int port;
// SMTPserver(int port) {
// this.port = port;
// }
public static void main(String args[]) throws IOException {
ServerSocket serverSocket = new ServerSocket(port);
System.out.println("Server is running on port " + port);
while (true) {
try {
// accepting client socket
connsock = serverSocket.accept();
}
}
}
}
我的问题是如何用giver port参数启动这个服务器?这个代码正确吗?
1条答案
按热度按时间2izufjch1#
您正在将0传递给serversocket构造函数,因此它将选择一个可用端口。如果要使用特定端口,则需要传递非零端口号。
你可以这样做:
注意,我将port参数分配给port字段,然后将其传递给serversocket构造函数。