Python 2.7 Python:xmlrpc在发送二进制文件时内存不足

Python 2.7 Python:xmlrpc在发送二进制文件时内存不足,python-2.7,memory,xmlrpclib,Python 2.7,Memory,Xmlrpclib,我用python编写了这个简单的xmlrpc服务器脚本。我将内存限制为512mb,以模拟脚本将运行的环境 import SimpleXMLRPCServer import resource MEMORY_LIMIT = 512 resource.setrlimit(resource.RLIMIT_AS, (MEMORY_LIMIT * 1048576L, -1L)) class Functions: def foo(self, file): print "received fil

我用python编写了这个简单的xmlrpc服务器脚本。我将内存限制为512mb,以模拟脚本将运行的环境

import SimpleXMLRPCServer
import resource

MEMORY_LIMIT = 512
resource.setrlimit(resource.RLIMIT_AS, (MEMORY_LIMIT * 1048576L, -1L))

class Functions:
  def foo(self, file):
    print "received file"

server = SimpleXMLRPCServer.SimpleXMLRPCServer(("localhost", 8000))
server.allow_none = True
server.register_instance(Functions())
server.serve_forever()
然后我得到了这个客户端脚本:

import xmlrpclib
import sys

client = xmlrpclib.Server('http://localhost:8000')

file = open(sys.argv[1], 'r')
binary = xmlrpclib.Binary(file.read())

client.foo(binary)
当我发送20mb的文件时,会出现以下异常:

xmlrpclib.Fault: <Fault 1: "<type 'exceptions.MemoryError'>:">
xmlrpclib.Fault:

为什么我不能向内存为512mb的服务器发送一个10mb的文件?

您找到这个问题的原因了吗?