第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

架構(gòu)師課學(xué)習(xí)筆記-第三周知識(shí)點(diǎn)

標(biāo)簽:
Java

复杂订单状态设计

复杂订单状态设计

表设计注意事项

下单后,数据库中的商品信息可能变更,因此不能用外键关联,需要用快照的方式

超卖问题及其解决

问题产生

高并发下修改共享资源

解决

1 加synchronized

  • 效率低下
  • 不支持集群和分布式

2 锁数据库

  • 效率低,导致数据库性能低下

3 分布式锁

4 基于数据库的乐观锁机制

如何调用其他的rest接口

使用RestTemplate

  1. 配置
package com.xiong.config;

import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;

@Configuration
public class WebMvcConfig {
    @Bean
    RestTemplate restTemplate(RestTemplateBuilder restTemplateBuilder) {
        return restTemplateBuilder.build();
    }
}

  1. 使用
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.add("imoocUserId", "xxx");
headers.add("password", "xxxx");

HttpEntity<MerchantOrderVO> httpEntity = new HttpEntity<>(merchantOrderVO, headers);
ResponseEntity<JSONResult> responseEntity = restTemplate.postForEntity(paymentUrl, httpEntity, JSONResult.class);
JSONResult paymentResult = responseEntity.getBody();

如何做内网穿透

对支付时序图的理解

如何通过轮询方式更新订单状态

cron表达式的书写

springboot里边怎么写定时任务

  1. 入口类加@EnableScheduling以支持定时任务
  2. 写定时任务
package com.xiong.job;

import com.xiong.common.utils.DateUtil;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class OrderJob {
    @Scheduled(cron = "0/1 * * * * ?")
    public void autoCloseOrder() {
        System.out.println("定时任务执行中:"+ DateUtil.getCurrentDateString(DateUtil.DATETIME_PATTERN));
    }
}

使用定时任务关闭超期订单缺点及解决方案

缺点

  1. 存在时间差,程序不够严谨
  2. 不支持集群
  • 导致同样的任务被多次执行
  • 解决方案:只用一台机器运行定时任务
  1. 对数据库全表搜索,大大影响数据库的性能

解决方案

  1. 使用消息队列(延时队列)实现
  • RabbitMQ,RocketMQ,Kafka,ZeroMQ

定时任务适用场景总结

  1. 只适用数据量小的情况
  2. 只是用实时性要求不高的情况
點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消