IT书架 本次搜索耗时 0.248 秒,为您找到 173 个相关结果.
  • 库存服务和分布式锁

    1.库存微服务架构设计 2.库存服务表结构 3.为什么需要分布式锁 4.mysql的for update实现悲观锁 5.基于redis实现分布式锁 6.redlock详解 7.常见的分布式锁实现方案 4.1 mysql 乐观锁解决超卖问题
  • 4.mysql的for update实现悲观锁

    条件 测试 1.只明确主键 2.明确主键和一个普通字段 3.明确一个普通字段 4.明确一个unique字段 思考 总结 再思考 再总结 条件 FOR UPDATE 仅适用于InnoDB存储引擎,且必须在事务区块(BEGIN/COMMIT)中才能生效。 mysql默认情况下每个sql都是单独的一个事务,并且是自动提交事务。 ...
  • QueryBuilder 构造复杂查询

    QueryBuilder 构造复杂查询 QueryBuilder 构造复杂查询 QueryBuilder 提供了一个简便,流畅的 SQL 查询构造器。在不影响代码可读性的前提下用来快速的建立 SQL 语句。 QueryBuilder 在功能上与 ORM 重合, 但是各有利弊。ORM 更适用于简单的 CRUD 操作,而 QueryBuilder ...
  • 4、Kratos v2 初步学习 4-编写第一个接口

    使用工具 编写接口 生成 proto 模板 编写 proto 模板 生成proto源码 生成service模板 注册HTTP服务器 wire依赖注入 测试 完成本节后你将得到如下代码 参考文档 在这一节中,我将创建一个“创建用户”接口 使用工具 Postman (https://www.postman.com ) DataGr...
  • 如何设计秒杀系统?

    876 2024-04-22 《程序人生》
    面试官问我:如何设计秒杀系统?我给出接近满分的回答 正文 场景 问题 高并发: 超卖: 恶意请求: 链接暴露: 数据库: 解决方案 服务单一职责: 秒杀链接加盐: Redis集群: Nginx: 资源静态化: 按钮控制: 限流: 库存预热: 削峰填谷: 总结 面试官问我:如何设计秒杀系统?我给出接近满分的回答 ...
  • 3、Kratos v2 初步学习 3-biz中的数据模型与逻辑处理

    biz 模型定义 repo接口的定义 data层中实现repo接口 业务逻辑处理 biz 在kratos Blog的“Go工程化 - Project Layout 最佳实践”一文中有对biz层描述: “业务逻辑的组装层,类似 DDD 的 domain 层,data 类似 DDD 的 repo,repo 接口在这里定义,使用依赖倒置的原则。”...
  • Data Volume 练习 MySQL

    Data Volume 练习 MySQL 准备镜像 创建容器 数据库写入数据 其它数据库 Data Volume 练习 MySQL Note 本次练习,演示使用的是Linux环境,Windows环境也可以做这里面的90%以上的内容 使用MySQL官方镜像,tag版本5.7 Dockerfile可以在这里查看 https://githu...
  • Docker搭建MySQL主从

    810 2024-04-22 《程序人生》
    一、MySQL主从复制的原理 二、实现简单的一主一丛 1.首先拉取docker镜像,我们这里使用latest版本的mysql: 2.然后使用此镜像启动容器,这里需要分别启动主从两个容器 3.配置Master(主) 开启bin-log和创建从库链接账号和权限 3.1复制mysql主服务器的配置文件到宿主机 3.2修改配置文件内容,开启bin-log日志...
  • MySQL主从复制

    741 2024-04-22 《程序人生》
    今日目标 一、MySQL复制简述 二、MySQL复制原理 1. 它的工作原理很简单。首先确保master数据库上开启了二进制日志,这是复制的前提。 三、MySQL主从复制的好处 1.提供了读写分离的能力。 2.为MySQL服务器提供了良好的伸缩(scale-out)能力。 3.数据库备份时,对业务影响降到最低。 4.能提升数据的安全性。 5....
  • 2、Kratos v2 初步学习 2-连接数据库GORM篇

    参考内容: 工具版本: 安装GORM 添加GORM到Kratos GORM是一个对开发者友好 的全功能ORM 库,在本节中,我们将在Kratos内使用它。 参考内容: 《GORM 指南》入门指南-连接到数据库: https://gorm.io/zh_CN/docs/connecting_to_the_database.html 《kra...