Full Stack Python logo Full Stack Python

全部主题 | Blog | 时讯 | @fullstackpython | Facebook | 源码

平台即服务(PaaS)

平台即服务(PaaS)提供了硬件基础设施和软件层,这样可以在它上面部署 web 应用。使用 PaaS 方案部署你的 web 应用,就意味着你不必了解更多关于服务器基础、操作系统、web 服务器、以及常提到的 WSGI 服务器的相关知识。

注意:如果你对使用 PaaS 方案部署 web 应用没什么兴趣的话,可以去阅读 WSGI 服务器 一节的内容。

PaaS 层定义了应用程序应该如何访问诸如计算时间、文件以及外部服务这样的资源。相对于在一台服务器或者在 IaaS 上部署应用的方案,PaaS 为使用计算资源提供了更高层次的抽象。

使用 PaaS 方案使得部署和操作变得更加简单,因为它会强迫开发者让应用程序符合 PaaS 架构。例如,在部署应用期间,Heroku 会在仓库的基目录查找 Python requirements.txt 文件,因为基目录就是那个文件的实际社区标准位置。

传统 LAMP 服务栈对比基础设施即服务(PaaS)栈

如果你走的是使用 PaaS 的路线,那你就可以跳过配置操作系统和 web 服务器的步骤,它们都由 PaaS 预先配置并提供了。 PaaS 提供的服务通常起始于 WSGI 服务层。

平台即服务(PaaS)的职责所在

虽说 PaaS 提供的服务会简化服务器、操作系统和 web 服务器的设置和维护,但开发者们仍然需要对他们的 web 栈中其他各层负责。

虽然了解一些用于支撑你的 PaaS 的操作系统知识是有好处的,例如 Heroku 使用的是 Ubuntu 10.04,但是你不必学习很多关于操作系统和服务器层面的安全知识。然而,部署到 PaaS 的 web 应用在在作为 LAMP 堆栈上的应用层依然会因为安全漏洞而易受攻击。这依旧是你的职责去保证你的 web 应用框架和应用能够及时更新并且保证它们的安全。阅读 安全部分 获取更多信息。

支持 Python 的平台即服务(PaaS)

与平台即服务(PaaS)有关的资源

平台即服务(PaaS)学习清单

  • 回顾上述列出的一些潜在的 Python 平台即服务(PaaS)选项。

  • 找一个最适合你的应用需求的 PaaS 供应商,并在那儿注册一个账户。Heroku 是推荐给初学者的 PaaS 选择,因为它提供了详细的文档,并且在网上有很多不错的教程。当然,其他的选择也是可行的,因为他们的目的就是让应用部署尽可能地简单。

  • 在 PaaS 上部署应用后,检查一下是否有任何需要的 PaaS 相关的详细配置文件,从而让你的应用以适当的方式运行。

  • 在 PaaS 上部署应用。

  • 将你的应用配置与数据库同步。

  • 为你应用的 静态内容 设置内容分发网络(CDN) ,除非你的 PaaS 供应商已经帮你完成了这个部署步骤。

  • 检查你的应用是否正常工作,并在必要时进行调整。

接下来你想要学习与部署相关的什么话题?

服务器上的什么程序会运行 Python 应用代码?

告诉我有关标准关系型数据库的知识。

在服务器上如何安装 Python 库文件?

#### 在这里注册以便每月能收到一份邮件资料,内容包含本站的主要更新、教程和 Python 书籍的打折码等。

The Full Stack Python Guide to Deployments 想找到一个完整的,一步一步的部署方案吗?请看《The Full Stack Python Guide to Deployments》.

邮件获取更新

##### 注册以便每月能收到一份邮件资料,内容包含本站的主要更新和 Python 教程。

目录

1. 简介学习编程为什么用 Python?Python 2 还是 3?企业 PythonPython CommunityBest Python Podcasts最佳 Python 资源最佳 Python 视频2. 开发环境VimEmacs3. 核心语言生成器推导式4. Web 开发Web 框架DjangoFlaskBottlePyramidMorepath其它 Web 框架Web 设计级联样式表 (CSS)JavaScriptWebSockets模板引擎Web 应用安全静态网站生成器Jinja25. 数据关系型数据库NoSQL 数据存储对象关系映射器PostgreSQLMySQLSQLite6. Web APIsAPI 集成API 的创建Twilio7. 部署服务器平台即服务(PaaS)操作系统Web 服务器WSGI 服务器源码控制应用程序依赖静态内容任务队列配置管理持续集成日志监控Web 分析Docker缓存微服务DevOpsNginxApache HTTP 服务器CaddyGreen Unicorn (Gunicorn)UbuntuPelicanLektorMkDocs8. 测试单元测试集成测试代码度量调试9. MetaBotsChange LogFuture DirectionsAbout the AuthorSQLAlchemyPeewee …或者显示全部目录内容.

平台即服务(PaaS)

重要的更新内容会通过 Twitter 账号@fullstackpython发布。


需要更加详细的教程吗?请看 《The Full Stack Python Guide to Deployments》。

Chapters

1. 简介2. 开发环境3. 核心语言4. Web 开发5. 数据6. Web APIs7. 部署 » 平台即服务(PaaS) 8. 测试9. Meta …or view the full table of contents.


This site is based on Matt Makai's project Full Stack Python, thanks for his excellent work!

此网站由 @haiiiiiyun开源爱好者们 共同维护。 若发现错误或想贡献,请访问: Github fullstackpython.cn 项目