概述
本人从去年7月份开始持续到今年2月份,终于写完了书籍《App后台开发运维和架构实践》,这是一本教导刚入行的同学快速学习App后台开发的书籍。
你是否遇到下面的情景?
接到新开发任务
这些功能应该怎么做?这些功能别人是怎么实现,不了解,也完全没头绪。
调研新技术
市面上有什么多技术, app后台到底采用哪个技术好呢、?每个技术的优缺点是什么?原理是什么?这真的适合我们的项目吗?怎么把这些技术以通俗易懂的方式说出来,以说服上司采用这门技术?
设计App后台架构
App后台架构应该怎样设计?有哪些主要的模块,每个模块有哪些技术选型?为了保证系统可工作,怎么在高可用,高并发,安全性能方面衡量?
《App后台开发运维和架构实践》 这本书解决什么问题?
在学校里,老师没有教怎么开发App后台,在众多的图书中,没有一本书讲述如何开发一个App后台,App后台用到了哪些技术,每个技术的应用场景和基本原理是什么? 本书的出现,弥补上面的空白。
在App应用如潮水般涌现的今天,无论是刚入行的后台开发新手,还是已经工作3,4年的高级工程师,也必须为实现App后台的各个功能而在技术集市中寻找符合自身口味的那道菜,然而一个App需要实现的后台技术那么多,研发的周期那么短,人手又这么少,只能日夜加班,然而做出来的产品却不尽人意……
大量成熟开源技术和第三方服务涌现的今天,笔者一下推崇的架构原则是“尽量使用成熟可靠的云服务和开源软件,自身只专注于业务逻辑”。在技术的选择上,借力于第三方,减少开发的时候,加快产品的迭代周期。对于某项具体的技术必须掌握下面两点:
- 技术的应用场景。
- 技术的基本原理。
本书针对市面上常见技术,详细描述其应用场景和基本原理,助广大的开发者加快开发的速度。
阅读《App后台开发运维和架构实践》后的收益
本书专注于开拓大家的眼界,并教导大家用“正确的方式”来使用各种已有的工具。如今我们虽然有海量的框架和类库,有突飞猛进的云服务,但是只要没有掌握“正确的应用方式”,就无法保证“把事情做对”,就只能开发出某几个方面明显不及格的产品。
古代练武的人,未必人人都要做武林高手,许多人只是把十八般兵器都耍熟,就已经足够防贼、保平安,受益匪浅了。同样的道理,对今天的App 后台开发人员来说,把基本的点都踩到、踩准,把系统拎到及格线以上,避免明显的缺憾,对大多数场景来说,已经是意义重大了。
(本段摘自余晟大哥为本书写的推荐序)
《App 后台开发运维和架构实践》的内容简介
第1-3章:App后台常用技术的讲解
这三章是重新整理了笔者在网络上发表的文章,给文章配上了图,根据网络上的反馈重写了App的通讯安全这部分章节。
第4-8章:App后台常用软件的运维和相关原理
Linux,Nginx,Mysql这3个章节是讲了笔者认为重要的运维知识。
Redis这章根据自身的开发经验,讲述redis中string,hash,list,set,sorted-set这五种数据模型在App后台常见的应用场景,同时讲述了Redis中使用较多的内存优化和集群方面的知识。
Mongodb这章讲述了在生产环境中怎么应用文档模型和LBS,同时讲述了Mongodb很重要的高可用集群知识。
第9章:四种类型App的后台架构
聊天App后台架构: 聊天协议的设计(包括微信,陌陌等App聊天协议的设计),基本架构。
社交App后台架构:社交中常见的推拉模式讲解,数据库的设计和优化。
LBS App后台架构:LBS的基本原理,如何实现查找附近的人,基于MongoDB的LBS后台架构演进。
推送服务器后台架构:android推送中以gopush这个开源的分布式推送软件为例,讲述了android推进是如何工作。ios推进详细分析了苹果的推送协议apns,以及开源软件是如何基于apns协议推送消息,消息重发的机制。
第10章:App后台开发运维和架构实践
结合笔者参与过的App项目的后台架构的经验,讲述架构的核心要素、架构选型的特点,以及App后台架构的演进。
《App 后台开发运维和架构实践》的评价
何少岳 Bmob后端云CEO
作者以多年实战经验,详细阐述了后端开发,尤其是移动互联网后端开发中涉及的方方面面的技术和经验,书中推崇的“尽量使用成熟可靠的云服务和开源软件,自身只专注于业务逻辑”的理念在社会分工不断细化的今天,具有很好的借鉴意义。强烈推荐此书给希望或已经涉足后端开发、移动互联网开发和创业的朋友们,不但可脑补和扩宽知识面,还有助于大家少走弯路。
胡亚平 UCloud综合研发中心高级工程师
随着移动互联网的快速发展, 各种APP应用弥漫整个市场。而为这些APP提供最基本的支撑就是移动APP开发技术了。本书作者从“0”到“1”,利用自身的项目实战经验介绍移动APP后台开发架构设计和基本日常运维处理,非常适合刚踏入移动APP后台开发的朋友们借鉴,一起进入到这个浩瀚的领域中探索学习。
毛剑 bilibili研发总监(也是本书中介绍开源推送软件“gopush-cluster”的主要开发者)
作者对互联网常用的几种IM协议有比较深入的讲解,介绍了使用版本标识的方案实现至少收到一次消息,保证消息到达率的方案。gopush作为golang推送服务器的开源实现,作者也给过不少建议和优化,在此真心感谢作者对开源软件的关注和支持。goim作为gopush的简化和升级版,性能更加强大,强烈推荐读者了解并投入到goim的开源社区中。
余晟 软件开发老兵,微信公众号“余晟以为”
软件开发工具的成长速度远远超过开发人员的成长速度,这是现实。
每个月,甚至每天,我们都可以见到新的类库、框架、工具、语言。它们或者极大地降低了开发的成本,或者极大地提升了开发的效率。
随之而来的问题就是,如何让开发人员妥善地运用好这些工具?
曾经有好几个做开发的同事跟我说:写软件谁不会?从网上找些开源的类和项目来改改就是了。也确实充斥着这种“改改就是”的工作思维。介绍某个类库和项目如何安装和调用,这样的文章俯拾皆是。
但是每种工具究竟有什么优缺点,适合用来解决什么问题,需要以怎样的方式来解决问题,因此还需要做怎样的权衡……这样的问题基本没有人考虑,但是,它们又很重要。
这有点像练武。斧钺钩叉、刀枪剑戟,制造手艺日渐精良;可是习武的人心里没有分寸,该劈的时候提了枪,该刺的时候抡了斧…… 耍几下花把式还算足够,真正打起来哪能取胜?
我在面试中经常的问题是:NoSQL分为哪几种类型?每种类型的典型代表和应用场景是什么?要知道,用过MongoDB和Redis的人比比皆是,但回答不上这几个问题的也大有人在。这样的候选人,我是决计不敢要的。稍加不注意,他们就可能用Redis存文档,用MongoDB做复杂运算,甚至“大胆”用Redis来替换数据库以解决性能瓶颈——噢,你说起“事务”,Redis也是有“事务”的呀。
对这样的人,你真让他们去研究MongoDB或者Redis,让他们去通读一本专著,似乎有点划不来,他们自己也没有那么多耐心。所以我常想,有没有一本“薄而广”的书,专注于开拓大家的眼界,并教导大家用“正确的方式”来使用各种已有的工具。如今我们虽然有海量的框架和类库,有突飞猛进的云服务,但是只要没有掌握“正确的应用方式”,就无法保证“把事情做对”,就只能开发出某几个方面明显不及格的产品。
所以当我看到曾健生编著的《App后台开发运维和架构实践》时,不由得眼前一亮。这正是一本“薄而广”的书,它绝不像《打狗棍法》或者《辟邪剑法》,不负责教你把某门特别的武功练到极致,而更像《十八般兵器入门》,告诉你刀枪剑戟各适合什么场景,使用时有什么注意事项。典型的例子如关于Redis的部分,它讲的不是Redis如何安装,如何调用,而是结合发送短信、社交关系计算等等典型应用场景讲解Redis的使用方式,并介绍在Redis提供内建集群之前,市面上的各种集群方案和优劣。这样虽然只有一章的篇幅,为普通开发人员提供的价值绝对要比两三本Redis专著都要大,而且读起来更有效率。
古代练武的人,未必人人都要做武林高手,许多人只是把十八般兵器都耍熟,已经足够防蟊贼、保平安,受益匪浅了。同样的道理,对今天的App后台开发人员来说,把基本的点都踩到踩准,把系统拎到及格线以上,避免明显的缺憾,对大多数场景来说,已经是意义重大了。
《App后台开发运维和架构实践》样章下载
网盘链接1
网盘链接2
《App后台开发运维和架构实践》的购买链接
京东
当当
亚马逊
互动出版网
天猫
最后
以上就是健壮鞋垫为你收集整理的怎么快速学习App后台开发你是否遇到下面的情景?《App后台开发运维和架构实践》 这本书解决什么问题?阅读《App后台开发运维和架构实践》后的收益《App 后台开发运维和架构实践》的内容简介《App 后台开发运维和架构实践》的评价的全部内容,希望文章能够帮你解决怎么快速学习App后台开发你是否遇到下面的情景?《App后台开发运维和架构实践》 这本书解决什么问题?阅读《App后台开发运维和架构实践》后的收益《App 后台开发运维和架构实践》的内容简介《App 后台开发运维和架构实践》的评价所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复