图书介绍

Python Web开发实战PDF|Epub|txt|kindle电子书版本网盘下载

Python Web开发实战
  • 董伟明著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121297335
  • 出版时间:2016
  • 标注页数:474页
  • 文件大小:128MB
  • 文件页数:505页
  • 主题词:程序开发工具-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Python Web开发实战PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 初识Python Web开发1

PythonWeb开发介绍1

为什么应该选择Python作为Web开发语言2

选择Python2还是Python 32

Web框架介绍3

主流Web框架3

小众的Web框架5

选择Web框架时应遵循的原则5

第2章 Web开发前的准备7

搭建一个能运行的虚拟机环境7

安装VirtualBox8

使用Vagrant安装8

使用Docker安装10

包管理和虚拟环境13

包管理13

使用pip替代easy_install13

distribute、distutils和setuptools14

entry_points15

插件系统16

虚拟环境17

virtualenv18

virtualenv定制化18

virtualenvwrapper21

virtualenv-burrito23

autoenv24

进阶篇:pip高级用法25

命令自动补全25

普通用户安装25

编辑模式25

使用devapi作为缓存代理服务器26

PYPI的完全镜像27

第3章 Flask Web开发28

Flask入门29

安装Flask29

从HelloWorld开始29

配置管理31

调试模式32

动态URL规则32

自定义URL转换器33

HTTP方法34

唯一URL35

构造URL36

跳转和重定向36

响应38

静态文件管理40

即插视图40

蓝图43

子域名43

命令行接口44

模板46

Jinja246

Mako52

使用MySQL60

安装MySQL和驱动61

设置应用账号和权限61

用MySQLdb写原生语句62

事务提交和回滚63

ORM简介64

使用SQLAlchemy65

使用ORM67

数据库关联69

在Flask中使用SQLAlchemy71

记录慢查询73

理解Context74

本地线程74

Werkzeug的Local75

flask.request76

使用上下文77

使用LocalProxy替代g80

从零开始实现一个文件托管服务80

首页84

重新设置图片页86

下载页87

预览页87

短链接页88

第4章 Flask开发进阶89

Flask的信号机制89

Blinker的使用89

Flask中内置的信号90

自定义信号92

信号订阅的高级用法92

Flask-Login中的信号93

Flask的扩展95

Flask-Script95

Flask-DebugToolbar97

Flask-Migrate98

Flask-WTF100

Flask-Security102

Flask-RESTful109

Flask-Admin111

Flask-Assets115

Werkzeug的使用118

DebuggedApplication118

数据结构120

功能函数121

密码加密122

中间件123

第5章 REST和Ajax127

什么是REST127

RESTfulAPI设计指南128

使用名词来表示资源128

关注请求头129

合理使用请求方法和状态码129

正确地使用REST130

对输出的结果不再包装131

不要做出错误的提示131

使用嵌套对象序列化131

版本132

URI失效和迁移132

信息过滤132

速度限制133

缓存133

并发控制134

使用Ajax135

第6章 网站架构140

Python应用服务器140

WSGI协议141

常见的WSGI容器141

Web服务器Nginx143

Web服务器与应用服务器的区别143

为什么要选择Nginx143

安装Nginx144

使用Nginx部署Flask应用144

缓存系统Memcached149

Libmc安装配置150

使用原生SQL缓存152

缓存更新策略157

Memcached使用的经验157

键值对数据库Redis157

操作Redis158

Redis应用场景159

分片和集群管理168

NoSQL数据库MongoDB169

为什么使用NoSQL169

MongoDB169

使用pymongo的例子171

使用Mongoengine的例子174

MongoDB实践经验176

大型网站架构经验182

缓存183

负载均衡183

高可用184

业务拆分184

集群184

第7章 系统管理186

进程管理Supervisor186

Supervisor组件187

配置Supervisor187

使用Supervisor190

应用部署Fabric193

Fabric应用接口194

使用Fabric管理Flask应用197

