当前位置: 首页 > news >正文

wordpress怎么修改域名wordpress哪种主页更利于seo

wordpress怎么修改域名,wordpress哪种主页更利于seo,南宁网站建设哪个好,宁波网站建设鲤斯设计一.Seata-server搭建已完成前提下 详见 Seata-server搭建 二.Springcloud 项目集成Seata 项目整体测试业务逻辑是创建订单后#xff08;为了演示分布式事务#xff0c;不做前置库存校验#xff09;#xff0c;再去扣减库存。库存不够的时候#xff0c;创建的订单信息数…一.Seata-server搭建已完成前提下 详见 Seata-server搭建 二.Springcloud 项目集成Seata 项目整体测试业务逻辑是创建订单后为了演示分布式事务不做前置库存校验再去扣减库存。库存不够的时候创建的订单信息数据也会回退。 2.1 springbootspringcloudspringbootseata项目版本的版本管理pom配置 !-- 统一依赖版本管理 --propertiesspring.boot.version2.6.11/spring.boot.versionspring-cloud.version2021.0.4/spring-cloud.versionspring-cloud-alibaba.version2021.0.4.0/spring-cloud-alibaba.versionseata.version1.5.2/seata.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncoding/propertiesdependencyManagementdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-dependencies/artifactIdversion${spring.boot.version}/versiontypepom/typescopeimport/scopeexclusionsexclusiongroupIdmysql/groupIdartifactIdmysql-connector-java/artifactId/exclusion/exclusions/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion${spring-cloud.version}/versiontypepom/typescopeimport/scope/dependencydependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-alibaba-dependencies/artifactIdversion${spring-cloud-alibaba.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagement2.2 Porduct项目seata核心依赖和配置及代码和undolog表初始化 基本的web持久化数据库数据配置中心注册中心依赖此处略。 核心pom.xml如下 !--seata 分布式事务组件--dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-seata/artifactId/dependencyappliction.yml 核心配置如下 # 端口 server:port: 8050servlet:context-path: /productApispring:application:name: dolphin-jinyi-productprofiles:active: devmvc:pathmatch:matching-strategy: ant_path_matchermain:allow-bean-definition-overriding: truecloud:nacos:# 注册中心discovery:server-addr: localhost:8848namespace: d6eccad6-681c-4133-b9ff-1abcd951297agroup: DOLPHIN_GROUP# 配置中心config:server-addr: localhost:8848file-extension: ymlgroup: DOLPHIN_GROUPnamespace: d6eccad6-681c-4133-b9ff-1abcd951297a# 这里可以配置多个共享配置文件shared-configs:- data-id: mysql-common.ymlgroup: DEFAULT_GROUPrefresh: true- data-id: redis-common.ymlgroup: DEFAULT_GROUPrefresh: true logging:level:io:seata: INFO mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImplseata:registry:# 配置seata的注册中心 告诉seata client 怎么去访问seata server(TC)type: nacosnacos:server-addr: 127.0.0.1:8848 # seata server 所在的nacos服务地址application: seata-server # seata server 的服务名seata-server 如果没有修改可以不配username: nacospassword: nacosgroup: DOLPHIN_GROUP # seata server 所在的组默认就是SEATA_GROUP没有改也可以不配namespace: d6eccad6-681c-4133-b9ff-1abcd951297aconfig:type: nacosnacos:server-addr: 127.0.0.1:8848username: nacospassword: nacosgroup: DOLPHIN_GROUP # seata server 所在的组默认就是SEATA_GROUP没有改也可以不配namespace: d6eccad6-681c-4133-b9ff-1abcd951297a#指定Nacos上的DataIddata-id: seata-server.ymltx-service-group: default_tx_group #这里每个服务都是对应不同的映射名,在配置中心可以看到 事务分组必须和服务器配置一样service:vgroup-mapping:default_tx_group: defaultgrouplist:default: localhost:8091java核心伪代码示例 */ RestController RequestMapping(/product) Api(value 商品Api, tags {商品Api}) public class ProductController {Resourceprivate IProductService productService;PostMapping(updateProductStock)ApiOperation(value updateProductStock-更新商品库存, notes updateProductStock-更新商品库存)public R updateProductStock(RequestParam(value productId) Integer productId,RequestParam(value num) Integer num) {productService.updateProductStock(productId,num);return R.ok();} }public interface IProductService extends IServiceProduct {void updateProductStock(Integer productId, Integer num); }注核心点在于根据产品id扣减库存的方法上需要分支事务 Transactional(rollbackFor Exception.class)注解。 Service public class ProductServiceImpl extends ServiceImplProductMapper, Product implements IProductService {OverrideTransactional(rollbackFor Exception.class)public void updateProductStock(Integer productId, Integer num) {System.out.println(事务id---------------------- RootContext.getXID());LambdaQueryWrapperProduct queryWrapper new LambdaQueryWrapperProduct().eq(Product::getProductId, productId).eq(Product::getStatus, 1).last(limit 1);Product product this.getOne(queryWrapper);if (Objects.isNull(product)) {//商品不存在时抛异常throw new BizException(ResultCodeEnum.DATA_NOT_FOUND);}Integer stockNum product.getStockNum() num;if (stockNum 0) {//库存不足时抛异常throw new BizException(ResultCodeEnum.PRODUCT_STOCK_NOT_ENOUGH);}product.setStockNum(stockNum);this.updateById(product);} }在product项目对应的数据库中初始化undo_log表 CREATE TABLE undo_log (branch_id bigint(20) NOT NULL COMMENT branch transaction id,xid varchar(128) NOT NULL COMMENT global transaction id,context varchar(128) NOT NULL COMMENT undo_log context,such as serialization,rollback_info longblob NOT NULL COMMENT rollback info,log_status int(11) NOT NULL COMMENT 0:normal status,1:defense status,log_created datetime(6) NOT NULL COMMENT create datetime,log_modified datetime(6) NOT NULL COMMENT modify datetime,UNIQUE KEY ux_undo_log (xid,branch_id),KEY ix_log_created (log_created) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_0900_ai_ci COMMENTAT transaction mode undo table;2.3 Order项目seata核心依赖和配置及代码和undolog表初始化 基本的web持久化数据库数据配置中心注册中心依赖此处略。 核心pom.xml如下 !--seata 分布式事务组件--dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-seata/artifactId/dependencyappliction.yml 核心配置如下 # 端口 server:port: 8010servlet:context-path: /orderApispring:application:name: dolphin-jinyi-orderprofiles:active: devmvc:pathmatch:matching-strategy: ant_path_matchermain:allow-bean-definition-overriding: truecloud:nacos:# 注册中心discovery:server-addr: localhost:8848namespace: d6eccad6-681c-4133-b9ff-1abcd951297agroup: DOLPHIN_GROUP# 配置中心config:server-addr: localhost:8848file-extension: ymlgroup: DOLPHIN_GROUPnamespace: d6eccad6-681c-4133-b9ff-1abcd951297a# 这里可以配置多个共享配置文件shared-configs:- data-id: redis-common.ymlgroup: DEFAULT_GROUPrefresh: truemybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl seata:registry:# 配置seata的注册中心 告诉seata client 怎么去访问seata server(TC)type: nacosnacos:server-addr: 127.0.0.1:8848 # seata server 所在的nacos服务地址application: seata-server # seata server 的服务名seata-server 如果没有修改可以不配username: nacospassword: nacosgroup: DOLPHIN_GROUP # seata server 所在的组默认就是SEATA_GROUP没有改也可以不配namespace: d6eccad6-681c-4133-b9ff-1abcd951297aconfig:type: nacosnacos:server-addr: 127.0.0.1:8848username: nacospassword: nacosgroup: DOLPHIN_GROUP # seata server 所在的组默认就是SEATA_GROUP没有改也可以不配namespace: d6eccad6-681c-4133-b9ff-1abcd951297a#指定Nacos上的DataIddata-id: seata-server.ymltx-service-group: default_tx_group #这里每个服务都是对应不同的映射名,在配置中心可以看到service:vgroup-mapping:default_tx_group: defaultgrouplist:default: localhost:8091 java核心伪代码示例 RestController RequestMapping(/order) Api(value 订单Api, tags {订单Api}) public class OrderController {Resourceprivate IOrderService orderService;ApiOperation(value createOrder-创建订单, notes createOrder-创建订单)PostMapping(/createOrder)public RLong createOrder(RequestBody Validated OrderCreateDTO orderCreateDTO) {Long orderNo orderService.createOrder(orderCreateDTO);return R.ok(orderNo);} }public interface IOrderService extends IServiceOrder {Long createOrder(OrderCreateDTO orderCreateDTO); }注核心注解 GlobalTransactional Service public class OrderServiceImpl extends ServiceImplOrderMapper, Order implements IOrderService {Resourceprivate ProductServiceFeignClient productServiceFeignClient;public Long createOrderNo() {return IdUtil.getSnowflakeNextId();}OverrideGlobalTransactionalpublic Long createOrder(OrderCreateDTO orderCreateDTO) {System.out.println(事务id---------------------- RootContext.getXID());Order order new Order();BeanUtil.copyProperties(orderCreateDTO, order);order.setOrderNo(this.createOrderNo());//创建订单this.insertOrder(order);//通过feign调用商品服务扣减库存productServiceFeignClient.updateProductStock(order.getProductId(), -1);return order.getOrderNo();}Transactional(rollbackFor Exception.class)public void insertOrder(Order order) {System.out.println(事务id A---------------------- RootContext.getXID());boolean save this.save(order);if (!save) {throw new BizException(ResultCodeEnum.SYSTEM_EXECUTION_ERROR);}}}在order项目对应的数据库中初始化undo_log表 CREATE TABLE undo_log (branch_id bigint(20) NOT NULL COMMENT branch transaction id,xid varchar(128) NOT NULL COMMENT global transaction id,context varchar(128) NOT NULL COMMENT undo_log context,such as serialization,rollback_info longblob NOT NULL COMMENT rollback info,log_status int(11) NOT NULL COMMENT 0:normal status,1:defense status,log_created datetime(6) NOT NULL COMMENT create datetime,log_modified datetime(6) NOT NULL COMMENT modify datetime,UNIQUE KEY ux_undo_log (xid,branch_id),KEY ix_log_created (log_created) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_0900_ai_ci COMMENTAT transaction mode undo table;三.设计到的nacos中的seata-server.yml等配置 注意上面项目的yml配置中的namespacegroupIddata-id 保持和nacos一直 seata-server.yml service:vgroupMapping:default_tx_group: default四 测试 测试时保证seata-server order product 服务都已经启动。 现在库存有一个没有订单信息数据。 4.1 第一次下单 商品表库存被扣减创建订单成功 现在库存为0.第二次下单 订单没有新增库存也没有扣减。分布式事务测试ok
http://www.hkea.cn/news/14485284/

