Java 好玩功能点

  1. 间隔几秒才能重新下单
private Map<String, Long> userTimeMap = new ConcurrentHashMap<>();

long lastTime = userTimeMap.getOrDefault(userId, 0l);
long nowTime = Clock.getInstance().now().getTime();
 if (nowTime - lastTime < 1000) {
     errorMsg = Message.ORDER_TOO_FAST;
     break check
  }
userTimeMap.put(userId, nowTime);
  1. 订单下单时,为了避免多线程同时访问的问题,我们需对代码块进行同步锁。
synchronized (this) {
   里面对象是不允许多线程同时处理的
}

  1. 不同服务通过 事件 进行信息传递,也就是需要这些多个服务之间进行连线。 @Autowired 进行这些对象注入。@Qualifier("xxxx") 也是注入。

  2. 如果遇到多个对象调用某个方法,可以对这些方法包装成某个类进行使用。可以参考 CloudFormatUnit进行查看。

  3. 检查OTC 最新内容

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容