记一个社交APP的开发过程——基础架构选型 目录[-] 基本产品形态 技术选型 最近两周在忙于开发一个社交App,因为之前做过一点儿社交方面的东西,就被拉去做API后端了,一个人头一次完整的去搭这么一套东西,上面也没有PM和各种催促,过程还是很轻松愉快充满乐趣的,现在后端已经基本完成,下周会进入联调测试的阶段,有些东西想写一写记录一下,先从技术选型开始. 基本产品形态 产品的基础功能无非是所有社交App都具备的那些东西,新鲜事.好友关系(同微博一样,单向follow).地理位置(当前的位置.你附…
0x00 背景 真不是和被推荐了2天的博客园一位大神较真,从他那篇文章的索引式文章内容也学习到了很多东西,看评论区那么多对社交APP源码有兴趣的,正巧我上周把我的一个社交APP开源了,包括android源码和基于Laravel服务器的源码,并且之前有文章完整的介绍了Android端迁移到MVP架构的实战内容,和如何从linux小白到部署代码的内容,基本上从如何开发一款社交app到如何重构优化的思想都能体会到.今天就组织一篇文章介绍一下,欢迎有兴趣朋友star,pull.一起为开源社区贡献点力量.…
(本博客为原创:http://www.cnblogs.com/linguanh/)   My BananaCloud Android Application 前言:  这算是我的第一个 完完全全 由自己开发的社交类安卓APP,截止2016-7-15,第二版本的优化完善已顺利完成,可以正常使用.下面我将一 一讲述各个点,日后如果不上线,那么将考虑全面开源,含移动端代码.服务器接口代码,留意我的 GitHub. 由于内容十分地多,我尽我自己的能力将各个功能模块的做法尽可能地去讲清楚,欢迎留言,有问必…
FORK(相机)是一个通过分享图片来建立社交的app,它有着鲜明的配色,还算不错的贴图创新,细腻的产品设计,但是由于产品定位不清晰.设计亮点不多以及推广不利,从2014年5月第一版开始就没有火过.所以我要在此分析一下这个app的设计思路和优缺点. 从产品设计初衷来说,中国缺乏有创意的图片社交app.很少有app愿意将自己的路线向纵深发展.然而糗事百科.陌陌这些自降规格的产品仍然能风靡一时,证明只要图片社交有黏性就还是有受众欢迎的. 下图是fork的产品结构: 从功能上来说,它已经是一个及格的社交…
对于刚接触大数据的用户来说,要想区分Hive与HBase是有一定难度的.本文将尝试从其各自的定义.特点.限制.应用场景等角度来进行分析,以作抛砖引玉之用.  Hive是什么? Apache Hive是一个构建于Hadoop(分布式系统基础架构)顶层的数据仓库,注意这里不是数据库.Hive可以看作是用户编程接口,它本身不存储和计算数据:它依赖于HDFS(Hadoop分布式文件系统)和MapReduce(一种编程模型,映射与化简:用于大数据并行运算).其对HDFS的操作类似于SQL—名为HQL,它提…
原文:WCF技术剖析之一:通过一个ASP.NET程序模拟WCF基础架构 细算起来,已经有好几个月没有真正的写过文章了.近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析>的写作,一直无暇管理自己的Blog.到目前为止<WCF技术剖析(卷1)>的写作暂告一段落,初步预计于下个月由武汉博文视点出版.在<WCF技术剖析>写作期间,对WCF又有了新的感悟,为此以书名开始本人的第三个WCF系列.本系列的目的在于对<WCF技术剖析>的补充,会对书中的一些内容进行展…
SaltStack详细部署   一.基础介绍==========================================================================================1.简介SaltStack 是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack 基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq.Py…
IM(InstantMessaging 即时通讯)作为一项基础功能,很多APP都有,比如:手机QQ.微信.易信.钉钉.飞信.旺旺.咚咚.陌陌等.而IM如同我们日常生活中的水和电一样,必不可少,也是很多"社交"类APP必不可少的基础功能,而上面这些APP里面,微信最为出色. 如果作为一名创业者需要用到IM的功能,我建议是直接使用第三方提供的服务,比如:易信(网易的童鞋们记得要给我打赏哇,我看过它提供的DEMO和服务,确实很赞-),为什么不自己开发?你有单聊那就需要群聊吧,而在移动互联网时…
[Architecture Design] 3-Layer基础架构 三层式体系结构 只要是软件从业人员,不管是不是本科系出身的,相信对于三层式体系结构一定都不陌生.在三层式体系结构中,将软件开发所产出的程序代码,依照不同用途归类为:系统表示层.领域逻辑层.数据存取层.其中: 系统表示层 (Presentation Layer),用来归类「提供操作接口」的相关程序代码.例如:提供Textbox接受用户输入地址数据.透过MessageBox通知用户处理结果.甚至是提供Web API给远程系统使用,这…
继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更新页面显示状态这种方式在运作的,从若干年前简单的ajax流行起来,后台是基于xml的web服务,到今天主流的web服务是基于所谓rest架构的json为载体的web服务,其实我个人觉得rest和过去xml的soap相比并没有本质级别的改变,反倒是今天的浏览器内运作的前端框架有更大的改变. 我个人不是擅长前端的开发人员也不热衷于前端内容,所以为了帮助团队的前端,我…