【发布时间】:2020-01-22 22:24:02
【问题描述】:
下面的代码是客户端和服务器网络之间的简单通信,用于确定消息是偶数还是奇数。如何测量请求和响应之间的速度?我不确定我的代码是否准确测量它。
import xmlrpclib
import time
start = time.time()
proxy = xmlrpclib.ServerProxy("http://localhost:8000/")#manages communication with a remote XML-RPC server.
end = time.time()
#measures speed
elapsed = end - start
print "The elapse time is ", elapsed
#the proxy variable connects to the server and recives the result of whether the message is even or odd
print "3 is even: %s" % str(proxy.is_even(3))
print "100 is even: %s" % str(proxy.is_even(100))
import xmlrpclib
from SimpleXMLRPCServer import SimpleXMLRPCServer
def is_even(n): #determines if a number is even or odd
return n % 2 == 0
server = SimpleXMLRPCServer(("localhost", 8000)) # Creates server
print "Listening on port 8000..."
server.register_function(is_even, "is_even") # respond to XML-RPC requests
server.serve_forever() #Handle one request at a time until shutdown.
【问题讨论】:
-
你不是已经用“经过的时间”来测量速度了吗?您还需要什么其他类型的速度测量?您可以使用
start = time.time(); print("Took:", time.time()-start),这就是花在请求上的总时间。 -
感谢您的回复。如何将速度的输出以更好的字符串格式输出?
-
首先切换到Python3。 Python2 将在短短几个月内结束生命。其次,你可以做
print(f"Total speed (in seconds): {time.time()-start}")。
标签: python networking rpc