需求描述:根据用户id生成与之对应的唯一邀请码,范围为‘0-9A-Z’。 这个需求的重点在于加粗的部分,也就是要能够根据邀请码反推出用户ID,这样邀请码就不用入库了,在用户量很大的情况下,性能可以得到不小的提升。 错误思路 随机生成一个字符串,再将用户id拼接到字符串后面 ...
面试提到的需求:根据用户的ID和字符串的组合来生成较短的邀请码,还有就是根据这个邀请码解析出邀请码对应的用户ID 生成这样的邀请码我们就不放在数据库里面了,在用户量很大的情况下,对于性能是一个很大的提升。 我错误的设计方案: 正确的方案: 因为当时面试时间短,没有考虑的很详细。后面我查了一些资料,看过之后我就想当时怎么这么菜,因为十进制的数据肯定长,但是我们的十六进制,相对十进制是很短的 这个时候 ...
2018-08-31 14:47 0 1508 推荐指数:
需求描述:根据用户id生成与之对应的唯一邀请码,范围为‘0-9A-Z’。 这个需求的重点在于加粗的部分,也就是要能够根据邀请码反推出用户ID,这样邀请码就不用入库了,在用户量很大的情况下,性能可以得到不小的提升。 错误思路 随机生成一个字符串,再将用户id拼接到字符串后面 ...
...
根据用户id生成与之对应的唯一邀请码,范围为‘0-9A-Z’。这个需求的重点在于加粗的部分,也就是要能够根据邀请码反推出用户ID,这样邀请码就不用入库了,在用户量很大的情况下,性能可以得到不小的提升。 错误思路 随机生成一个字符串,再将用户id拼接到字符串后面,但是这样id就太明显 ...
网上看到一个例子,借鉴修改一下 实现根据long类型的用户ID生成6位随机邀请码,并且根据邀请码能算出用户ID。代码如下: 上面6位邀请码能表示的最大ID为728999999(“hhhhhh”),729000000(“wqqqqqq”)就要进位了。 上面方法同一个id生成 ...
分几点来答: 1. 首先,这其实是个技术选型题。 做技术选型的时候不能单纯的考虑性能,应该优先考虑业务类型,以及团队水平。另外的话,框架只是其中一环,还有配套呢。 如果是数据驱动型,尤其是要用到 ...
(1)单块架构 网站开始建立时,用户少 , 网站架构都是用单体架构设计,共部署3台服务器,1台应用,1台数据库,1台图片。 1、应用服务器上发布,可能是把应用服务器上的Tomcat给关掉,替换系统的代码war包,重新启动Tomcat。 2、数据库服务器,存全部核心 ...
今天群里一位朋友抛出一个问题,需要用26个字母和10个数字,组成一个不重复的4位字符,来作为邀请码。既方便客户记忆,又能适应大量的用户。我就做了这个demo 用Redis把begin存储起来,每次用的时候放入方法,拿到邀请码,再自增1,设置回Redis。如此生成的邀请码最多 ...
code ...