创业互联网公司如何搭建自己的技术框架
2016-08-18 15:32
645 查看
很久没写博客了。最近加入了一家创业型的公司,正好从0开始搭建了公司的技术框架。 大概罗列一下,给同样身处于创业公司的朋友们提供一些建议。
先说一下我们主要的主要业务是做一个新闻的app.
我主要负责后端的搭建与实现。我们的基础目标是年底达到5万日活的用户量。
## 我们的一些主要的功能:
从网络上抓取新闻
编辑可以录入新闻
查看新闻
有一定的推荐规则
在新闻内容上有去重, 敏感级别的斩断
能够搜索新闻。
日活5万
有推送信息
用户服务
新闻服务
定时任务服务
编辑录入CMS
数据服务(抓取,推荐,搜索,敏感词)
通过阿里的SLB做负载均衡,
每台ECS上再部署Nginx做更细力度的划分。 比如不同版本的接口调用不同的服务, 在请求头中增加gzip强制每次请求都是压缩的,等等
使用阿里云的RDS,做了一主3从, 主写,从读。其中一个从给数据分析使用
自己搭建了ZK3节点,dubbo(分布式服务框架), ActiveMq(用作异步和消息通知)
购买了阿里云Redis服务,用作缓存。
搭建了ELK系统,作为日志分析和搜索引擎
搭建zabbix用来做监控
接口层面主要是给APP输出接口,实际上没有必要HTTPS和做sign值校验,但是我们因为公司要求,还是做了。 这部分还支持把部分dubbo接口直接映射为restful的接口
用户系统 主要是管理app的用户, 会有用户和设备绑定, 设备的或者用户的一些个性化信息等等,同时他对外的接口有一部分时缓存接口,会比较快
新闻系统 基本所有的新闻都会入缓存, 缓存的同步通过activemq进行。
定时系统主要处理MQ消息和跑定时任务,我们开发了可视化的任务配置,这个后面分享出来给大家。 MQ消息的处理主要是包括了发送消息给APP, 同步缓存等等
推荐系统简单的可以做成,让用户进入app的时候选择一些兴趣,然后新闻打上各种兴趣相关的标签,查询的时候根据这些标签生成一个新闻的队列。
搜索可以使用ELK,同时还能通过日志,在接口层面做接口的性能监测。
然后搭建大数据的框架,根据用户的埋点数据去算各种的内容。
先说一下我们主要的主要业务是做一个新闻的app.
我主要负责后端的搭建与实现。我们的基础目标是年底达到5万日活的用户量。
## 我们的一些主要的功能:
从网络上抓取新闻
编辑可以录入新闻
查看新闻
有一定的推荐规则
在新闻内容上有去重, 敏感级别的斩断
能够搜索新闻。
日活5万
有推送信息
我们的系统分成了:
接口用户服务
新闻服务
定时任务服务
编辑录入CMS
数据服务(抓取,推荐,搜索,敏感词)
我们的技术方案如下
服务器使用阿里ECS, 接口4台,用户服务4台,新闻服务4台,定时任务4台,编辑录入CMS两台,抓取2台,推荐2台,搜索2台,敏感词2台。通过阿里的SLB做负载均衡,
每台ECS上再部署Nginx做更细力度的划分。 比如不同版本的接口调用不同的服务, 在请求头中增加gzip强制每次请求都是压缩的,等等
使用阿里云的RDS,做了一主3从, 主写,从读。其中一个从给数据分析使用
自己搭建了ZK3节点,dubbo(分布式服务框架), ActiveMq(用作异步和消息通知)
购买了阿里云Redis服务,用作缓存。
搭建了ELK系统,作为日志分析和搜索引擎
搭建zabbix用来做监控
再说一下每一部分的功能
日活5万的,算每个用户100次,每天的热点事件为5个小时,大概的并发在250s作用,其实用两台ECS就能够承受了,但是还是做了4台,留作灾备。接口层面主要是给APP输出接口,实际上没有必要HTTPS和做sign值校验,但是我们因为公司要求,还是做了。 这部分还支持把部分dubbo接口直接映射为restful的接口
用户系统 主要是管理app的用户, 会有用户和设备绑定, 设备的或者用户的一些个性化信息等等,同时他对外的接口有一部分时缓存接口,会比较快
新闻系统 基本所有的新闻都会入缓存, 缓存的同步通过activemq进行。
定时系统主要处理MQ消息和跑定时任务,我们开发了可视化的任务配置,这个后面分享出来给大家。 MQ消息的处理主要是包括了发送消息给APP, 同步缓存等等
推荐系统简单的可以做成,让用户进入app的时候选择一些兴趣,然后新闻打上各种兴趣相关的标签,查询的时候根据这些标签生成一个新闻的队列。
搜索可以使用ELK,同时还能通过日志,在接口层面做接口的性能监测。
然后搭建大数据的框架,根据用户的埋点数据去算各种的内容。
相关文章推荐
- 创业互联网公司如何搭建自己的技术框架
- 创业互联网公司如何搭建自己的技术框架
- 创业互联网公司如何搭建自己的技术框架[转-2016]
- 创业互联网公司如何搭建自己的技术框架
- 创业互联网公司如何搭建自己的技术框架
- 创业互联网公司如何搭建自己的技术框架
- 如何搭建自己的个人技术博客网站
- "技术框架太多,多的眼花缭乱,如何在众多选择中找到自己的方向?
- 技术人如何搭建自己的技术博客
- 手把手教你如何搭建一个自己的安卓快速开发框架之带你做自己的APP(二)
- [置顶] 架构师之路-创业互联网公司如何搭建自己的技术架构
- 如何自己成功搭建一个SSM框架的WEB项目
- 从零搭建自己的Vue框架(1) —— 技术栈介绍及框架整理
- 网络采集软件核心技术剖析系列(7)---如何使用C#语言搭建程序框架(经典Winform界面,顶部菜单栏,工具栏,左边树形列表,右边多Tab界面)
- 自己动手搭建ava通用开发框架之二—后台页面技术选型
- 架构师之路-创业互联网公司如何搭建自己的技术架构
- Rails框架技术讲座:如何定义自己的Rails应用软件入门位置
- 手把手教你如何搭建一个自己的安卓快速开发框架之BaseActivity(一)
- 手把手教你如何搭建一个自己的安卓快速开发框架之带你做自己的APP(四)
- 架构师之路-创业互联网公司如何搭建自己的技术架构