位置: 编程技术 - 正文

分享网站群发站内信数据库表设计(群发网址)

编辑:rootadmin
“站内信”不同于电子邮件,电子邮件通过专门的邮件服务器发送、保存。而“站内信”是系统内的消息,说白了,“站内信”的实现,就是通过数据库插入记录来实现的。

  “站内信”有两个基本功能。一:点到点的消息传送。用户给用户发送站内信;管理员给用户发送站内信。二:点到面的消息传送。管理员给用户(指定满足某一条件的用户群)群发消息。点到点的消息传送很容易实现,本文不再详述。下面将根据不同的情况,来说说“站内信”的群发是如何实现的。

  第一种情况,站内的用户是少量级别的。(几十到上百)

  这种情况,由于用户的数量非常少,因此,没有必要过多的考虑数据库的优化,采用简单的表格,对系统的设计也来的简单,后期也比较容易维护,是典型的用空间换时间的做法。

  数据库的设计如下:表名:Message

  ID:编号;SendID:发送者编号;RecID:接受者编号(如为0,则接受者为所有人);Message:站内信内容;Statue:站内信的查看状态;PDate:站内信发送时间;

  如果,某一个管理员要给所有人发站内信,则先遍历用户表,再按照用户表中的所有用户依次将站内信插入到Message表中。这样,如果有个用户,则群发一条站内信要执行个插入操作。这个理解上比较简单,比较耗损空间。

  某一个用户登陆后,查看站内信的语句则为:

  Select * FROM Message Where RecID=‘ID' OR RecID=0

  第二种情况,站内的用户中量级别的(上千到上万)。

  如果还是按照第一种情况的思路。那发一条站内信的后果基本上就是后台崩溃了。因为,发一条站内信,得重复上千个插入记录,这还不是最主要的,关键是上千乃至上万条记录,Message字段的内容是一样的,而Message有大量的占用存储空间。比方说,Message字段有个汉字,占用个字节,那么5万条,就占用×=个字节=M。简单的一份站内信,就占用M,这还让不让人活了。

  因此,将原先的表格拆分为两个表,将Message的主体放在一个表内,节省空间的占用

  数据库的设计如下:

  表名:Message

  ID:编号;SendID:发送者编号;RecID:接受者编号(如为0,则接受者为所有人);MessageID:站内信编号;Statue:站内信的查看状态;

  表名:MessageText 

  ID:编号;Message:站内信的内容;PDate:站内信发送时间;

  在管理员发一封站内信的时候,执行两步操作。先在MessageText表中,插入站内信的内容。然后在Message表中给所有的用户插入一条记录,标识有一封站内信。

  这样的设计,将重复的站内信的主体信息(站内信的内容,发送时间)放在一个表内,大量的节省存储空间。不过,在查询的时候,要比第一种情况来的复杂。

  第三种情况,站内的用户是大量级的(上百万),并且活跃的用户只占其中的一部分。

  大家都有这样的经历,某日看一个网站比较好,一时心情澎湃,就注册了一个用户。过了一段时间,由于种种原因,就忘记了注册时的用户名和密码,也就不再登陆了。那么这个用户就称为不活跃的。从实际来看,不活跃的用户占着不小的比例。

  我们以注册用户2百万,其中活跃用户只占其中的%。

  就算是按照第二种的情况,发一封“站内信”,那得执行2百万个插入操作。但是其中的有效操作只有%,因为另外的%的用户可能永远都不会再登陆了。

  在这种情况下,我们还得把思路换换。

  数据库的设计和第二种情况一样:

  表名:Message

  ID:编号;SendID:发送者编号;RecID:接受者编号(如为0,则接受者为所有人);MessageID:站内信编号;Statue:站内信的查看状态;

  表名:MessageText 

  ID:编号;Message:站内信的内容;PDate:站内信发送时间;

  管理员发站内信的时候,只在MessageText插入站内信的主体内容。Message里不插入记录。

  那么,用户在登录以后,首先查询MessageText中的那些没有在Message中有记录的记录,表示是未读的站内信。在查阅站内信的内容时,再将相关的记录插入到Message中。

  这个方法和第二种的比较起来。如果,活跃用户是%。两者效率是一样的。而活跃用户的比例越低,越能体现第三种的优越来。只插入有效的记录,那些不活跃的,就不再占用空间了。

  以上,是我对群发“站内信”的实现的想法。

作者:万仓一黍出处:

