• Python Web开发实战
图书条目标准图
21年品牌 40万+商家 超1.5亿件商品

Python Web开发实战

35.3 3.4折 105 全新

仅1件

河北保定
认证卖家担保交易快速发货售后保障

作者董伟明 著

出版社电子工业出版社

出版时间2016-09

版次1

装帧平装

货号9787121297335

上书时间2024-11-25

尚贤文化河北分店的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
图书标准信息
  • 作者 董伟明 著
  • 出版社 电子工业出版社
  • 出版时间 2016-09
  • 版次 1
  • ISBN 9787121297335
  • 定价 105.00元
  • 装帧 平装
  • 开本 16开
  • 纸张 胶版纸
  • 页数 516页
  • 字数 616千字
  • 正文语种 简体中文
  • 原版书名 Python Web
【内容简介】

  《Python Web开发实战》按照一个Web 产品从无到有、从简单变复杂、从基础到进阶的过程,多角度、全方位讲述了Python Web 开发。内容涉及Web 框架、测试、数据库、消息队列、服务化、持续集成等,把网站工程的全貌展现在读者的眼前,从其中可以了解Web 工程从开发到上线的完整流程。另外,作者对当前现在正在流行的技术或工具,如Flask、Celery、Jupyter、Supervisor、 
  SaltStack、Pandas 等都有较为详细的阐述,可作为技术选型时的参考。 
  对于Web 开发者、使用Python 语言的运维工程师和运维开发工程师、想提高Python 技能的开发者、想了解Python Web 开发的其他开发者,《Python Web开发实战》都适合阅读。 

【作者简介】

    董伟明,豆瓣高级产品开发工程师,主要负责豆瓣读书、电影、音乐、东西等产品线。从2011年开始接触Python, 从运维、运维开发到现在的Web开发,积累了丰富的运维和开发经验,作者积极参与开源项目,给IPython、pip及Python标准库等贡献过代码。这本书将作者这些年使用Python进行Web开发,对各方面知识的理解和积累的经验进行梳理和总结。

 

作者个人博客是http://www.dongwm.com,Github地址为https://github.com/dongweiming

 


