时隔一年,重做黑马点评简历模板

    时隔一年,回到牛客,看到了上百条求黑马点评简历模板的私信。虽然黑马点评是很久前的项目了,用的人很多,而且直接写上去也是一眼包装,但其实黑马这个项目架子已经搭好了,只是说缺一些其它的模块,功能比较少,而且整体架构也不全,完善下整体的架构就比较像正式项目了。
    我准备新开一贴,帮助同学们把黑马点评写上简历,同时教会大家项目简历的正确写法,哪怕同样的同学看完我的帖子,写出来的黑马点评简历也会不一样,写出私人带有你特色的个人项目简历。
    另外不知道为什么信息差会很大,理论上来说这么久了会有很多大佬能做这个教程,搞点高质量有用的,实际的内容却基本没有。
    本人工作时间不长,水平有限,如有部分内容错误或缺少,感谢指正补充。
    
    
全部评论
黑马点评,其实就是个卖货,评论,买东西的项目,这个项目的实际内容你可以改成很多,比如实体卡牌交流平台,美食点评,电影点评,剧本杀交流平台,密室逃脱交流平台,你想写什么都行,本质是项目的内容,外面就是换个壳子而已。 我这里就简单的以剧本杀交流平台为例,因为以前喜欢打剧本杀。
14 回复 分享
发布于 2024-10-13 09:58 江苏
来讲点原有的改造吧。 黑马点评有旧有的点赞系统,它是通过redis的Zset集合简单实现的。每次更新的时候更新数据库。但如果在高并发下,每一个用户点赞就要更新一次数据库,数据库的压力会非常大,崩掉也很正常。首先用户点赞后,采用redis自带的原子命令将点赞数更新,之后更新数据库。并发情况下更新数据库需要消息队列异步更新,采用批量消息执行和批量插入,将多次点赞执行消息一次插入执行,并做好补偿机制,保障消息任务执行失败的场景。 而在查询点赞排行榜的时候,若缓存失效了,此时查询数据库更新缓存。正常流程是先查库再重建缓存,但要考虑到高并发的影响防止将数据库打崩。第一步当前请求发现缓存失效,需要上分布式锁,要进行双重锁校验,之后推荐发送异步消息至消息队列进行重建缓存的逻辑,不建议当前请求重构缓存。之后当前请求可以等待正常的少量时间,返回更新后缓存中的值。若缓存迟迟未建立,推荐返回默认页面。
4 回复 分享
发布于 03-12 11:24 江苏
后续我来更一个推荐写上去的模板点吧
3 回复 分享
发布于 03-12 11:27 江苏
权限体系和用户体系差不多就这样,我感觉讲的比较清楚了,但可能有同学没接触过有些地方可能不太清楚,我后面讲一下这两块数据库表的必要关键字段设计,就能了解它们是怎么串起来了
2 回复 分享
发布于 2024-10-22 15:30 江苏
c端就是对用户的,整体的后管平台就是做一些非商家端模块的后管功能的,如通用的配置字典的,发送公告的,营销的如优惠券、积分发放的
2 回复 分享
发布于 2024-10-13 10:17 江苏
供应商平台是给商家用的平台,正常是分为商家小程序端和商家后管端,小程序端就是手机登录的,后管端就是在电脑上登录的,常见的券码核销功能,一般就是在小程序端实现的。商家在后管端发布商品,上下架货,在小程序端可以查看它发布的产品信息,它的订单信息,每天的销售额,以及可以核销券码。
2 回复 分享
发布于 2024-10-13 10:10 江苏
亮点: 1.一套完善的租户体系:租户-商户-用户。需要明确这套体系的用户体系、权限体系和登录体系的基本原理。 2.打标功能。如何对用户打上自定义标签,对不同用户进行更好的营销活动。 3.优惠券与每日任务的获取方式。如何通过每日任务获取优惠券。高流量下做的每日任务基础功能如何保证高可用,如何通过缓存减缓数据库压力。 4.点赞与排行榜功能。如何在高并发下实现高可用的点赞效果。 5.降级策略。当流量过大你的降级方案是什么。 6.限流策略。限流策略是什么。 7.优惠券秒杀。高流量下的具体设计 这7条写上去感觉已经差不多了
1 回复 分享
发布于 03-12 11:49 江苏
参照闲鱼就可以扩展下这个秒杀活动,每周固定一天发放一定数量的不同级别优惠券,不同等级用户可以秒杀领取不同数量的优惠券
1 回复 分享
发布于 2024-12-27 11:21 江苏
黑马的优惠券是一个秒杀场景,可以简单把它扩展一下,优惠券可分为用户自己领和平台主动发两种
1 回复 分享
发布于 2024-12-27 11:19 江苏
明天更权限体系和用户体系,最近有点忙
1 回复 分享
发布于 2024-10-21 00:19 江苏
蹲😉
1 回复 分享
发布于 2024-10-19 18:08 广东
伴随登录的常常是用户体系和权限体系,一个供应商下面可以有一个管理员账户和其它的普通账户,权限体系呢,就是我想让别人有哪些页面菜单入口的权限,比如说我不给一个普通账户的订单权限,他就看不到订单相关的页面了。包括我限制不同的供应商的,供应商主账户限制其它普通账户的,如果复杂点,也可以是主供应商限制子供应商的。
1 回复 分享
发布于 2024-10-14 21:36 江苏
登录的第三步:如果是密码登录,需要前把先把接受的密码进行解密,常见的可逆解密算法如RSA算法。获取到解密后的密码,我们需要对密码进行MD5加密,MD5加密算法是不可逆的,一般存入数据库的密码都是MD5加密后的,我们只需要对比加密后的MD5值就可以知道密码是否正确。如果是手机号登录,这时候需要获取前面短信发送的在缓存中存储的验证码信息,用来和用户输入的验证码做比对。
1 回复 分享
发布于 2024-10-14 21:27 江苏
一般正常登录的第一步,如果是账户密码登录,就是输入账户,密码,验证码。如果是手机号登录,就是输入手机号和验证码。普通密码登录的验证码有通用的库可以生成,生成验证码后存入redis缓存,再设置一个验证码的过期时间就完成了,手机号的验证码需要发送短信验证码给手机号,同样把发送的验证码先存入缓存中设置过期时间,再调用短信服务平台发送给用户的手机号就可以啦
1 回复 分享
发布于 2024-10-14 21:20 江苏
慢更,先简单搭个框架起个头
1 回复 分享
发布于 2024-10-13 09:55 江苏
m
点赞 回复 分享
发布于 04-13 12:29 北京
mark
点赞 回复 分享
发布于 03-29 10:33 湖南
最好考虑下缓存和表的具体结构设计,能把一些东西串起来
点赞 回复 分享
发布于 03-12 12:29 江苏
另外黑马这块的结构设计是有问题的,仅仅为了展示下正常做法,表的设计是不全的,大家可以自己完善下点赞相关表设计
点赞 回复 分享
发布于 03-12 11:25 江苏
催更
点赞 回复 分享
发布于 01-23 19:44 广东

