they are using the exact same server application as comes built-in to Flask.
You can confirm that this isn't the case by removing the run-with-built-in-server section yourself
- i.e. the following from the example:
if __name__ == "__main__":
# Setting debug to True enables debug output. This line should be
# removed before deploying a production app.
application.debug = True
application.run()
You'll stop having the ability to run it yourself locally with python application.py however it's going to still happily run on EB!
The EB Python platform uses its own WSGI server (Apache with mod_wsgi, last I looked) and some assumptions/config to find your WSGI callable:
From Configuring a Python project for Elastic Beanstalk:
By default, Elastic beanstalk looks for a file called application.py to start your application. If this does not exist in the Python project that you have created, some adjustment of your application's environment is important.