【目录】
第1 章初识Python Web 开发1 
Python Web 开发介绍1 
为什么应该选择Python 作为Web 开发语言2 
选择Python 2 还是Python 3 2 
Web 框架介绍3 
主流Web 框架3 
小众的Web 框架5 
选择Web 框架时应遵循的原则5 
第2 章Web 开发前的准备7 
搭建一个能运行的虚拟机环境7 
安装VirtualBox 8 
使用Vagrant 安装8 
使用Docker 安装10 
包管理和虚拟环境13 
包管理13 
使用pip 替代easy_install 13 
distribute、distutils 和setuptools 14 
entry_points 15 
插件系统16 
虚拟环境17 
virtualenv 18 
virtualenv 定制化18 
virtualenvwrapper 21 
virtualenv-burrito 23 
autoenv 24 
进阶篇:pip 高级用法25 
命令自动补全25 
普通用户安装25 
编辑模式25 
使用devapi 作为缓存代理服务器26 
PYPI 的完全镜像27 
第3 章Flask Web 开发 28 
Flask 入门29 
安装Flask 29 
从Hello World 开始29 
配置管理31 
调试模式32 
动态URL 规则32 
自定义URL 转换器33 
HTTP 方法34 
唯一URL 35 
构造URL 36 
跳转和重定向36 
响应38 
静态文件管理40 
即插视图40 
蓝图43 
子域名43 
命令行接口44 
模板46 
Jinja2 46 
Mako 52 
使用MySQL 60 
安装MySQL 和驱动61 
设置应用账号和权限61 
用MySQLdb 写原生语句62 
事务提交和回滚63 
ORM 简介64 
使用SQLAlchemy 65 
使用ORM 67 
数据库关联69 
在Flask 中使用SQLAlchemy 71 
记录慢查询73 
理解Context 74 
本地线程74 
Werkzeug 的Local 75 
flask.request 76 
使用上下文77 
使用LocalProxy 替代g 80 
从零开始实现一个文件托管服务80 
首页84 
重新设置图片页86 
下载页87 
预览页87 
短链接页88 
第4 章Flask 开发进阶 89 
Flask 的信号机制89 
Blinker 的使用89 
Flask 中内置的信号90 
自定义信号92 
信号订阅的高级用法92 
Flask-Login 中的信号93 
Flask 的扩展95 
Flask-Script 95 
Flask-DebugToolbar 97 
Flask-Migrate 98 
Flask-WTF 100 
Flask-Security 102 
Flask-RESTful 109 
Flask-Admin 111 
Flask-Assets 115 
Werkzeug 的使用118 
DebuggedApplication 118 
数据结构120 
功能函数121 
密码加密122 
中间件123 
第5 章REST 和Ajax 127 
什么是REST 127 
RESTful API 设计指南128 
使用名词来表示资源128 
关注请求头129 
合理使用请求方法和状态码129 
正确地使用REST 130 
对输出的结果不再包装131 
不要做出错误的提示131 
使用嵌套对象序列化131 
版本132 
URI 失效和迁移132 
信息过滤132 
速度限制133 
缓存133 
并发控制134 
使用Ajax 135 
第6 章网站架构. 140 
Python 应用服务器140 
WSGI 协议141 
常见的WSGI 容器141 
Web 服务器Nginx 143 
Web 服务器与应用服务器的区别143 
为什么要选择Nginx 143 
安装Nginx 144 
使用Nginx 部署Flask 应用144 
缓存系统Memcached 149 
Libmc 安装配置150 
使用原生SQL 缓存152 
缓存更新策略157 
Memcached 使用的经验157 
键值对数据库Redis 157 
操作Redis 158 
Redis 应用场景159 
分片和集群管理168 
NoSQL 数据库MongoDB 169 
为什么使用NoSQL 169 
MongoDB 169 
使用pymongo 的例子171 
使用Mongoengine 的例子174 
MongoDB 实践经验176 
大型网站架构经验182 
缓存183 
负载均衡183 
高可用184 
业务拆分184 
集群184 
第7 章系统管理 186 
进程管理Supervisor 186 
Supervisor 组件187 
配置Supervisor 187 
使用Supervisor 190 
应用部署Fabric 193 
Fabric 应用接口194 
使用Fabric 管理Flask 应用197 
配置管理工具SaltStack 和Ansible 199 
SaltStack 200 
Ansible 207 
使用Psutil 213 
使用Sentry 收集错误信息215 
安装配置Sentry 216 
启动Sentry 218 
创建团队和项目218 
配置SDK 220 
使用StatsD、Graphite 等搭建Web 监控223 
配置Graphite 225 
使用StatsD 226 
配置Diamond 227 
发布指标项227 
使用Grafana 228 
使用Kenshin 232 
第8 章测试和持续集成 233 
使用unittest 和doctest 做测试233 
unittest 233 
doctest 236 
使用py.test 和mock 237 
py.test 237 
mock 241 
持续集成243 
使用Tox 集成248 
第9 章消息队列和Celery 250 
使用Beanstalkd 251 
使用Beanstalkc 252 
深入理解RabbitMQ 253 
AMQP 254 
虚拟主机258 
插件系统258 
通过Web 和REST API 管理RabbitMQ 259 
故障转移262 
使用Celery 262 
Celery 的架构263 
Celery 序列化265 
安装配置Celery 265 
从一个简单的例子开始265 
指定队列268 
使用任务调度269 
任务绑定、记录日志和重试270 
在Flask 应用中使用Celery 271 
深入理解Celery 274 
Celery 的依赖274 
任务调用277 
信号系统278 
Worker 管理279 
监控和管理Celery 280 
子任务281 
进阶篇:Celery 最佳实践283 
使用自动扩展283 
善用远程Debug 283 
合理安排任务周期284 
合理使用队列和优先级285 
保证业务逻辑的事务性285 
关闭你不想要的功能285 
使用阅后即焚模式285 
善用Prefetch 模式286 
善用工作流286 
第10 章服务化 288 
为什么需要服务化288 
RPC 框架289 
服务化带来的问题290 
微服务架构290 
使用ri 291 
定义IDL 文件292 
服务端实现294 
客户端实现297 
PIDL——豆瓣的服务化实践301 
PIDL 架构302 
第11 章数据处理 305 
使用MapReduce 做日志分析305 
使用MapReduce 305 
使用DPark 309 
分布式文件系统MooseFS 309 
Mesos 310 
配置DPark 环境311 
从WordCount 开始314 
PV & UV 统计316 
数据报表320 
发送带有样式和附件的邮件320 
创建xlsx 文件325 
使用Pandas 328 
Pandas 入门329 
读取MySQL 数据库332 
和Flask 应用集成332 
第12 章帮助工具. 336 
IPython 336 
IPython 交互模式338 
常用的Magic 函数338 
配置和自定义IPython 341 
IPython 的扩展系统342 
使用IPython 调试复杂代码343 
双进程模型344 
并行计算345 
Jupyter Notebook 347 
Notebook 格式350 
Notebook 格式转换和预览351 
为什么使用RequireJS 352 
在Notebook 里使用Echarts 353 
富显示355 
自定义JavaScript 和CSS 样式356 
使用nbextension 扩展Notebook 358 
在Notebook 上使用并行计算359 
调试和Debug 工具360 
了解Linux 服务器运行情况360 
性能测试366 
Python 程序性能分析369 
性能调优实践373 
进阶篇:定制基于IPython 的交互解释环境374 
进阶篇:豆瓣东西的Jupyter Notebook 实践376 
第13 章Python 并发编程383 
使用多线程385 
使用Gevent 392 
使用多进程399 
使用Future 406 
使用asyncio 408 
async/await 409 
Future 412 
使用aiohttp 414 
使用队列416 
第14 章Python 进阶 418 
使用标准库模块418 
errno 419 
subprocess 420 
contextlib 421 
glob 424 
operator 424 
functools 426 
collections 428 
Python 语法最佳实践432 
命名434 
目录xxix 
使用join 连接字符串435 
EAFP vs LBYL 435 
定义类的__str__/__repr__ 方法436 
优美的Python 437 
从Python 3 移植439 
partialmethod 439 
singledispatch 440 
suppress 442 
redirect_stdout/redirect_stderr 443 
使用CFFI/Cython 编写Python 扩展444 
使用CFFI 444 
使用Cython 447 
进阶篇:使用PyObjC 发送通知451 
第15 章Web 开发项目实践455 
Web 项目经验总结455 
开发流程455 
使用合理的项目结构456 
关注代码复杂度457 
代码质量保证工具457 
Pycodestyle 对中文缩进的处理458 
Flake8 459 
Pylint 460 
其他代码质量保证工具461 
使用AST 做静态检查461 
其他静态检查工具467 
编写Flake8 扩展468 
代码评审的意义470 
作为被评审者471 
作为评审者472 
评审的标准473 
点击展开 点击收起

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP