如何制作一个日活超过1000的应用(二) 架构服务器
2016-08-17 23:42
281 查看
好了,昨天写了一个多小时的博客没有保存上,气的我昨天直接关电脑了,今天想想,还是重新写一下吧。
搬砖的第一天,首先写服务器。服务器从以下几个角度来考虑
1,用什么语言
2,用什么数据库
3,结构的设计
(一)
语言的选择其实之前已经说了,就是expressjs, 为什么要用expressjs,也就是nodejs呢?首先nodejs的最大好处就是开发效率高,几分钟就能写出来
一个接口。
其次,nodejs对于大并发的支持非常好,当量上来之后能够很容易的应付。
(二)
数据库的选择也是很明显的,mongodb,是一种nosql,nosql有什么优点,大家能很容易的查到,我就不多说了。expressjs+mongodb 先阶段还是一
种比较合适的选择。
(三)
代码的设计。
这个问题也是需要好好考虑一番的,首先可以对应功能,包含 登陆,个人主页,好友的新鲜事以及好友的好友的新鲜事,我的好友,聊天,消息,等
这些模块。对应的接口就是 init/login/ getuserinfo/getprofile/getfeedlist/getfeedinfo/getfriendlist/getmessageinfo/
基础模块:
tools/utils 工具类
dbManager 数据库相关
sessionManager session相关
功能模块:
UserManager
FeedManager
FriendManager
MessageManager
CommentManager
UserActionManager
暂时就这些,先实习着吧,如果不够的话,可以随时添加,nodejs 这方面的支持还是很灵活的
搬砖的第一天,首先写服务器。服务器从以下几个角度来考虑
1,用什么语言
2,用什么数据库
3,结构的设计
(一)
语言的选择其实之前已经说了,就是expressjs, 为什么要用expressjs,也就是nodejs呢?首先nodejs的最大好处就是开发效率高,几分钟就能写出来
一个接口。
其次,nodejs对于大并发的支持非常好,当量上来之后能够很容易的应付。
(二)
数据库的选择也是很明显的,mongodb,是一种nosql,nosql有什么优点,大家能很容易的查到,我就不多说了。expressjs+mongodb 先阶段还是一
种比较合适的选择。
(三)
代码的设计。
这个问题也是需要好好考虑一番的,首先可以对应功能,包含 登陆,个人主页,好友的新鲜事以及好友的好友的新鲜事,我的好友,聊天,消息,等
这些模块。对应的接口就是 init/login/ getuserinfo/getprofile/getfeedlist/getfeedinfo/getfriendlist/getmessageinfo/
基础模块:
tools/utils 工具类
dbManager 数据库相关
sessionManager session相关
功能模块:
UserManager
FeedManager
FriendManager
MessageManager
CommentManager
UserActionManager
暂时就这些,先实习着吧,如果不够的话,可以随时添加,nodejs 这方面的支持还是很灵活的
相关文章推荐
- 小心服务器内存居高不下的元凶--WebAPI服务
- 运维入门
- 100 个最佳 Ubuntu 应用(中)
- 在 AppImage、Flathub 和 Snapcraft 平台上搜索 Linux 应用
- 利用开源软件打造自己的全功能远程工具
- Linux5.9无人值守安装
- 数据中心和云未来的十二大趋势
- 虚拟化基础架构Windows 2008篇之11-WSUS服务器的安装与配置
- 用vsftp快速搭建ftp服务器
- Linux快速构建apache web服务器
- 服务器监控策略浅谈
- 架构纵横谈之二 ---- 架构的模式与要点
- 一步一步跟我学易语言之第二个易程序菜单设计
- 24 个必备的 Linux 应用程序
- 注册表趣味应用小集
- 如何降低服务器采购成本 原理分析
- 远程控制技术的应用
- 建议的服务器分区办法
- BS项目中的CSS架构_仅加载自己需要的CSS