相关文章:

  • 网站加入搜索引擎怎么做东昌网站建设费用
  • 在线推广网站的方法有哪些网站建设 东八区
  • 个人网站开发是学什么语言环保行业网站建设
  • 自己做公司网站需要什么各大城市网站哪里做
  • 免费网站怎么样宿州网站公司
  • 免费自助建站服务网页链接加密
  • 塔城建设局网站普定县建设局网站
  • 公司做网站需要备案吗网页制作教程课件
  • 个人兴趣图片集网站建设企业黄页信息查询网
  • 珠海易注册网站wordpress search.php
  • 网站后台更新后前台没有同步更新优惠券购物网站怎么做
  • 网站建设报价表2345网址导航主页
  • 做百度网站费用室内设计平面图讲解
  • 阿里云 网站根目录阿里巴巴官网app
  • 网站如何设置微信支付功能代理服务器怎么设置
  • 网站建站分辨率万网注册域名查询官方网站
  • 手提包 东莞网站建设网站admin密码忘记了怎么办
  • 苏州城乡建设局网站seo学徒招聘
  • 福建省建设局网站如何开网店详细教程
  • 如何做网站跳转登入厦门招聘网
  • 宁乡的网站建设网站建设接口开发
  • 礼泉住房和城乡建设局网站网站没询盘怎么做推广
  • h5 php mysql网站开发茂名建站公司
  • 高校信息化建设网站系统微信合肥网约车收入怎么样
  • 如何做网站的基础小红书网站开发费用
  • 建设网站需要花多少钱微信用网站怎么做
  • 网站建设公司电话销售客源哪里找免费表白网站制作
  • 深圳设计网站排行网站关键词快速排名工具
  • 免费建立个人网站凡科兰州网站制作怎么样
  • icp备案网站接入信息怎么填wordpress 仿煎蛋妹子图