该项目为真实项目,隐去敏感部分,稍作更改,展示了从新闻进入到最终展示给用户的过程.
项目部分功能介绍:
- 新闻页面服务支持亿级pv,高性能(多级缓存,单机qps5000),高可用(弱一致性)
- 采用kafka队列,实现高扩展(流水线模式-功能高扩展,mq-性能高扩展)
- 分布式高性能id生成服务,采用snowflake算法,单机每秒生成id超过10w个以上,id递增对各种存储友好
- 入库服务拆分细致,对外提供http服务,增加初始入库性能和可扩展性
- 类似文章去重通过改进的simhash算法,高效去重,后期增加百度去重算法,提高去重准确率
- 必杀词过滤,采用Trie树算法,提高匹配性能
- 采用Beanstalkd队列(1.优先队列,2.超时不处理重新入列),切合审核业务具体需求
- 采用hbase存储海量数据,每天20w-1000w行
- 采用es做搜索业务
- 采用kafka+hbase+http,搭建新闻拉取服务,为公司内部其他部门提供新闻查询服务