Logo
☆☆☆☆☆
0.0
Advanced
9h

Python 扩展与分布式应用指南

Python 虽然功能强大,但在需要编写高性能和分布式应用时常常被忽视。人们普遍认为它运行缓慢,不适合此类任务。本课程将向你展示,只要采用正确的实现方式,使用 Python 也能构建可横向扩展、性能出色且分布式的应用程序。 课程伊始,你将学习 CPU 扩展、并发编程以及事件循环等关键技术,这些都是构建分布式系统的核心要素。随后,你将深入理解基于队列的分布式架构、锁管理机制以及组成员关系,这些是保障分布式应用高可用性和一致性的基础概念。 在课程后半部分,你将学习如何构建 REST API,如何将应用部署到 PaaS 平台,并掌握优化应用性能的方法。 完成本课程后,你将更高效地使用 Python,能够编写出快速、分布式的应用程序,并掌握一项极具价值的新技能。

15 Lessons
Included in Subscription Plan
Personalized Learning
Powered by AI
Python 扩展与分布式应用指南
Python 虽然功能强大,但在需要编写高性能和分布式应用时常常被忽视。人们普遍认为它运行缓慢,不适合此类任务。本课程将向你展示,只要采用正确的实现方式,使用 Python 也能构建可横向扩展、性能出色且分布式的应用程序。 课程伊始,你将学习 CPU 扩展、并发编程以及事件循环等关键技术,这些都是...

WHAT YOU'LL LEARN

掌握 Python 的 CPU 扩展、并发编程与事件循环机制

Content

15 Lessons • 0 Quizzes • 0 Challenges

扩展性
  1. 1

    缩放入门

  2. 2

    跨CPU扩展

  3. 3

    分布式系统

  4. 4

    面向服务的架构

  5. 5

    关于扩展的测验

CPU 扩展
  1. 1

    CPU 扩展简介

  2. 2

    使用线程

  3. 3

    使用进程

  4. 4

    使用 Futures

  5. 5

    高级 Future 用法

  6. 6

    守护进程

  7. 7

    梅迪·阿巴库克谈CPU扩展

  8. 8

    CPU 多核扩展测试

  9. 9

    编程挑战:跨CPU扩展

项目概述
  1. 1

    项目解决方案评审

事件循环
  1. 1

    事件循环简介

  2. 2

    基本模式:阻塞事件

  3. 3

    使用 Asyncio

  4. 4

    服务器与客户端

  5. 5

    Naoki Inada 关于 asyncio

  6. 6

    测验:事件循环

  7. 7

    编程挑战:事件循环

锁管理
  1. 1

    锁管理简介

  2. 2

    线程锁

  3. 3

    进程锁

  4. 4

    进程锁:多进程锁

  5. 5

    进程锁:进程间锁

  6. 6

    使用 etcd 实现分布式锁

  7. 7

    使用 Tooz 锁定抽象

  8. 8

    测验:锁管理

  9. 9

    编程挑战:锁管理

函数式编程
  1. 1

    函数式编程入门

  2. 2

    函数式编程工具箱:映射、过滤及其他

  3. 3

    函数式编程工具包:“next”、“first”和“itertools”

  4. 4

    测验:函数式编程

  5. 5

    编程挑战:函数式编程

组成员身份
  1. 1

    群组成员资格简介

  2. 2

    创建、加入和退出群组

  3. 3

    使用能力

  4. 4

    使用观察者回调

  5. 5

    一致性哈希环

  6. 6

    分区器

  7. 7

    亚历克西斯·雅各布-莫尼耶关于集群管理

  8. 8

    测验:组成员身份

  9. 9

    编程挑战:成员分组

基于队列的分发
  1. 1

    基于队列的分发简介

  2. 2

    RQ(concept)

  3. 3

    Celery

  4. 4

    Celery:处理失败

  5. 5

    Celery:任务链

  6. 6

    Celery:多队列

  7. 7

    Celery:监控

  8. 8

    乔舒亚·哈洛谈任务分发(concept)

  9. 9

    测验:基于队列的分发

  10. 10

    编程挑战:基于队列的分发

REST 接口
  1. 1

    Python中的REST接口

  2. 2

    WSGI 协议

  3. 3

    流式数据

  4. 4

    使用 ETag

  5. 5

    异步 HTTP API

  6. 6

    快速 HTTP 客户端

  7. 7

    快速 HTTP 客户端的比较

  8. 8

    测试 REST API

  9. 9

    克里斯·登特谈HTTP

  10. 10

    测验:构建REST API

  11. 11

    编程挑战:构建 REST API

设计容错
  1. 1

    故障设计入门

  2. 2

    简单重试

  3. 3

    使用 Tenacity 重试

  4. 4

    测验:面向失败的设计

  5. 5

    编程挑战:设计容错

在PaaS上部署
  1. 1

    云上部署

  2. 2

    Heroku

  3. 3

    亚马逊弹性 Beanstalk

  4. 4

    Google 应用引擎

  5. 5

    OpenShift

  6. 6

    超越平台即服务

  7. 7

    测验:在PaaS上部署

测试分布式系统
  1. 1

    分布式系统测试入门

  2. 2

    使用 tox 配置环境

  3. 3

    使用 pifpaf 管理外部服务

  4. 4

    使用 pifpaf 配置测试夹具

  5. 5

    测验:测试分布式系统

缓存
  1. 1

    缓存简介

  2. 2

    本地缓存

  3. 3

    记忆化

  4. 4

    分布式缓存

  5. 5

    Jason Myers 关于数据库

  6. 6

    测验:缓存

  7. 7

    编程挑战:缓存

性能
  1. 1

    性能优化入门

  2. 2

    内存和CPU性能分析

  3. 3

    性能分析策略与案例

  4. 4

    零拷贝

  5. 5

    反汇编代码

  6. 6

    维克托·斯蒂纳关于性能

  7. 7

    测验:性能

  8. 8

    编程挑战:性能

结论
  1. 1

    总结性陈述

Certificate of Completion

Showcase your accomplishment by sharing your certificate of completion.

Course Author:Anonymous User

Reviews

Read reviews from students who have taken this course and share your own experience.

Reviews & Comments (0)