注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信Python Web開(kāi)發(fā)實(shí)戰(zhàn)

Python Web開(kāi)發(fā)實(shí)戰(zhàn)

Python Web開(kāi)發(fā)實(shí)戰(zhàn)

定 價(jià):¥105.00

作 者: 董偉明
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 計(jì)算機(jī)?網(wǎng)絡(luò) 網(wǎng)頁(yè)制作

購(gòu)買這本書(shū)可以去


ISBN: 9787121297335 出版時(shí)間: 2016-09-01 包裝:
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《Python Web開(kāi)發(fā)實(shí)戰(zhàn)》按照一個(gè)Web 產(chǎn)品從無(wú)到有、從簡(jiǎn)單變復(fù)雜、從基礎(chǔ)到進(jìn)階的過(guò)程,多角度、全方位講述了Python Web 開(kāi)發(fā)。內(nèi)容涉及Web 框架、測(cè)試、數(shù)據(jù)庫(kù)、消息隊(duì)列、服務(wù)化、持續(xù)集成等,把網(wǎng)站工程的全貌展現(xiàn)在讀者的眼前,從其中可以了解Web 工程從開(kāi)發(fā)到上線的完整流程。另外,作者對(duì)當(dāng)前現(xiàn)在正在流行的技術(shù)或工具,如Flask、Celery、Jupyter、Supervisor、SaltStack、Pandas 等都有較為詳細(xì)的闡述,可作為技術(shù)選型時(shí)的參考。對(duì)于Web 開(kāi)發(fā)者、使用Python 語(yǔ)言的運(yùn)維工程師和運(yùn)維開(kāi)發(fā)工程師、想提高Python 技能的開(kāi)發(fā)者、想了解Python Web 開(kāi)發(fā)的其他開(kāi)發(fā)者,《Python Web開(kāi)發(fā)實(shí)戰(zhàn)》都適合閱讀。

作者簡(jiǎn)介

  董偉明,豆瓣高級(jí)產(chǎn)品開(kāi)發(fā)工程師,主要負(fù)責(zé)豆瓣讀書(shū)、電影、音樂(lè)、東西等產(chǎn)品線。從2011年開(kāi)始接觸Python, 從運(yùn)維、運(yùn)維開(kāi)發(fā)到現(xiàn)在的Web開(kāi)發(fā),積累了豐富的運(yùn)維和開(kāi)發(fā)經(jīng)驗(yàn),作者積極參與開(kāi)源項(xiàng)目,給IPython、pip及Python標(biāo)準(zhǔn)庫(kù)等貢獻(xiàn)過(guò)代碼。這本書(shū)將作者這些年使用Python進(jìn)行Web開(kāi)發(fā),對(duì)各方面知識(shí)的理解和積累的經(jīng)驗(yàn)進(jìn)行梳理和總結(jié)。

圖書(shū)目錄

