摘要: MySQL5.5以后默认使用InnoDB存储引擎,其中InnoDB和BDB提供事务安全表,其它存储引擎都是非事务安全表。若要修改默认引擎,可以修改配置文件中的default-storage-engine。可以通过:show variables like 'default_storage_engine 阅读全文
posted @ 2018-01-02 17:04 Andy奥 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 悲观锁介绍(百科): 悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中, 将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中 阅读全文
posted @ 2018-01-02 16:55 Andy奥 阅读(381) 评论(0) 推荐(0) 编辑
摘要: SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。 低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。 首先,我们使用 test 数据库,新建 tx 表,并且如图所示打开两个窗口来操作同一个数据库: 第1级别:Read Uncommitt 阅读全文
posted @ 2018-01-02 16:38 Andy奥 阅读(10615) 评论(0) 推荐(0) 编辑
摘要: mysql锁机制分为表级锁和行级锁,本文就和大家分享一下我对mysql中行级锁中的共享锁与排他锁进行分享交流。 共享锁又称为读锁,简称S锁,顾名思义,共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。 排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存, 阅读全文
posted @ 2017-12-29 14:16 Andy奥 阅读(597) 评论(0) 推荐(0) 编辑
摘要: 本文讲述基于Redis的限流系统的设计,主要会谈及限流系统中限流策略这个功能的设计;在实现方面,算法使用的是令牌桶算法来,访问Redis使用lua脚本。 1、概念 In computer networks, rate limiting is used to control the rate of t 阅读全文
posted @ 2017-12-29 13:30 Andy奥 阅读(6744) 评论(0) 推荐(0) 编辑
摘要: 线程间的通信方式 ①同步 这里讲的同步是指多个线程通过synchronized关键字这种方式来实现线程间的通信。 ②while轮询的方式 ③wait/notify机制 ④管道通信就是使用java.io.PipedInputStream 和 java.io.PipedOutputStream进行通信 阅读全文
posted @ 2017-12-29 10:03 Andy奥 阅读(837) 评论(0) 推荐(0) 编辑
摘要: redis持久化的几种方式 1、前言 Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看 阅读全文
posted @ 2017-12-28 15:34 Andy奥 阅读(66471) 评论(4) 推荐(8) 编辑
摘要: Redis过期策略 原文转载:https://www.cnblogs.com/java-zhao/p/5205771.html 1、设置过期时间 expire key time(以秒为单位)--这是最常用的方式 setex(String key, int seconds, String value) 阅读全文
posted @ 2017-12-28 15:14 Andy奥 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是阻塞队列? 阻塞队列(BlockingQueue)是一个支持两个附加操作的队列。这两个附加的操作是:在队列为空时,获取元素的线程会等待队列变为非空。当 队列满时,存储元素的线程会等待队列可用。阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程 阅读全文
posted @ 2017-12-28 13:28 Andy奥 阅读(489) 评论(0) 推荐(0) 编辑
摘要: Java中使用线程池技术一般都是使用Executors这个工厂类,它提供了非常简单方法来创建各种类型的线程池: 核心的接口其实是Executor,它只有一个execute方法抽象为对任务(Runnable接口)的执行, ExecutorService接口在Executor的基础上提供了对任务执行的生 阅读全文
posted @ 2017-12-28 12:27 Andy奥 阅读(253) 评论(0) 推荐(0) 编辑