मैं डॉजर की सलाह देता हूं । इसे सेटअप करना बहुत आसान है, और आपको अपने कोड में शून्य परिवर्तन की आवश्यकता है। आप समय के माध्यम से प्रत्येक प्रकार की वस्तुओं की गिनती देख सकते हैं, जीवित वस्तुओं की सूची देख सकते हैं, जीवित वस्तुओं के संदर्भ देख सकते हैं, सभी सरल वेब इंटरफ़ेस से।
# memdebug.py
import cherrypy
import dowser
def start(port):
cherrypy.tree.mount(dowser.Root())
cherrypy.config.update({
'environment': 'embedded',
'server.socket_port': port
})
cherrypy.server.quickstart()
cherrypy.engine.start(blocking=False)
आप memdebug आयात करते हैं, और memdebug.start को कॉल करते हैं। बस इतना ही।
मैंने PySizer या Heapy की कोशिश नहीं की है। मैं दूसरों की समीक्षाओं की सराहना करूंगा।
अपडेट करें
ऊपर दिए गए कोड के लिए है CherryPy 2.X
, विधि निकाल दिए जाने और नहीं ले करता है झंडा। इसलिए यदि आप उपयोग कर रहे हैंCherryPy 3.X
server.quickstart
engine.start
blocking
CherryPy 3.X
# memdebug.py
import cherrypy
import dowser
def start(port):
cherrypy.tree.mount(dowser.Root())
cherrypy.config.update({
'environment': 'embedded',
'server.socket_port': port
})
cherrypy.engine.start()