推荐整理分享分享网站群发站内信数据库表设计(群发网址),希望有所帮助,仅作参考,欢迎阅读内容。

分享网站群发站内信数据库表设计(群发网址)

文章相关热门搜索词:分享群发是什么意思,群发站内信,站群发布,8222群发网址,群发网址链接需要注意什么,群组分享网站,网站群发软件,群发网址,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL数据库的高级sql注入的一些知识 [概要]这篇文章讨论常用的"sql注入"技术的细节,应用于流行的MsIIS/ASP/SQL-Server平台。这里探讨有关这种攻击各种可以注入程序访问数据和数据库防范的

SQL批量插入数据几种方案的性能详细对比 公司技术背景:数据库访问类(xxx.DataBase.Dll)调用存储过程实现数据库的访问。技术方案一:压缩时间下程序员写出的第一个版本,仅仅为了完成任务

mysql 数据库中索引原理分析说明 下面,我们举例来说明一下聚集索引和非聚集索引的区别:其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查安字,就会很自然地

标签: 群发网址

本文链接地址:https://www.jiuchutong.com/biancheng/349804.html 转载请保留说明!

上一篇:SQL高级应用之使用SQL查询Excel表格数据的方法(sql高级写法)

下一篇:SQL数据库的高级sql注入的一些知识(sql语句的高级用法)

  • 汇算清缴退税会计科目
  • 税费返还计入什么费用
  • 服装类发票可以做账吗
  • 怎么在电子税务局添加银行账户
  • 固定资产残值账务处理
  • 银行存款可以红字吗
  • 医疗胶片扫描仪怎么用
  • 扣缴义务人怎么删除
  • 扣缴义务人是否可以领税务发票,是否可以正常申报
  • 菜场摊位租赁合同
  • 股票收入属于按什么分类
  • 出售专利权收入属于什么收入
  • 违约金收入需要缴纳印花税吗
  • 社保上面的每月的缴费基数是什么意思?
  • 电费发票开据后如何入帐
  • 换出资产为固定资产,差额计入
  • 一般纳税人预交增值税会计记账
  • 医院业务支出包括哪些内容科目
  • 没取得发票付款的情况该如何做账呢?
  • 利息股息红利所得个人所得税怎么算
  • 停车场领的定额发票要怎么报税?
  • 质保金付款时怎么付
  • 资产负债表日后调整事项会计处理
  • 发票打印注意什么
  • 贷款逾期账务处理流程
  • win10 专业版 企业版
  • 代建工地
  • 支付宝流量红包怎么取消
  • 农民专业合作社法
  • 无偿调入固定资产
  • php中

  • 十个php高级应用题
  • 应付职工薪酬是负债吗
  • 格里戈里耶奈尔尤伯夫
  • Uniapp使用$base方法
  • 前端解决跨域问题的8种方案(最新最全)
  • 退货业务增值税税务处理
  • 新增总产值
  • 商贸公司库存商品有哪些
  • 个人所得税如何查询
  • mysql数据类型怎么判断
  • 所得税费用怎样算出来的
  • 其他收益结转到什么账户
  • 生产成本制造费用借贷方向
  • access数据库不能存放什么数据
  • 非公司员工可以报销差旅费吗
  • 公司租赁职工车辆账务处理
  • 工会的会费收入是什么
  • 其他债权投资的特征有哪些
  • 长期股权投资稀释股权
  • 材料折扣会计分录
  • 收到支持学校工作的短信怎么回复
  • 水泥销售技巧
  • 小型润滑油生产设备要哪些
  • 工程未完工,费用怎么处理
  • 有进项无销项如何申报
  • windows7休眠唤醒设置
  • win7 光盘
  • win10隐藏设置
  • linux中安装软件可使用哪些方式
  • thinkpad e431 bios怎么进入
  • winXP系统下qq不能视频聊天该怎么办?
  • 苹果mac系统复制粘贴不了
  • win80x0000007b修复
  • unity输入中文
  • web jquery
  • 初识年岁尚温柔 小说 免费
  • vue是如何实现双向绑定的
  • javascript常用语句
  • android基础知识大全
  • python3 mongodb
  • Android-Canvas.drawText()详解
  • python语言中
  • python简单实现刷新智联简历
  • js如何禁用按钮
  • 使用JQuery实现简单的拼图网页
  • 国家税务电子发票查验入口
  • 变更主管税务机关需要注销吗
  • 陕西社保费管理客户端初始密码
  • 新公司税务报到流程步骤
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设