相关推荐

04-25 17:10
门头沟学院 Java
先是问了我的一些情况,比如为什么要找实习,后面打不打算读研之类的,然后拷打项目1. 项目是自己做的还是有团队,上线了吗,现在还在用吗2. 项目遇到过什么问题(Redis+Lua脚本预检,乐观锁解决超卖问题)3. 乐观锁怎么解决超卖问题,如果用悲观锁会有什么问题4. 套餐抢购QPS能到多少5. 有测试过用了乐观锁以后性能能到达什么程度吗6. 还遇到过什么问题?(我说了用RabbitMQ优化抢购逻辑,异步下单和数据库扣减库存)7. 我描述这个场景面试官说不理解,让我共享屏幕画一下架构图。但我可没画过这东西,我就画了个顺序图,一开始还画错了。。。8. Lua脚本的流程是什么9. 你这个Redis和Lua脚本预检就相当于避免了超卖问题,为什么还需要在数据库用乐观锁来避免呢?(这个其实我也有点不太明白,我的项目就是黑马点评包装的,有没有佬解释一下)解释了一通之后,面试官说你的系统还没复杂到要用RabbitMQ。。。然后开始拷打下一个10. 项目分工,你的工作?11. 采集股票的数据源?12. 项目里有对这些采集到的数据加入量化分析吗?(好提议,以后看看能不能加上去)13. 有遇到什么问题吗(讲了用线程池来分片采集股票数据入库)14. 线程池怎么处理的15. 最近AI coding很火,你有用过吗?在用的过程中遇到什么问题,怎么解决的?手撕:给一个数组,按从小到大顺序返回其中k个数(这个题太简单了吧,我都怀疑是不是还有其他题,结果没有)
查看16道真题和解析 美团求职进展汇总
点赞 评论 收藏
分享
问题1:为什么会使用分库分表,到达了什么样的数据级别才会去加设计,是否对数据量有一个统计我的理解:看星哥之前写过 单表行数超 500 万行或者单表容量超过 2GB,推荐分库分表,但是面试的过程中怕被问自己写的项目会有这么大的数据量吗不要这么硬背,具体情况具体分析,有的表字段少,经常是条件等值查询,这样加个索引,一个亿也不用分表,有的字段多,还是范围查询,可能5000万就得分表,面试官问你你说是自己在学习分库分表应用到项目中,自己造了几千万的数据量问题2:基因法需要分表的一个数量和确定的一个东西(我的理解是分表的依据,例如大麦中是订单编号和用户id),但是正常的生产环境中是可能动态改变的,比如说需要动态扩容的话,怎么解决呢(例如当前有4个分表,但是现在需要扩充到8个分表),是使用双写吗?这个在扩容前就要考虑好能维持多少年内不需要再扩容。转转架构师在分库分表前,通过之前记录的数据增长量,做了256张表,能在7年内不需要再扩容,如果需要扩容的话,可以使用双写,新扩容表写的过程中,用新的分库分表算法问题3:如果在防止超卖的过程中,Redis不可用了,怎么解决我的理解:使用Redis集群和主从复制吗?因为Redis宕机的话数据库的数据也不能保证是最新的版本,所以得尽量保证Redis不宕机?肯定要使用redis集群模式,但可能会有主从延迟,导致从节点数据不是最新的,但关系不大。可以在用户生成订单后,修改数据库的座位和库存,然后用户支付后,再改数据库的座位和库存,每一步都做好验证。这样从节点的数据问题会降到最低。问题4:如果在当前的幂等验证逻辑中,有一个消息所对应的幂等标识符是不存在的,按照现有的逻辑是可以执行的,但是幂等验证之后的业务系统异常了,这个时候应该怎么处理呢(即通过了幂等的验证,但是后面的服务down掉了,比如说下游抛了一个异常出来)【没太明白应该回答什么,是指需要将幂等标识符重新进行设置吗】异常了就异常了呗,把这个请求的标识从redis中删除了,就像分布式锁时,业务异常也要执行解锁一样,让下一个请求进来正常执行,然后设置好标识位问题5:本地缓存为什么使用Caffine呢,为啥不用Guava因为caffine的性能要远高于Guava,没有其他复杂原因我的理解:查了下Caffine就是Guava改进而来的,可以这么说吗- Caffine在读写操作方面的性能更高,是基于异步的操作,将淘汰过期操作与读写进行分离- Caffine采用了一种结合 LRU、LFU的算法W-TinyLFU+,具有高命中率,低内存占用的特点
查看5道真题和解析
点赞 评论 收藏
分享
评论
83
572
分享

创作者周榜

更多
牛客网
牛客企业服务