社交网站设计社交类网站如何面对大的访问量?如何架构比较合适?
社交网站设计 时间:2021-09-06 阅读:(
)
类似QQ空间的社交网站的用户动态的数据库应该怎么设计
动态的结构: { user_id:13, action: 行为, object_id: 对象ID, object_type: 对象类型, object_user_id: 对象用户ID, parent_object_id: 对象父级ID, parent_object_type: 对象父级类型, parent_object_user_id: 对象父级用户ID, reply_id: 回复ID, // action为回复时有用 parent_reply_id: 回复的父级回复ID, // action为回复时有用,回复了别人对评论的回复 text: '转发或者分享时附加文字', view_count: 0, created_at: 创建时间, deleted_at: 删除时间, } 说明: 1.object_*只存储主要模块内容信息,不含评论; 2.parent_object_*存储有嵌套关系的对象,比如当object_*为答案时,parent_object_*为问题; 3.reply_id用于直接回复评论时用到; 4.parent_reply_id父回复ID; 5. 两个回复ID,使用情况是:当回复了别人的回复时,根ment_id拉取评论与全部回复,在模板显示时只显示对话的两个回复。
场景列表: 一级结构: 安正超发布了文章 'action' => NEW, 'user_id' => 安正超ID, 'object_id' => 文章ID, 'object_user_id' => 安正超ID, 'object_type' => ARTICLE, 安正超上传 了 N张 图片 'action' => NEW, 'user_id' => 安正超ID, 'object_id' => 图片ID(数组,以逗号隔开), 'object_user_id' => 安正超ID, 'object_type' => PICTURE, 安正超提了问题xxxx 'action' => NEW, 'user_id' => 安正超ID, 'object_id' => 问题ID, 'object_user_id' => 安正超ID, 'object_type' => QUESTION 二级结构: 安正超评论了文章xxxx(回答了通用) 展示: 文章: xxxxx 评论:xxxxx (李林评论的) 'action' => COMMENT, 'user_id' => 安正超ID, 'object_id' => 评论ID, 'object_type' => COMMENT, 'object_user_id' => 安正超ID 'parent_object_id' => 文章ID, 'parent_object_user_id' => 作者ID 'parent_object_type' => ARTICLE, 三级结构: 安正超在文章中回复了李林的评论 展示: 文章: xxxxx 评论:xxxxx (李林评论的) 回复:xxxx (安正超) 'action' => REPLY, 'user_id' => 安正超ID, 'object_id' => 评论ID, 'object_type' => COMMENT, 'object_user_id' => 李林ID 'parent_object_id' => 文章ID, 'parent_object_user_id' => 作者ID 'parent_object_type' => ARTICLE, 'reply_id' => 安正超的回复ID 四级结构: 安正超回复了李文凯在问题 “xxxx” 中 李林的答案下的评论 说明:问题信息从答案接口取回 展示: 问题: xxxxx 答案1... 答案2... 答案3...(李林回答的) 评论:xxxxx (李文凯评论的) 回复:xxxx (安正超) 'action' => RESPOND, 'user_id' => 安正超ID, 'object_id' => 评论ID, 'object_type' => COMMENT, 'object_user_id' => 李文凯的ID 'parent_object_id' => 答案ID, 'parent_object_type' => ANSWER, 'parent_object_user_id' => 李林ID 'reply_id' => 安正超的回复ID怎么在社交网站如QQ、微信、微博等平台制作网页、广告类文件和链接?
社交平台广告嘛,这个你要做这一类很简单,直接交给网络广告公司做就可以了。
付钱给代理公司,你提交资料之后他们会帮你提交审核,审核通过之后就可以正常的投放广告了。
新浪微博的广告叫“粉丝通”一般就是我们刷微博时看到的带“推广”一类字样的微博,还有腾讯微博的广告也有显示“推广”,不过腾讯的可以显示在QQ窗口上还有就是QQ弹窗这些地方。
不懂问我成都盘古互动,我们就做这个の社交类网站如何面对大的访问量?如何架构比较合适?
具体到访问量多大,什么级别的,整体设计上可能都有比较大的差别。
需要具体的权衡,不断的演化。
架构师有无数的技术和方案可选择,Cache、队列、复制、冗余、分离、异步、服务化等等很多。
在做设计时,需要根据当前的业务和访问量等情况恰到好处的结合使用这些技术和方案,权衡利害关系,最终选择出最合适的方案。
没有最完美的方案,只有相对适合的方案。
也许现在运行好好的,访问量再上一级,又得重新设计了,这在互联网应用里是非常普遍的现象。
所以,这种应用的架构应该尽量简单、也不要过度设计。
除了这些之外,影响到架构设计的因素还有很多,比如社交类的特点是低延迟、海量数据和高并发。
对于一致性要求不是特别高,只要能保证最终一致就可以了,但是更重视可用性和可伸缩性。
所以针对社交类的这些特性,在站点的访问量和活跃度等不断增加的情况下,就会发现,异步化处理、Cache、非关系型数据库等等很多东西会出现在你的视野,是你的需求让你不得不去考虑这样做,站点也不断的在演化。
当然这过程中还有一个非常重要的,就是容量规划。
细观各大互联网应用公司的架构演变,可以发现,架构几乎都是从简单到复杂,再由复杂到简单这样的一个轮回的过程。
以上只是个人的一些观点,希望有所帮助。
BGPTO是一家成立于2017年的国人主机商,从商家背景上是国内的K总和有其他投资者共同创办的商家,主营是独立服务器业务。数据中心包括美国洛杉矶Cera、新加坡、日本大阪和香港数据中心的服务器。商家对所销售服务器产品拥有自主硬件和IP资源,支持Linux和Windows。这个月,有看到商家BGPTO日本和新加坡机房独服正进行优惠促销,折扣最低65折。第一、商家机房优惠券码这次商家的活动机房是新加坡...
LetBox此次促销依然是AMD Ryzen处理器+NVME硬盘+HDD大硬盘,以前是5TB月流量,现在免费升级到10TB月流量。另外还有返余额的活动,如果月付,月付多少返多少;如果季付或者半年付,返25%;如果年付,返10%。依然全部KVM虚拟化,可自定义ISO系统。需要大硬盘vps、大流量vps、便宜AMD VPS的朋友不要错过了。不过LetBox对帐号审核严格,最好注册邮箱和paypal帐号...
Pia云商家在前面有介绍过一次,根据市面上的信息是2018的开办的国人商家,原名叫哔哔云,目前整合到了魔方云平台。这个云服务商家主要销售云服务器VPS主机业务和服务,云服务器采用KVM虚拟架构 。目前涉及的机房有美国洛杉矶、中国香港和深圳地区。洛杉矶为crea机房,三网回程CN2 GIA,自带20G防御。中国香港机房的线路也是CN2直连大陆,比较适合建站或者有游戏业务需求的用户群。在这篇文章中,简...
社交网站设计为你推荐
重装系统后数据恢复电脑重装后数据能恢复吗range3S压力开关上RANGE和 DIFF是什么意思?descriptionDescription是什么意思?java队列java 队列资源优化配置怎样实现资源的最优配置光纤是什么什么是光纤?站内搜索引擎站内搜索与百度的搜索引擎有什么本质性的区别?哪些大数据公司提供站内搜索这种服务?0x800ccc0f您的服务器意外终止了连接。其可能原因包括服务器出错、网络出错或长时间处于非活动状态。 0x800CCC0F硬盘分区格式化新硬盘分区格式化有哪些方法?工作经验介绍个人简历中的服务员工作经验怎么写比较好
上海vps 企业主机 winscp 5折 便宜服务器 lunarpages 2014年感恩节 godaddy 京东商城双十一活动 徐正曦 福建铁通 中国网通测速 空间技术网 智能dns解析 lamp兄弟连 阿里云邮箱个人版 winds 海外加速 e-mail cc加速器 更多