在云服务器搭建 socket服务端

本文指导如何在腾讯云Ubuntu服务器上部署从本地GitHub克隆的Python socket服务,重点讲解了如何修改客户端和服务器端的IP,包括公网IP和内网IP的配置,以及如何启动服务端实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、环境:腾讯云服务器、ubuntu16、python3、git

2、在自己电脑(我的win10)用python3写好socket服务端代码,上传到自己的GitHub,然后在云服务器里git clone 工程。我的是:

cd ~ 
git clone https://github.com/LixinSy/appserver.git

3、重点来了,修改IP:

(1)在socket 客户端代码中,把host ip改成云服务器的公网ip
(2)在socket 服务端代码中,把ip 改成云服务器的内网ip

4、在控制台输入以下命令启动socket服务端 

python3  ~/appserver/myserver.py 

### 如何在本地环境中设置和运行Socket服务端 #### 创建Unix域套接字服务器 为了创建一个简单的Unix域套接字服务器,在C语言中可以按照如下方式编写: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> #include <sys/un.h> int main(void){ int sockfd, new_sockfd; socklen_t clilen; char buffer[256]; struct sockaddr_un serv_addr; /* 创建socket */ sockfd = socket(AF_UNIX, SOCK_STREAM, 0); if (sockfd < 0) { perror("ERROR opening socket"); exit(1); } unlink("/tmp/my_unix_socket"); // 删除旧的socket文件(如果存在) bzero((char *) &serv_addr, sizeof(serv_addr)); serv_addr.sun_family = AF_UNIX; strcpy(serv_addr.sun_path, "/tmp/my_unix_socket"); /* 绑定socket */ if (bind(sockfd, (struct sockaddr *)&serv_addr,sizeof(serv_addr)) < 0){ perror("ERROR on binding"); exit(1); } listen(sockfd,5); while(1){ printf("Waiting for a connection...\n"); clilen = sizeof(struct sockaddr_un); new_sockfd = accept(sockfd,(struct sockaddr *)&serv_addr,&clilen); if(new_sockfd<0){ perror("ERROR on accept"); continue; } bzero(buffer,256); read(new_sockfd,buffer,255); printf("Received message: %s\n", buffer); const char* response = "Message received"; write(new_sockfd,response,strlen(response)); close(new_sockfd); // 关闭单个客户端socket[^1] } return 0; } ``` 这段代码展示了如何建立一个监听特定路径`/tmp/my_unix_socket`上的连接请求的服务端程序。当收到新的连接时,会打印出接收的消息并且回应给客户端。 对于上述提到的内容,需要注意的是,此示例适用于Linux操作系统下的Unix域套接字通信场景;而在Windows平台上,则通常采用TCP/IP协议栈来实现类似的网络编程功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值