python - Web -- 如何在AWS部署网站?

 手机用户2502860335 发布于 2022-10-30 22:24

谢谢回答这个问题!
新手自学python+flask,已经写好了想部署试试,但是不知道哪种方案好。了解到有AWS,但又看到有Apache,Nginx,Docker等等的内容,所以问题如下:

1)部署网站究竟是如何实现?了解基本HTTP,但服务器Apache等等这些,Linux,它们关系是怎样的,我应该去查找哪方面的资料?我在书店逛来逛去,比如《高性能Nginx》,又来一本《鸟叔的Linux搭建服务器》(已入基础本),看不出个所以然。
2)看到docker介绍非常简便,准备入坑,但新手真的合适入这个坑吗(专精的意思)?会不会?
3)我目前的理解是想利用一些云平台部署这个网站(目测AWS),然后在上面用linux,再用docker。现在应从哪里入手最好?
4)问个不相关的问题,Flask的SQLAlchemy在应付多表join和多对多关系时变得极其绕和繁杂,想尝试Mongodb+(ORM)mongoengine,据说这个ORM坑较多,有何好推荐?
5)对了不介意的话可以推荐一下相关Rest ful的综合性基础资料吗?看Flask web一章节对其原理有点云里雾里。

非常感谢!

2 个回答
  • LZ的问题涉及很广。其实更靠谱的是分成几个单独的问题来问。但是还是试着回答下吧。抛砖。

    1. 可以看一下 full stack python [1]。里面那个图比较直观些(sf貌似贴图功能残了)。虽然里面缺了Load Balancer这些scaling的东西,但其它还是可以参考的。

    2. docker很火。而且很可能会一直火下去。但是我觉得这火烧得如此旺很大程度上是因为业界接受了micro service这个东东。如果架构传统的话,用的意义不大。当然docker可以做很多其它的事情,边玩边学是没错的。

    3. AWS北美已经直接支持docker。北京还没有。

    4. 其实这个问题是选MySQL或是MongoDB的问题。看应用。

    5. 要完全理解REST当然要看Fielding [2]。但是比较偏理论。其实使用起来大家也没有一个标准。完全符合REST理念的不一定好用。好用的很可能就有妥协。我的想法是先保证够用吧。


    1. http://www.fullstackpython.com/deployment.html

    2. Fielding, R. T.; Taylor, R. N. (2000)

    2022-10-31 22:15 回答
  • 看你的问题,你应该接触这方面已经算很多了。

    感觉有些混乱,里面有些概念或者软件具体的作用没有弄清楚。

    AWS仅仅是一种类似服务器托管的地方而已,相当于拥有一台可以独立访问的电脑。
    Apache,nginx才属于服务器范畴,Docker属于容器,属于集成管理的范畴。

    1).至于你提到的Linux和Apache的关系,好比在系统(Linux)上运行了一个服务(Apache)而已。网站部署,要看你的语言环境的,感觉你这里是Python,你应该去了解python web服务器搭建相关的,网上的资料应该很多。
    2).我用过一次docker,就是在AWS上使用的,我申请的存储空间很小,用了一次就不敢再在上面使用了。后期,肯定还是会学习的,不建议新手尝试,但也不反对。
    3).如果是部署服务器的话,因为你只是自己玩玩,没有成百上千的服务器需要操作,不建议使用docker,就从最简单的开始。你本地怎么搭建的,AWS上就怎么操作即可。
    4).我了解过Python,也曾打算花时间学一下,也仅仅是看过语法而已,所以不方便回答。
    5).restful部分,建议你先抛开Python来学,先知道什么是restful,然后再看Python是否有实现restful那一套东东的框架之类的。

    2022-10-31 22:15 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有