第1 章初識(shí)Python Web 開(kāi)發(fā)1
Python Web 開(kāi)發(fā)介紹1
為什么應(yīng)該選擇Python 作為Web 開(kāi)發(fā)語(yǔ)言2
選擇Python 2 還是Python 3 2
Web 框架介紹3
主流Web 框架3
小眾的Web 框架5
選擇Web 框架時(shí)應(yīng)遵循的原則5
第2 章Web 開(kāi)發(fā)前的準(zhǔn)備7
搭建一個(gè)能運(yùn)行的虛擬機(jī)環(huán)境7
安裝VirtualBox 8
使用Vagrant 安裝8
使用Docker 安裝10
包管理和虛擬環(huán)境13
包管理13
使用pip 替代easy_install 13
distribute、distutils 和setuptools 14
entry_points 15
插件系統(tǒng)16
虛擬環(huán)境17
virtualenv 18
virtualenv 定制化18
virtualenvwrapper 21
virtualenv-burrito 23
autoenv 24
進(jìn)階篇:pip 高級(jí)用法25
命令自動(dòng)補(bǔ)全25
普通用戶安裝25
編輯模式25
使用devapi 作為緩存代理服務(wù)器26
PYPI 的完全鏡像27
第3 章Flask Web 開(kāi)發(fā) 28
Flask 入門(mén)29
安裝Flask 29
從Hello World 開(kāi)始29
配置管理31
調(diào)試模式32
動(dòng)態(tài)URL 規(guī)則32
自定義URL 轉(zhuǎn)換器33
HTTP 方法34
唯一URL 35
構(gòu)造URL 36
跳轉(zhuǎn)和重定向36
響應(yīng)38
靜態(tài)文件管理40
即插視圖40
藍(lán)圖43
子域名43
命令行接口44
模板46
Jinja2 46
Mako 52
使用MySQL 60
安裝MySQL 和驅(qū)動(dòng)61
設(shè)置應(yīng)用賬號(hào)和權(quán)限61
用MySQLdb 寫(xiě)原生語(yǔ)句62
事務(wù)提交和回滾63
ORM 簡(jiǎn)介64
使用SQLAlchemy 65
使用ORM 67
數(shù)據(jù)庫(kù)關(guān)聯(lián)69
在Flask 中使用SQLAlchemy 71
記錄慢查詢73
理解Context 74
本地線程74
Werkzeug 的Local 75
flask.request 76
使用上下文77
使用LocalProxy 替代g 80
從零開(kāi)始實(shí)現(xiàn)一個(gè)文件托管服務(wù)80
首頁(yè)84
重新設(shè)置圖片頁(yè)86
下載頁(yè)87
預(yù)覽頁(yè)87
短鏈接頁(yè)88
第4 章Flask 開(kāi)發(fā)進(jìn)階  89
Flask 的信號(hào)機(jī)制89
Blinker 的使用89
Flask 中內(nèi)置的信號(hào)90
自定義信號(hào)92
信號(hào)訂閱的高級(jí)用法92
Flask-Login 中的信號(hào)93
Flask 的擴(kuò)展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
數(shù)據(jù)結(jié)構(gòu)120
功能函數(shù)121
密碼加密122
中間件123
第5 章REST 和Ajax  127
什么是REST 127
RESTful API 設(shè)計(jì)指南128
使用名詞來(lái)表示資源128
關(guān)注請(qǐng)求頭129
合理使用請(qǐng)求方法和狀態(tài)碼129
正確地使用REST 130
對(duì)輸出的結(jié)果不再包裝131
不要做出錯(cuò)誤的提示131
使用嵌套對(duì)象序列化131
版本132
URI 失效和遷移132
信息過(guò)濾132
速度限制133
緩存133
并發(fā)控制134
使用Ajax 135
第6 章網(wǎng)站架構(gòu).  140
Python 應(yīng)用服務(wù)器140
WSGI 協(xié)議141
常見(jiàn)的WSGI 容器141
Web 服務(wù)器Nginx 143
Web 服務(wù)器與應(yīng)用服務(wù)器的區(qū)別143
為什么要選擇Nginx 143
安裝Nginx 144
使用Nginx 部署Flask 應(yīng)用144
緩存系統(tǒng)Memcached 149
Libmc 安裝配置150
使用原生SQL 緩存152
緩存更新策略157
Memcached 使用的經(jīng)驗(yàn)157
鍵值對(duì)數(shù)據(jù)庫(kù)Redis 157
操作Redis 158
Redis 應(yīng)用場(chǎng)景159
分片和集群管理168
NoSQL 數(shù)據(jù)庫(kù)MongoDB 169
為什么使用NoSQL 169
MongoDB 169
使用pymongo 的例子171
使用Mongoengine 的例子174
MongoDB 實(shí)踐經(jīng)驗(yàn)176
大型網(wǎng)站架構(gòu)經(jīng)驗(yàn)182
緩存183
負(fù)載均衡183
高可用184
業(yè)務(wù)拆分184
集群184
第7 章系統(tǒng)管理 186
進(jìn)程管理Supervisor 186
Supervisor 組件187
配置Supervisor 187
使用Supervisor 190
應(yīng)用部署Fabric 193
Fabric 應(yīng)用接口194
使用Fabric 管理Flask 應(yīng)用197
配置管理工具SaltStack 和Ansible 199
SaltStack 200
Ansible 207
使用Psutil 213
使用Sentry 收集錯(cuò)誤信息215
安裝配置Sentry 216
啟動(dòng)Sentry 218
創(chuàng)建團(tuán)隊(duì)和項(xiàng)目218
配置SDK 220
使用StatsD、Graphite 等搭建Web 監(jiān)控223
配置Graphite 225
使用StatsD 226
配置Diamond 227
發(fā)布指標(biāo)項(xiàng)227
使用Grafana 228
使用Kenshin 232
第8 章測(cè)試和持續(xù)集成 233
使用unittest 和doctest 做測(cè)試233
unittest 233
doctest 236
使用py.test 和mock 237
py.test 237
mock 241
持續(xù)集成243
使用Tox 集成248
第9 章消息隊(duì)列和Celery  250
使用Beanstalkd 251
使用Beanstalkc 252
深入理解RabbitMQ 253
AMQP 254
虛擬主機(jī)258
插件系統(tǒng)258
通過(guò)Web 和REST API 管理RabbitMQ 259
故障轉(zhuǎn)移262
使用Celery 262
Celery 的架構(gòu)263
Celery 序列化265
安裝配置Celery 265
從一個(gè)簡(jiǎn)單的例子開(kāi)始265
指定隊(duì)列268
使用任務(wù)調(diào)度269
任務(wù)綁定、記錄日志和重試270
在Flask 應(yīng)用中使用Celery 271
深入理解Celery 274
Celery 的依賴274
任務(wù)調(diào)用277
信號(hào)系統(tǒng)278
Worker 管理279
監(jiān)控和管理Celery 280
子任務(wù)281
進(jìn)階篇:Celery 最佳實(shí)踐283
使用自動(dòng)擴(kuò)展283
善用遠(yuǎn)程Debug 283
合理安排任務(wù)周期284
合理使用隊(duì)列和優(yōu)先級(jí)285
保證業(yè)務(wù)邏輯的事務(wù)性285
關(guān)閉你不想要的功能285
使用閱后即焚模式285
善用Prefetch 模式286
善用工作流286
第10 章服務(wù)化  288
為什么需要服務(wù)化288
RPC 框架289
服務(wù)化帶來(lái)的問(wèn)題290
微服務(wù)架構(gòu)290
使用ri 291
定義IDL 文件292
服務(wù)端實(shí)現(xiàn)294
客戶端實(shí)現(xiàn)297
PIDL——豆瓣的服務(wù)化實(shí)踐301
PIDL 架構(gòu)302
第11 章數(shù)據(jù)處理  305
使用MapReduce 做日志分析305
使用MapReduce 305
使用DPark 309
分布式文件系統(tǒng)MooseFS 309
Mesos 310
配置DPark 環(huán)境311
從WordCount 開(kāi)始314
PV & UV 統(tǒng)計(jì)316
數(shù)據(jù)報(bào)表320
發(fā)送帶有樣式和附件的郵件320
創(chuàng)建xlsx 文件325
使用Pandas 328
Pandas 入門(mén)329
讀取MySQL 數(shù)據(jù)庫(kù)332
和Flask 應(yīng)用集成332
第12 章幫助工具.   336
IPython 336
IPython 交互模式338
常用的Magic 函數(shù)338
配置和自定義IPython 341
IPython 的擴(kuò)展系統(tǒng)342
使用IPython 調(diào)試復(fù)雜代碼343
雙進(jìn)程模型344
并行計(jì)算345
Jupyter Notebook 347
Notebook 格式350
Notebook 格式轉(zhuǎn)換和預(yù)覽351
為什么使用RequireJS 352
在Notebook 里使用Echarts 353
富顯示355
自定義JavaScript 和CSS 樣式356
使用nbextension 擴(kuò)展Notebook 358
在Notebook 上使用并行計(jì)算359
調(diào)試和Debug 工具360
了解Linux 服務(wù)器運(yùn)行情況360
性能測(cè)試366
Python 程序性能分析369
性能調(diào)優(yōu)實(shí)踐373
進(jìn)階篇:定制基于IPython 的交互解釋環(huán)境374
進(jìn)階篇:豆瓣?yáng)|西的Jupyter Notebook 實(shí)踐376
第13 章Python 并發(fā)編程383
使用多線程385
使用Gevent 392
使用多進(jìn)程399
使用Future 406
使用asyncio 408
async/await 409
Future 412
使用aiohttp 414
使用隊(duì)列416
第14 章Python 進(jìn)階 418
使用標(biāo)準(zhǔn)庫(kù)模塊418
errno 419
subprocess 420
contextlib 421
glob 424
operator 424
functools 426
collections 428
Python 語(yǔ)法最佳實(shí)踐432
命名434
目錄xxix
使用join 連接字符串435
EAFP vs LBYL 435
定義類的__str__/__repr__ 方法436
優(yōu)美的Python 437
從Python 3 移植439
partialmethod 439
singledispatch 440
suppress 442
redirect_stdout/redirect_stderr 443
使用CFFI/Cython 編寫(xiě)Python 擴(kuò)展444
使用CFFI 444
使用Cython 447
進(jìn)階篇:使用PyObjC 發(fā)送通知451
第15 章Web 開(kāi)發(fā)項(xiàng)目實(shí)踐455
Web 項(xiàng)目經(jīng)驗(yàn)總結(jié)455
開(kāi)發(fā)流程455
使用合理的項(xiàng)目結(jié)構(gòu)456
關(guān)注代碼復(fù)雜度457
代碼質(zhì)量保證工具457
Pycodestyle 對(duì)中文縮進(jìn)的處理458
Flake8 459
Pylint 460
其他代碼質(zhì)量保證工具461
使用AST 做靜態(tài)檢查461
其他靜態(tài)檢查工具467
編寫(xiě)Flake8 擴(kuò)展468
代碼評(píng)審的意義470
作為被評(píng)審者471
作為評(píng)審者472
評(píng)審的標(biāo)準(zhǔn)473

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)