【大型电商项目开发】商品服务之商品保存功能前后端联调-28

一:配置启动类

配置原因:当我们的微服务模块较多的时候,不仅需要占用大量内存,而且还需要一个一个去启动,步骤相当繁琐。所以我们可以对每个微服务的内存占用空间调整一下。

1.点击加号,新建Compound

在这里插入图片描述

2.将需要启动的模块添加到compound中

在这里插入图片描述

3.配置启动类内存

在VM options中添加 -Xmx100m
在这里插入图片描述

4.修改compound名称为gulimail

在这里插入图片描述

5.重启项目

在这里插入图片描述
此时启动就可以将所有添加的项目同时启动

二:前后端联调

1.设置mysql事务的隔离级别

当我们在service方法上添加@Transactional注解以后,事物没有提交之前数据是读不出来的。而mysql默认的隔离级别是可重复读。也就是必须要读到已经提交的数据。此时我们需要将当前会话设置为读未提交,此时当前窗口就可以读到未提交的数据,方便测试。

set session transaction isolation level read uncommitted

2.设置feign的超时时间

  • 在application.properties添加配置
ribbon.ReadTimeout=5000
ribbon.ConnectTimeout=5000
  • 在application.yml文件添加相关配置
feign:
  client:
    config:
      default:
        #不设置connectTimeout会导致readTimeout设置不生效
        connectTimeout: 3000
        readTimeout: 6000

3.细节优化

1)没有图片路径的无需保存

 //6.2)sku的图片信息pmd_sku_images
                List<SkuImagesEntity> imagesEntities = sku.getImages().stream().map(img->{
                    SkuImagesEntity skuImagesEntity = new SkuImagesEntity();
                    skuImagesEntity.setSkuId(skuId);
                    skuImagesEntity.setImgUrl(img.getImgUrl());
                    skuImagesEntity.setDefaultImg(img.getDefaultImg());
                    return skuImagesEntity;
                }).filter(entity->{
                    //返回true就是需要,返回false就是被剔除
                    return StringUtils.isNotEmpty(entity.getImgUrl());
                }).collect(Collectors.toList());
                skuImagesService.saveBatch(imagesEntities);

2)当没有满减信息时,无需保存

//6.4)sku的优惠满减等信息:gulimail_sms
                SkuReductionTo skuReductionTo = new SkuReductionTo();
                BeanUtils.copyProperties(sku,skuReductionTo);
                skuReductionTo.setSkuId(skuId);
                if( skuReductionTo.getFullCount() > 0 || skuReductionTo.getFullPrice().compareTo(new BigDecimal("0")) == 1){
                    R r1 = couponFeignService.saveSkuReduction(skuReductionTo);
                    if( r1.getCode() != 0){
                        log.error("远程保存sku优惠信息失败");
                    }
                }
  • BigDecimal比较需要使用compareTo方法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随意石光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值