构建可扩展的Web站点
构建可扩展的Web站点
Cal Henderson
出版时间:2008年01月
掌握建立和架构可快速扩展应用程序的窍门——不再为昂贵的价格头痛不已,也无需与企业应用程序服务器、专有编程产品及数据库产品签订服务级别的协议。来自flickr.com主力开发人员的杰作——《构建可扩展的Web站点》,为Web开发人员提供了种种简单实用的技巧,以建立一个访问者喜爱的快速响应的Web站点。
建立一个流行的站点不仅需要运转快速的硬件设备、大量内存和硬盘空间,还要考虑怎样让站点随着时间推移而不断发展;怎样让有不同期望的访问者访问到同样的资源;怎样建立一个大家共同工作的开发团队,同时保证不会给站点访问者带来新问题,也不会造成相互之间的干扰等问题。
不管你是基于PHP脚本开始建立一个新的站点,还是正在维护一个已有的站点,这本书都能在以下几个方面给你提供帮助:
* 设计应用程序底层的软件体系结构
* 选择使用一个让开发人员、设计人员和访问者都感到愉快的软件开发环境
* 保持应用程序数据的纯净和安全
* 呈现信息给来自全世界的访问者
* 整合电子邮件到你的应用程序中
* 规划硬件的购买和主机服务选项,恰到好处地满足你的需求,又避免掏空你的钱包
* 分区数据库,建立分布式数据库以支持大型数据集和并发事件
* 监测你的应用程序,发现并消除瓶颈
* 提供公开的API,利用其他提供者的服务提升站点的影响和功能
不管你是正在建立一个希望将来发展壮大的小型Web站点,还是早已拥有一个需要维护的大型系统,《构建可扩展的Web站点》都可谓一个灵感之源,会带给你很多让事情简单运作的方法和技巧。
Cal Henderson来自英格兰,是照片共享服务Flickr的工程经理,目前在美国加州森尼维耳市的Yahoo!公司工作。在创建Flickr应用程序之前,Cal Henderson在英国一家媒体公司Emap担任一个特殊Web项目的技术主管。
  1. 前言 I
  2. 第1章:绪论 1
  3. 什么是Web应用程序 1
  4. 如何构建你的Web应用程序 2
  5. 什么是体系结构 3
  6. 怎样开始呢 4
  7. 第2章:Web应用程序体系结构 6
  8. 层次化软件体系结构 6
  9. 层次化技术 9
  10. 软件接口设计 11
  11. 从A到B 14
  12. 软件/硬件的划分 15
  13. 硬件平台 16
  14. 硬件平台的增长 19
  15. 硬件冗余 22
  16. 网络 23
  17. 语言,技术和数据库 25
  18. 第3章:开发环境 27
  19. 三大规则 27
  20. 使用源码控制 28
  21. 单步构建 46
  22. 问题跟踪 55
  23. 扩展开发模型 63
  24. 编码规范 64
  25. 测试 66
  26. 第4章:国际化、本地化和Unicode 69
  27. 国际化和本地化 70
  28. Unicode简述 73
  29. UTF-8编码 79
  30. 基于UTF-8的Web应用程序 80
  31. 在PHP中使用UTF-8 82
  32. 在其他语言中使用UTF-8 83
  33. 在MySQL中使用UTF-8 84
  34. 在电子邮件中使用UTF-8 85
  35. 在JavaScript中使用UTF-8 87
  36. 在API中使用UTF-8 89
  37. 第5章:数据一致性和安全性 90
  38. 数据完整性策略 90
  39. 好的、有效的和无效的 92
  40. 过滤UTF-8数据 93
  41. 过滤控制字符 98
  42. 过滤HTML 99
  43. 跨站脚本攻击 102
  44. SQL注入攻击 110
  45. 第6章:电子邮件 117
  46. 接收电子邮件 117
  47. 在应用程序中加入电子邮件功能 119
  48. MIME格式 121
  49. 解析简单的MIME电子邮件 123
  50. 解析UU编码的附件 124
  51. TNEF附件 126
  52. 无线通信运营商会讨厌你 128
  53. 字符集与编码 130
  54. 识别你的用户 132
  55. 单元测试 134
  56. 第7章:远程服务 136
  57. 远程服务小组 136
  58. 套接字 137
  59. 使用HTTP 140
  60. 远程服务冗余性 145
  61. 异步系统 149
  62. XML交换 153
  63. 轻型协议 157
  64. 第8章:瓶颈 162
  65. 找出瓶颈 162
  66. CPU的使用 168
  67. I/O 175
  68. 内存和Swap 185
  69. 外部服务和黑盒 188
  70. 数据库 188
  71. 第9章:扩展Web应用程序 202
  72. 扩展之谜 202
  73. 网络扩展 211
  74. 扩展PHP 212
  75. 负载平衡 214
  76. 扩展MySQL 227
  77. MySQL复制 232
  78. 数据库分区 240
  79. 扩展大型数据库 244
  80. 存储扩展 246
  81. 扩展综述 256
  82. 第10章:统计数据、监测与警告 257
  83. 跟踪Web统计数据 257
  84. 应用程序监测 267
  85. 警告 285
  86. 第11章:APIs 288
  87. 数据订阅源 288
  88. 移动内容 300
  89. Web服务 304
  90. API传输方式 307
  91. API的滥用 315
  92. 认证 318
  93. 展望未来 321
  94. 索引 323
书名:构建可扩展的Web站点
作者:Cal Henderson
出版时间:2008年01月
书号:978-7-121-06079-3
原版书出版商:O'Reilly Media
Cal Henderson
 
Cal Henderson来自英格兰,是照片共享服务Flickr的工程经理,目前在美国加州森尼维耳市的Yahoo!公司工作。在创建Flickr应用程序之前,Cal Henderson在英国一家媒体公司Emap担任一个特殊Web项目的技术主管。