稀酷客

 找回密码
 加入稀酷客

只需一步,快速开始

关注微信
免费下载

[电子图书] 《App后台开发运维和架构实践》.(曾健生).[PDF]@ckook

[推广链接]
立即下载
by : a664904699 | QQ | 发表于 2017-6-15 09:39:26 | 查看: 253|回复: 1
《App后台开发运维和架构实践》.(曾健生).[PDF]@ckook Android

《App 后台开发运维和架构实践》通过阐述移动互联网中 App 后台开发的特点,梳理了 App 后台开发中会遇到的各个技术点,给出了生产环境常用软件的实战运维经验总结,剖析了常见 App 后台技术架构设计,为读者呈现一幅包括技术选型、后台搭建、性能优化、运维实践、架构设计的 App 后台开发蓝图。
本书的目标读者是对技术感兴趣的产品经理、刚入行的 App 后台开发人员,以及从传统软件行业转向 App 后台开发的技术人员。
作译者

曾健生,曾任职于广州市赢靖信息科技有限公司,负责社交App后台研发。目前就职Bmob后端云从事云服务方面的研发工作。

目录

前言 5
致谢 7
目录 8
第1 章 App 后台入门 16
1.1 App 后台的功能 16
1.2 App 后台架构 17
1.3 App 和App 后台的通信 19
1.4 App 后台和Web 后端的区别 22
1.5 选择服务器 23
1.6 选择编程语言 24
1.7 快速入门新技术 25
1.7.1 思维模式 25
1.7.2 4 种快速入门新技术的方法 25
1.8 App 是怎样炼成的 26
1.8.1 项目启动阶段 26
1.8.2 研发阶段 28
1.8.3 测试阶段 29
1.8.4 正式推出阶段 29
1.9 最适合App 的开发模式——敏捷开发 30
1.9.1 Sprint 计划会议 31
1.9.2 日常开发 32
1.9.3 每日例会 33
1.9.4 测试和修复Bug 33
1.9.5 评审会议 34
1.9.6 回顾会议 34
1.9.7 及时反馈 34
1.9.8 总结 34
第2 章 App 后台基础技术 35
2.1 从App 业务逻辑中提炼API 接口 35
2.1.1 业务逻辑思维导图 36
2.1.2 功能—业务逻辑思维导图 37
2.1.3 基本功能模块关系 40
2.1.4 功能模块接口UML(设计出API) 41
2.1.5 编写在线API 测试文档 42
2.1.6 设计稿标注API 45
2.2 设计API 的要点 46
2.3 如何选择合适的数据库产品 50
2.3.1 Redis,MongoDB,MySQL 读写数据的区别 50
2.3.2 Redis,MongoDB,MySQL 查找数据的区别 50
2.3.3 Redis,MongoDB,MySQL 适用场景 51
2.4 如何选择消息队列软件 52
2.4.1 为什么要用消息队列? 52
2.4.2 消息队列的工作流程 53
2.4.3 常见的一些消息队列产品 54
2.5 使用分布式服务实现业务的复用 54
2.5.1 巨无霸系统的危害 55
2.5.2 远程服务的优点 56
2.5.3 远程服务的实现 56
2.6 搜索技术入门 59
2.6.1 一个简单的搜索例子 59
2.6.2 搜索技术的基本原理 60
2.6.3 常见的开源搜索软件介绍 62
2.7 定时任务 65
2.7.1 Linux 定时任务Crontab 65
2.7.2 在后台轻松管理各种各样的定时任务 66
第3 章 App 后台核心技术 68
3.1 用户验证方案 68
3.1.1 使用HTTPS 协议 68
3.1.2 基本的用户登录方案 69
3.2 App 通信安全 72
3.2.1 URL 签名 72
3.2.2 AES 对称加密 74
3.2.3 更进一步的通信安全 77
3.3 短信服务 78
3.3.1 App 后台发送短信简介 78
3.3.2 选择短信平台 78
3.3.3 建立可靠的短信服务 79
3.4 处理表情的一些技巧 80
3.4.1 表情在MySQL 的存储 80
3.4.2 当文字中夹带表情的处理 80
3.4.3 Openfire 中发送表情引起连接断开的问题 81
3.5 高效更新数据 82
3.5.1 内容的推拉 83
3.5.2 数据增量更新策略 84
3.6 图片处理 90
3.7 视频处理 91
3.7.1 FFmpeg 简介 91
3.7.2 后台调用FFmpeg 的功能 92
3.8 获取APK 和IPA 文件里的资源 94
3.8.1 Android 的APK 文件 94
3.8.2 iOS 的IPA 文件 96
3.9 文件系统 98
3.9.1 文件云存储服务 99
3.9.2 架设文件系统 99
3.10 ELK 日志分析平台 101
3.10.1 基本模块 101
3.10.2 日志分析流程 102
3.11 Docker 构建一致的开发环境 103
3.11.1 Docker 原理 103
3.11.2 搭建一致的开发环境 104
第4 章 Linux——App 后台应用最广泛的系统 107
4.1 基本的系统优化 107
4.1.1 开机自启动服务优化 107
4.1.2 增大文件描述符 109
4.2 常用的命令 110
4.2.1 全面了解系统资源情况——top 110
4.2.2 显示进程状态——ps 115
4.2.3 查看网络相关信息——netstat 116
4.2.4 查看某个进程打开的所有文件——lsof 118
4.2.5 跟踪数据到达主机所经路由——traceroute 119
4.2.6 文件下载/上传工具——“ssh secure shell client”和“lrzsz” 119
4.2.7 查看程序的依赖库——LD_DEBUG 121
4.2.8 进程管理利器——superivisor 122
4.3 故障案例分析 125
第5 章 Nginx——App 后台HTTP 服务的利器 126
5.1 简介 126
5.2 基本原理 127
5.2.1 工作模型 127
5.2.2 进程解析 128
5.3 常用配置 129
5.3.1 Nginx 的全局配置 130
5.3.2 event 配置 130
5.3.3 http 配置 131
5.3.4 负载均衡配置 133
5.3.5 server 虚拟主机配置 134
5.3.6 location 配置 134
5.3.7 HTTPS 的配置 135
5.3.8 下载App 的配置 136
5.3.9 生产环境中修改配置的良好习惯 136
5.4 性能统计 136
5.5 实现负载均衡的方案 137
5.6 用Nginx 处理业务逻辑 139
第6 章 MySQL——App 后台最常用的数据库 140
6.1 基本架构 140
6.2 选择版本 141
6.3 配置文件详解 142
6.4 软件优化 144
6.4.1 正确使用MyISAM和InnoDB 存储引擎 144
6.4.2 正确使用索引 145
6.4.3 避免使用select * 146
6.4.4 字段尽可能地设置为NOT NULL 146
6.5 硬件优化 147
6.5.1 增加物理内存 147
6.5.2 增加应用缓存 147
6.5.3 用固态硬盘代替机械硬盘 148
6.5.4 SSD 硬盘+SATA 硬盘混合存储方案 149
6.6 架构优化 149
6.6.1 分表 150
6.6.2 读写分离 151
6.6.3 分库 153
6.7 SQL 慢查询分析 156
6.8 云数据库简介 157
6.9 灵活的存储结构 158
6.10 故障排除案例 159
第7 章 Redis——App 后台高性能的缓存系统 160
7.1 Redis 简介 160
7.2 Redis 的常用数据结构及应用场景 161
7.2.1 string——存储简单的数据 162
7.2.2 hash——存储对象的数据 163
7.2.3 list——模拟队列操作 165
7.2.4 set——无序且不重复的元素集合 167
7.2.5 sorted set——有序且不重复的元素集合 168
7.3 内存优化 170
7.3.1 监控内存使用的状况 170
7.3.2 优化存储结构 170
7.3.3 限制使用的最大内存 172
7.3.4 设置过期时间 172
7.4 集群 174
7.4.1 客户端分片 174
7.4.2 Twemproxy 175
7.4.3 Codis 176
7.4.4 Redis 3.0 集群 179
7.4.5 云服务器上的集群服务 180
7.5 持久化 180
7.5.1 RDB 181
7.5.2 AOF 182
7.6 故障排除案例 184
第8 章 MongoDB——App 后台新兴的数据库 185
8.1 简介 185
8.2 核心机制解析 186
8.2.1 MMAP(内存文件映射) 186
8.2.2 Journal 日志 187
8.3 入门 187
8.3.1 基本操作 188
8.3.2 数组操作 190
8.3.3 实例演示MySQL 和MongoDB 设计数据库的区别 191
8.4 高可用集群 195
8.4.1 主从 195
8.4.2 副本集 196
8.4.3 分片 198
8.5 LBS——地理位置查询 200
8.6 MongoDB 3.0 版本的改进 205
8.6.1 灵活的存储架构 206
8.6.2 性能提升7~10 倍 206
8.6.3 存储空间最多减少80% 207
8.6.4 运维成本最多降低95% 207
第9 章 App 后台架构剖析 208
9.1 聊天App 后台架构 208
9.1.1 移动互联网的网络特性 209
9.1.2 协议 212
9.1.3 整体架构 218
9.2 社交App 后台架构 221
9.2.1 基本表结构 222
9.2.2 推拉模式 223
9.2.3 数据库架构的演进 225
9.2.4 缓存架构的演进 229
9.3 LBS App 后台架构 234
9.3.1 地理坐标详解 235
9.3.2 查找附近的人 236
9.3.3 基于MongoDB 的LBS 后台架构演进 240
9.4 推送服务器后台架构 242
9.4.1 Android 推送 242
9.4.2 iOS 推送 248
9.5 获得更多App 后台架构资料 252
第10 章 App 后台架构的演进 255
10.1 架构的核心要素 255
10.1.1 高性能 256
10.1.2 高可用 258
10.1.3 可伸缩 261
10.1.4 可扩展 262
10.1.5 安全性 262
10.2 架构选型的要点 262
10.2.1 用成熟稳定的开源软件 263
10.2.2 尽可能使用云服务 264
10.3 架构的演进 268
10.3.1 单机部署 269
10.3.2 分布式部署 275
10.3.3 服务化 277
10.4 架构的特点 279
10.4.1 每个App 的后台架构不会完全一样 279
10.4.2 架构的演进是由业务驱动的 279
10.4.3 架构不是为了炫耀技术 280


游客,本付费内容需要支付 2酷币 才能浏览  购买

微信下载

【拿出手机】->【解锁】->【打开微信】->【扫描左侧<-的二维码】->【关注稀酷客的微信】->【发送帖子的tid号】->【获得密匙】->【将密匙填到下面的框框中】->【提交】->【高速下载】  如何下载?(图文教程)    

对着微信输入: 15351   返回密匙 : 

打赏列表

~~~还没有人打赏~~~
回复

使用道具 举报

by : SVIP8 | QQ | 发表于 2017-6-16 09:45:43
好像很给力的样子
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入稀酷客  

本版积分规则

点击这里给我发消息 |Archiver|手机版|小黑屋|ckook ( 冀ICP备14004526号-1 )

GMT+8, 2017-7-21 16:28 , Processed in 1.265625 second(s), 44 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表