RPC远程调用时TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

本文主要是介绍RPC远程调用时TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

补充,在公司测试时虚拟机和主机连接测试时又出现了:port 22:No route to host的问题,查了一下发现时因为ip网段不同,因为虚拟机事直接挂起的没有关机,所有ip网段还是家里的网段,重启下就变回来了。


 

最近要学gRPC,先看了看RPC,上班的时候虚拟机测试都没问题,回家后想用台式和笔记本两台电脑测试下,结果发现台式访问笔记本没问题,笔记本访问台式会报错,报错信息如下,

TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

百度了一下相关问题太少,最开始以为是不是端口问题,换了几个端口不行,又想了想局域网通信是不是防火墙的问题的,果然发现台式机防火墙开着呢,关掉之后就好了,笔记本如果开防火墙同样连不上,确认是防火墙的问题了。

最后附上代码:

服务端:

#! /usr/bin/env python
# -*- coding: utf-8 -*-__author__ = 'xieyanke'from xmlrpc.server import SimpleXMLRPCRequestHandler, SimpleXMLRPCServer__HOST = '192.168.3.31'
__PORT = 8111class RPCHandler(SimpleXMLRPCRequestHandler):rpc_paths = ('/rpc',   # 定义 RPC 接口的请求地址)with SimpleXMLRPCServer((__HOST, __PORT), requestHandler=RPCHandler) as rpcserver:rpcserver.register_introspection_functions()def formate_data(str):return str.upper()def func1(num):return(num*num)rpcserver.register_function(formate_data, 'formate_data')  # 这里 'formate_data' 可以不与自定义的方法名字相同,只要 server 端与 client 端做好约定即可rpcserver.register_function(func1, 'call_rpc')  # 这里 'formate_data' 可以不与自定义的方法名字相同,只要 server 端与 client 端做好约定即可rpcserver.serve_forever()

 

客户端:

#! /usr/bin/env python
# -*- coding: utf-8 -*-__author__ = 'xieyanke'import xmlrpc.client__HOST = '192.168.3.21'
__PORT = '8112'server = xmlrpc.client.ServerProxy('http://' + __HOST + ':' + __PORT + '/rpc')  # 这里需要注意的是结尾的 ‘/' 必须存在,如果不绑定根,xmlrpc client 默认绑定的 url 为 host:port/RPC2# print(server.formate_data('hello,world!'))
print(server.call_rpc(4))


代码基本都是用的这位老师的,随便改了测试下:

https://www.jianshu.com/p/2fc47e4a2bbb

这篇关于RPC远程调用时TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1049254

相关文章

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.

Java调用C#动态库的三种方法详解

《Java调用C#动态库的三种方法详解》在这个多语言编程的时代,Java和C#就像两位才华横溢的舞者,各自在不同的舞台上展现着独特的魅力,然而,当它们携手合作时,又会碰撞出怎样绚丽的火花呢?今天,我们... 目录方法1:C++/CLI搭建桥梁——Java ↔ C# 的“翻译官”步骤1:创建C#类库(.NET

Linux使用scp进行远程目录文件复制的详细步骤和示例

《Linux使用scp进行远程目录文件复制的详细步骤和示例》在Linux系统中,scp(安全复制协议)是一个使用SSH(安全外壳协议)进行文件和目录安全传输的命令,它允许在远程主机之间复制文件和目录,... 目录1. 什么是scp?2. 语法3. 示例示例 1: 复制本地目录到远程主机示例 2: 复制远程主

IDEA如何实现远程断点调试jar包

《IDEA如何实现远程断点调试jar包》:本文主要介绍IDEA如何实现远程断点调试jar包的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录问题步骤总结问题以jar包的形式运行Spring Boot项目时报错,但是在IDEA开发环境javascript下编译

java连接opcua的常见问题及解决方法

《java连接opcua的常见问题及解决方法》本文将使用EclipseMilo作为示例库,演示如何在Java中使用匿名、用户名密码以及证书加密三种方式连接到OPCUA服务器,若需要使用其他SDK,原理... 目录一、前言二、准备工作三、匿名方式连接3.1 匿名方式简介3.2 示例代码四、用户名密码方式连接4

MySQL 表的内外连接案例详解

《MySQL表的内外连接案例详解》本文给大家介绍MySQL表的内外连接,结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录表的内外连接(重点)内连接外连接表的内外连接(重点)内连接内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,我

RabbitMQ工作模式中的RPC通信模式详解

《RabbitMQ工作模式中的RPC通信模式详解》在RabbitMQ中,RPC模式通过消息队列实现远程调用功能,这篇文章给大家介绍RabbitMQ工作模式之RPC通信模式,感兴趣的朋友一起看看吧... 目录RPC通信模式概述工作流程代码案例引入依赖常量类编写客户端代码编写服务端代码RPC通信模式概述在R

C/C++和OpenCV实现调用摄像头

《C/C++和OpenCV实现调用摄像头》本文主要介绍了C/C++和OpenCV实现调用摄像头,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录准备工作1. 打开摄像头2. 读取视频帧3. 显示视频帧4. 释放资源5. 获取和设置摄像头属性

Apache 高级配置实战之从连接保持到日志分析的完整指南

《Apache高级配置实战之从连接保持到日志分析的完整指南》本文带你从连接保持优化开始,一路走到访问控制和日志管理,最后用AWStats来分析网站数据,对Apache配置日志分析相关知识感兴趣的朋友... 目录Apache 高级配置实战:从连接保持到日志分析的完整指南前言 一、Apache 连接保持 - 性

电脑蓝牙连不上怎么办? 5 招教你轻松修复Mac蓝牙连接问题的技巧

《电脑蓝牙连不上怎么办?5招教你轻松修复Mac蓝牙连接问题的技巧》蓝牙连接问题是一些Mac用户经常遇到的常见问题之一,在本文章中,我们将提供一些有用的提示和技巧,帮助您解决可能出现的蓝牙连接问... 蓝牙作为一种流行的无线技术,已经成为我们连接各种设备的重要工具。在 MAC 上,你可以根据自己的需求,轻松地