配置管理工具SaltStack和Ansible199

SaltStack200

Ansible207

使用Psutil213

使用Sentry收集错误信息215

安装配置Sentry216

启动Sentry218

创建团队和项目218

配置SDK220

使用StatsD、Graphite等搭建Web监控223

配置Graphite225

使用StatsD226

配置Diamond227

发布指标项227

使用Grafana228

使用Kenshin232

第8章 测试和持续集成233

使用unittest和doctest做测试233

unittest233

doctest236

使用py.test和mock237

py.test237

mock241

持续集成243

使用Tox集成248

第9章 消息队列和Celery250

使用Beanstalkd251

使用Beanstalkc252

深入理解RabbitMQ253

AMQP254

虚拟主机258

插件系统258

通过Web和RESTAPI管理RabbitMQ259

故障转移262

使用Celery262

Celery的架构263

Celery序列化265

安装配置Celery265

从一个简单的例子开始265

指定队列268

使用任务调度269

任务绑定、记录日志和重试270

在Flask应用中使用Celery271

深入理解Celery274

Celery的依赖274

任务调用277

信号系统278

Worker管理279

监控和管理Celery280

子任务281

进阶篇:Celery最佳实践283

使用自动扩展283

善用远程Debug283

合理安排任务周期284

合理使用队列和优先级285

保证业务逻辑的事务性285

关闭你不想要的功能285

使用阅后即焚模式285

善用Prefetch模式286

善用工作流286

第10章 服务化288

为什么需要服务化288

RPC框架289

服务化带来的问题290

微服务架构290

使用Thrift291

定义IDL文件292

服务端实现294

客户端实现297

PIDL——豆瓣的服务化实践301

PIDL架构302

第11章 数据处理305

使用MapReduce做日志分析305

使用MapReduce305

使用DPark309

分布式文件系统MooseFS309

Mesos310

配置DPark环境311

从WordCount开始314

PV&UV统计316

数据报表320

发送带有样式和附件的邮件320

创建xlsx文件325

使用Pandas328

Pandas入门329

读取MySQL数据库332

和Flask应用集成332

第12章 帮助工具336

IPython336

IPython交互模式338

常用的Magic函数338

配置和自定义IPython341

IPython的扩展系统342

使用IPython调试复杂代码343

双进程模型344

并行计算345

Jupyter Notebook347

Notebook格式350

Notebook式转换和预览351

为什么使用RequireJS352

在Notebook里使用Echarts353

富显示355

自定义JavaScript和CSS样式356

使用nbextension扩展Notebook358

在Notebook上使用并行计算359

调试和Debug工具360

了解Linux服务器运行情况360

性能测试366

Python程序性能分析369

性能调优实践373

进阶篇:定制基于IPython的交互解释环境374

进阶篇:豆瓣东西的Jupyter Notebook实践376

第13章 Python并发编程383

使用多线程385

使用Gevent392

使用多进程399

使用Future406

使用asyncio408

async/await409

Future412

使用aiohttp414

使用队列416

第14章 Python进阶418

使用标准库模块418

errno419

subprocess420

contextlib421

glob424

operator424

functools426

collections428

Python语法最佳实践432

命名434

使用join连接字符串435

EAFPvsLBYL435

定义类的_str_/_repr_方法436

优美的Python437

从Python 3移植439

partialmethod439

singledispatch440

suppress442

redirect_stdout/redirect_stderr443

使用CFFI/Cython编写Python扩展444

使用CFFI444

使用Cython447

进阶篇:使用PyObjC发送通知451

第15章 Web开发项目实践455

Web项目经验总结455

开发流程455

使用合理的项目结构456

关注代码复杂度457

代码质量保证工具457

Pycodestyle对中文缩进的处理458

Flake8459

Pylint460

其他代码质量保证工具461

使用AST做静态检查461

其他静态检查工具467

编写Flake8扩展468

代码评审的意义470

作为被评审者471

作为评审者472

评审的标准473

热门推荐