python消耗cpu_即使运行Python也要消耗99%的CPU

我已经在python和eventlet邮件列表上发布过了,所以如果我觉得不耐烦,我很抱歉。在

我在一个小型(非微型)保留的ubuntu11.10aws实例上运行eventlet0.9.16。在

我有一个socketserver,它类似于eventlet文档中示例中的echo服务器。当我第一次开始运行代码时,一切似乎都很好,但我注意到10到15个小时后,cpu使用率从大约1%增加到99+%。此时,我无法进一步连接到socketserver。在

这是我正在运行的代码:def socket_listener(self, port, socket_type):

L.LOGG(self._CONN, 0, H.func(), 'Action:Starting|SocketType:%s' % socket_type)

listener = eventlet.listen((self._host, port))

listener.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

pool = eventlet.GreenPool(20000)

while True:

connection, address = listener.accept()

connection.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

L.LOGG(self._CONN, 0, H.func(), 'IPAddress:%s|GreenthreadsFree:%s|GreenthreadsRunning:%s' % (str(address[0]), str(pool.free()),str(pool.running())))

pool.spawn_n(self.spawn_socketobject, connection, address, socket_type)

listener.shutdown(socket.SHUT_RDWR)

listener.close()

LOGG方法只需将提供的参数记录到mysql表中。在

我在运行socket_侦听器的线程如下:

^{pr2}$

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值