草庐IT

淘宝秒杀

全部标签

淘宝开源的代码质量检测工具,太强大了

前言好的代码一定是整洁的,并且能够帮助阅读的人快速理解和定位。好的代码可以加快应用的开发迭代速度,不必花过多的时间来修复bug和完善代码。好的代码不但能够使得新的项目成员更容易加入项目,同时方便项目组成员快速做好Backup。好的代码便于促进团队间交流合作提升开发效率。image.png代码质量评价标准有编码经验的人对代码都有一定的“鉴赏力”,能够凭感觉给出代码好坏的主观评价。但是这种凭感觉的方式太过个性随意,所谓仁者见仁智者见智,很难达成共识,那有没有一种公认的标准来鉴定代码质量呢?答案是有的。这里简单分享当下较常用的评价标准,其中包括:编码规范、可读性、可维护性、重复度及可测试性。编码规范

【Java 实战】通过Redis 和 MQ 简单实现秒杀功能

项目场景实现一个商品秒杀的功能,能后台自定义秒杀时间段、商品库存等信息。一、设计思路这里简单分享下思路:1.限流秒杀时大量用户会在同一时间同时进行抢购,网站瞬时访问流量激增,由于只有少部分用户能够秒杀成功,所以要限制大部分流量,只允许少部分流量进入服务后端。这里使用基于Redis简单粗暴的限流方案:信号量(Semaphore)信号量就是可以被多个线程同时持有的一种同步对象,比如我设置一个值为5的计数信号量,那么现在有十个线程来获取他就只会有五个可以成功,剩下那五个则获取失败。所以说如果有个计数信号量定义的值是1,那么他其实就等同于mutex(互斥锁)2.具体流程这里首先需要明确如何缓存秒杀的商

【Java 实战】通过Redis 和 MQ 简单实现秒杀功能

项目场景实现一个商品秒杀的功能,能后台自定义秒杀时间段、商品库存等信息。一、设计思路这里简单分享下思路:1.限流秒杀时大量用户会在同一时间同时进行抢购,网站瞬时访问流量激增,由于只有少部分用户能够秒杀成功,所以要限制大部分流量,只允许少部分流量进入服务后端。这里使用基于Redis简单粗暴的限流方案:信号量(Semaphore)信号量就是可以被多个线程同时持有的一种同步对象,比如我设置一个值为5的计数信号量,那么现在有十个线程来获取他就只会有五个可以成功,剩下那五个则获取失败。所以说如果有个计数信号量定义的值是1,那么他其实就等同于mutex(互斥锁)2.具体流程这里首先需要明确如何缓存秒杀的商