Easter79 Easter79
3年前
springmvc + mybatis + ehcache + redis+dubbo 分布式架构
框架简介主要定位于互联网企业架构(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Flib.csdn.net%2Fbase%2Farchitecture),已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件、数据权限组件、数据字典组件、核心工具组件、视图操作组件、工
Wesley13 Wesley13
3年前
MySQL 乐观锁和悲观锁
前言  1)在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和一致性以及数据库的一致性。  2)加锁是为了解决更新丢失问题更新丢失  两次更新同时进行,后一次更新覆盖了前一次更新的情况,更新丢失是数据没有保证一致性导致的。事务A查询余额,
Stella981 Stella981
3年前
Spring Boot 应用使用spring session+redis启用分布式session后,如何在配置文件里设置应用的cookiename、session超时时间、redis存储的nam...
现状项目在使用SpringCloud搭建微服务框架,其中分布式session采用springsessionredis模式需求希望可以在配置文件(application.yml)里设置应用的cookiename、session超时时间以及redis存储的namespace目前已知可以通过下面的方式设置session超时时间和
Stella981 Stella981
3年前
Spring AOP 实现
AOP(AspectOrientProgramming),我们一般称为面向切面编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务、日志、缓存、分布式锁等等。AOP实现的关键在于AOP框架自动创建的AOP代理,AOP代理主要分为静态代理和动态代理,静态代理的代表为AspectJ;而动态代理则以SpringAOP为代表。Spr
Wesley13 Wesley13
3年前
Java多线程synchronized关键字引出的多种锁
前言Java中的 synchronized关键字可以在多线程环境下用来作为线程安全的同步锁。本文不讨论 synchronized 的具体使用,而是研究下synchronized底层的锁机制,以及这些锁分别的优缺点。一、synchronized机制synchro
Stella981 Stella981
3年前
Redis分布式缓存系统Lua脚本食用指引
Redis为什么添加Lua支持redislua脚本出现之前Redis是没有服务器端运算能力的,主要是用来存储,用做缓存,运算是在客户端进行,这里有两个缺点:一、如此会破坏数据的一致性,试想如果两个客户端先后获取(get)一个值,它们分别对键值做不同的修改,然后先后提交结果,最终Redis服务器中的结果肯定不是某一方客户端所预期的
Wesley13 Wesley13
3年前
InnoDB中的意向锁,不与行级锁冲突的表级锁
点击上方关注“Java后端技术栈“!(https://oscimg.oschina.net/oscnet/up9871e4ae879d5aadb6cf2dda82efd7cc.jpg)前言InnoDB支持多粒度锁(multiplegranularitylocking),它允许行级锁与表级锁共存,而意
Wesley13 Wesley13
3年前
JDK里的自旋锁
自旋锁是采用让当前线程不停地的在循环体内执行实现的,当循环的条件被其他线程改变时才能进入临界区。JDK里面自旋锁的实现有SynchronousQueue 和LinkedTransferQueue。 本文只是自己对源码的简单理解。先说公平锁,先等待的线程先获得数据。SynchronousQueue的内部类TransferQueue实现了公平锁。
Wesley13 Wesley13
3年前
mysql 常用函数
★1\表级锁情况SHOWSTATUSLIKE'table%';\行级锁情况SHOWSTATUSLIKE'innodb\_row\_lock%';\进程列表SHOWPROCESSLIST;SHOWSTATUS;★locate和instr和regexp
Wesley13 Wesley13
3年前
Java中的锁原理、锁优化、CAS、AQS,看这篇就对了!
01为什么要用锁?锁是为了解决并发操作引起的脏读、数据不一致的问题。02 锁实现的基本原理2.1、volatileJava编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些