我想通过zeromq发送大量数字,但将它们转换为str效率不高。什么是通过zmq发送号码的最佳方式?通过zeromq发送一个数字pyzmq
1
A
回答
2
另一个串行幽州数字转换到str
是低效的。然而,除非你有一个真正奇特的网络,否则无论选择什么解决方案,都必然会出现这种情况,因为目前广泛使用的所有网络都是基于字节的。
当然,将数字转换为字节串的一些方法比其他方法更快。在C代码中执行转换可能会比在Python代码中更快,但也要考虑排除“long”(bignum)整数是否可接受。如果排除它们是不可接受的,那么str
函数可能会更好。
如果排除长整数是可接受的,则struct
和cpickle
模块的性能可能会比str
好。
4
有几个选项:
使用Python的struct.pack/struct.unpack方法例如struct.pack(! “L”,1234567)
使用像msgpack
+0
msgpack的+1。它非常适合Python,因为您可以像JSON对象一样轻松地将字典转换为msgpaxk消息。它处理整数和漂浮相当有效。 – 2012-03-06 08:33:53
相关问题
- 1. 通过msgpack通过zeromq发送一个向量
- 2. Zeromq内存泄漏(pyzmq)
- 3. 通过ZeroMQ发送HTTP队列
- 4. 发送NULL消息在PyZMQ
- 5. 通过Python中的ZeroMQ发送原始字节
- 6. ZeroMQ - 使用REQ套接字发送超过30个字节
- 7. 通过蓝牙发送一个字节
- 8. ZeroMQ PubSub不能正常工作w \ Pyzmq
- 9. 通过Winsocks发送一个int数组
- 10. 通过推送通知发送超过256字节的数据
- 11. 如何通过.Net中的ZeroMQ发送关键消息?
- 12. ZeroMQ(PHP-ZMQ)通过发送传递对象
- 13. 通过一个servlet发送字节数,让
- 14. 使用Java发送一个数组通过套接字
- 15. 通过数据报套接字发送一个对象java
- 16. ZeroMQ Pub发送空字符串
- 17. 通过回发发送两个参数
- 18. 通过ZeroMQ接收对象为字符串的正确方法是什么,然后通过另一个套接字通过零拷贝发送它?
- 19. 通过套接字发送NULL数据
- 20. 通过UDP套接字发送数据
- 21. Android通过套接字发送数据
- 22. 通过套接字发送整数python
- 23. 通过Websockets发送字节数据(JavaScript)
- 24. 字节或Int?通过套接字发送哪一个更快?
- 25. 使用TCP发送ZeroMQ数据
- 26. C# - 发送一个文件通过HTTP
- 27. 通过url发送一个php变量
- 28. 通过python发送一个Html文件
- 29. 通过WCF发送一个Tuple对象?
- 30. 通过事件发送一个值
如果您正在处理如此多的消息,那么Python将转换int <-->字符串的速度很慢,您可能需要重新考虑您的确切体系结构/语言选择。 – lunixbochs 2012-02-28 21:04:21
你发送什么样的数字(int/float,多大),消息中有多少个? – minrk 2012-02-28 21:18:01