小红书MVP系统架构与技术选型(一)
- 服务端
- servicer:Python+Flask
- 设计模式:
- 分层:Data、DAO、Business
- 备选:消息队列
- 数据库:MySQL,备选:HDFS
- 笔记数据
- 用户笔记互动数据
- 用户数据
- 用户关系数据
- 话题数据
- CURD:restful规范
- 笔记
- 用户
- 话题
- 评论:reddit时间衰减排序
- 用户日志存取:Redis+MySQL,备选:Flume+Kafka
- 存储到Redis中,定时同步到MySQL
- 搜索模块
- 全文搜索:jieba+TFIDF+Redis,备选:ElasticSearch
- 候选词推荐:trie树
- 热门搜索:Redis
- 后台管理模块:jinjia2渲染+boostrap库
- 基于敏感词过滤的审核+人工审核,包括笔记、评论、用户名等
- 图片使用第三方工具
- 图片存储与CDN:第三方,七牛云
- 安全
- 使用第三方登录,避免密码管理
- session管理
- 降级
- 只支持浏览笔记
- 推荐系统:TensorFlow+gensim
- 为你推荐
- 召回:
- embedding+faiss
- neuralCF,基于TensorFlow+docker
- ItemBasedCF
- 排序
- 补充策略:打散+热点补充
- 召回:
- 相似推荐:embedding+faiss
- 热门推荐:Redis
- 冷启动
- 物品冷启动:物品embedding+faiss
- 用户冷启动:
- 规则判断:热门
- 用户推荐:
- 用户embedding
- 规则判断:热门
- 话题推荐:话题embedding
- 降级
- ItemBasedCF推荐
- 为你推荐
- 客户端:iOS(OC)+Android(Java)
- 页面结构:首页、发现页、个人主页、搜索页
- 主要功能:浏览笔记、发布笔记、互动、数据管理、日志系统、分享,备选:IM,LeanCloud
- iOS:布局主要使用UICollectionView;开源库包括AFNetworking、SDWebImage、ZFPlayer、JXPagingView、TZImagePickerController、MJRefresh、YYModel等
- Android:布局主要使用RecyclerView、tablayout;开源库包括gson、okhttp3、glide、matisse、jiaozivideoplayer
- 前端:仅用于分享,不专门开发
- jinjia2+boostrap实现详情页
- 语言
- Python
- Objective C
- Java
- SQL
- HTML
- 开发工具
- Mac
- IDE:PyCharm+Anaconda
- 调试:Chrome+Postman+Charles
- 数据库开发:VSCode+DBeaver
- iOS:Xcode
- Android:Android Studio
- 版本管理:Git
- 参考资料
- 《深度学习推荐系统》
- 《推荐系统实践》
- 《Flask Web开发实战》
- 《Python大数据分析与机器学习商业案例实战》Sklearn
- https://www.tensorflow.org
- 天池推荐系统baseline
- 《iOS从入门到实战》
- 《第一行代码》Android
- 网络教程:Redis、Python、SQL、pandas、bootsrap
小红书MVP系统架构与技术选型(一)相关推荐
- 电商平台-系统架构与技术选型
1. 硬件环境 公司服务器 2. 软件环境 2.1 操作系统 Linux CentOS 6.8系列 2.2 反向代理/web服务器 Nginx 2.3 应用服务器 Jdk7+ Tomcat 7 ...
- 企业级系统架构设计技术与互联网应用技术结合主题一 大规模并发性能问题探讨...
何谓大规模并发,不同层面有不同的理解 企业应用(Intranet):千级强并发,万级弱并发(在线用户),十万级用户 大型企业ERP.供应链,大型企业HR.办公OA 互联网应用(Internet):百万 ...
- 架构师技术选型所需要考虑的要素
架构师技术选型所需要考虑的因素 后续展开讲,目前只是做一个目录 1. 切合业务 2. 社区活跃度 3. 团队整体的技术水平 4. 版本更新迭代周期 5. 试错精神 敢于踏出第一步,但是千万不要再线上环 ...
- 大牛书单 | 系统架构方向好书推荐
导语:读书是一生的功课,技术人通过读书实现自我提升,学习优秀技术沉淀.TEG书知道本期特邀腾讯TEG架构平台部专家工程师高向冉.腾讯TEG架构平台部高级工程师黄志海.腾讯TEG基础架构部高级工程师肖攀 ...
- 数据中台功能架构和技术选型
数据中台的典型功能架构: 广义的讲数据中台是直接服务于业务系统的数据服务工厂,狭义上讲,数据中台就是可复用的数据API. 站在企业架构的角度,从广义上来讲,数据中台(包含数据平台,数据仓库)应该提供的 ...
- 微服务架构下的核心话题 (三):微服务架构的技术选型
前期回顾: 微服务架构下的核心话题 (一):微服务架构下各类项目的顺势崛起 微服务架构下的核心话题 (二):微服务架构的设计原则和核心话题 一.前言 为了实现基于微服务开发的产品,或者说为了将单体应用 ...
- 跨端架构的技术选型 2022
1. 跨端架构的意义 在<The Pragmatic Programmer>(中文翻译为<程序员修炼之道>)中,作者提了一个 DRY(Don't Repeat Yourself ...
- 每周一书《系统架构设计师》分享!
系统架构设计师教程第四版pdf电子版是一本非常优秀的计算机图书,这本书包含了新的系统架构设计师考试大纲的所有知识点,因此对于软件设计师来说非常的有用... 目录 第1章 计算机组成与体系结构 1.1 ...
- 高可用系统架构设计 技术方案
背景 可靠的系统是业务稳定.快速发展的基石. 那么,如何做到系统高可靠.高可用呢? 高可用方法论 下面的表格里,列出了高可用常见的问题和应对措施. 可扩展 扩展是最常见的提升系统可靠性的方法,系统的扩 ...
最新文章
- 边缘与锐化滤波(MATLAB)
- go 实现 kafka 消息发送、接收
- 02--MySQL自学教程:数据库MySQL纯净卸载
- 单链表的快速排序(转)
- 百度搜索引擎优化指南3.0_深圳网站搜索引擎排名优化电话,百度优化排名费用_华阳网络...
- 数据结构与算法分析(七)——C++实现平衡二叉树
- JavaEE 13个核心技术规范
- 日本程序开发式自定义的malloc/free函数(一)-外部式样书(外部仕様書)
- MATLAB 绘制点的地理空间分布,并用点的颜色或大小代表数值
- Java常量池原理以及垃圾回收
- RK3566调试外部以太网PHY
- 猿如意开发工具|python3.7
- 心理月刊杂志心理月刊杂志社心理月刊编辑部2022年第11期目录
- Myeclipse 使用经验总结
- 教育消费分期系统介绍
- 提高效率必备,EdrawMax亿图图示教你快速制作图表!
- 图片上传实时预览效果
- 8051单片机Proteus仿真与开发实例-光敏电阻+ADC0804仿真
- 二叉树构建的各种方法
- 接口技术课程设计——一种基于MFC构造自动测量系统