This question already has an answer here:
Reproduce with bottle app below.
I have a class with a list property. I create a new instance of this class on each request and append one element to the class' list property. Then, I print the length of the list back to the user.
Why does the count grow when visiting the page multiple times? If I set the property to an empty list in the class' init method everything is ok.
I'm running the app with gunicorn with a gevent worker proxied behind nginx
import bottle class MyClass: my_list =  def __init__(self): pass def add_to_list(self, var): self.my_list.append(var) app = bottle.app() @app.route('/') def index(): var = 'test' my_class = MyClass() my_class.add_to_list(var) return str(len(my_class.my_list)) if __name__ == '__main__': app.run(host="localhost", port=80)