网站注销账号业务一般怎么制作?

这种业务一般是如何制作?
1.删除所有相关用户的信息?
2.只删除用户表中的单条记录?
3.对屏蔽的用户不进行查询?

感觉每一种都是不小的工作量,一般这种业务是怎么做的?

阅读 4.4k
6 个回答
  1. 如果是广告用户,后端管理员端注销用户,可以将用户的自身记录设置为注销状态就行,以后查询不查询那些注销的,这样对于统计,数据校对,还是有用的,标识字段来标注是最简单的办法。
  2. 现在法律规定用户可以申请永久删除自己的数据,这个没办法,只能把用户相关的所有数据删掉,最后删除用户自身的数据。

一般不物理删除,比如增加is_delete字段,或者delete_time字段。查询时候带条件过滤即可

这个问题应该由需求本身出发。你说的都能达到注销目的。

1、听你描述,应该是对现有系统进行改造,最快的处理方式就像一楼所说,添加删除标志字段,在 bus 层,对所有用户的筛选添加筛选条件,只查找没有删除的用户即可;
2、一般不推荐物理删除。两方面原因,一方面是可能会存在恢复已注销会员类的需求,物理删除数据会可能会对后续的业务造成不可恢复的影响。另一方面,对于会员数量的统计,为了提高数据量,一般都会默认将已注销会员统计在内,如果直接物理删除,会出现会员数量越来越少的情况,这种情况,你们产品估计要拿程序猿们去祭天了。辛辛苦苦攒的会员,竟然越来越少?

我的设计:

  1. 用户提交删除请求后,在用户表中置flag。同时界面提出用户账户已 冻结 ,并没有删除,并承诺一段时间后(比如一个月),网站将彻底删除用户数据;在此犹豫期内,用户可以重新激活账号接着用。做得好一点的话可以在这里提供用户下载数据。
  2. 如果过了犹豫期,再物理删除用户的数据。如果是用户间无交互的应用,可以安心删除;如果是有社交功能的应用,可以只把用户个人信息删掉,交互信息引用的用户数据置空,界面显示「用户已删除」。
  3. 每天在低谷期定时扫描flag,统一时间段做这件事,对业务性能压力小。

都是软删除,数据也是有价格的。况且现在存储的价格越来越便宜了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题