自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

转载 mysql 为何需要Double Write?有redo log还不够吗?

考虑到一个问题,Mysql为何需要Double write来双写数据到数据块?redo log不是已经记录了所有的数据历史记录了吗?要弄明白这个问题,首先先要了解一下mysql redo log里面记录的是什么?日志分为物理日志和逻辑日志,物理日志就是直接记录数据/数据,记录被修改的page的偏移量,优点就是不依赖原page的内容,用日志的内容可以直接覆盖到磁盘上面,而缺点就是占用的空间太多,比如新增一个btree索引或者一个update操作。逻辑日志只是在关系...

2020-10-12 11:54:17 913

转载 深入理解AMQP协议

文章目录一、AMQP 是什么二、AMQP模型工作过程深入理解三、Exchange交换机默认交换机直连交换机扇型交换机主题交换机头交换机交换机小结四、Queue队列队列属性队列创建队列持久化五、Consumer消费者六、消息机制消息确认拒绝消息预取...

2020-07-09 11:20:34 187

转载 cache之多核一致性(三) - MSI协议

看到之后做什么?当某个CPU更改了自己的cache line中的共享变量的值时,其他也拥有这个共享变量的cache line拷贝的CPU会做什么?比如上文的第一个例子,P2往cache line中的变量写入了13,那么P1会立刻更新自己cache line中该变量的值,将其也变成13么?假设过一会儿P2又将这个变量的值改为了18,照此逻辑,P1也应该立刻更新变量的值为18,但如果在此期间,P1根本就没有访问这个变量,那它的值是13还是18,根本就没有关系嘛,更新岂不是做了无用功。在其他CPU..

2020-07-07 18:19:44 1519 1

转载 cache之多核一致性(二) - 总线上没有秘密

前面的文章讲到了cache(高速缓存)的读写一致性,这主要是基于单核的角度讨论的,在单核系统中,cache line中的数据是primary memory(主存/内存)中对应位置的数据的一个拷贝(副本),“cache一致性”就是cache和内存之间的数据一致性。而在多核系统中(限定于只有一级local cache的情况),每个CPU(processor/core)的cache line中的数据都是它们共享的内存中对应位置的数据的一个拷贝,因此多核系统的“cache一致性”既包括cache和内存之间的..

2020-07-07 18:13:56 2129 4

转载 cache之读写一致性(一)

cache根据写操作后是否要直接同步到内存,可分为write back(稍后同步)和write through(立刻同步)。write through的方式虽然享受不到写cache带来的性能优势,但是还是可以享受读cache的好处的,而且其(和内存的)一致性维护也更简单,适用场景包括视频输出等。而write back可以减少不必要的内存写入,减轻总线竞争。现在大部分应用场景下,cache多采用write back的方式,本文以下的讨论都基于write back且只有一个level的cache。c..

2020-07-07 18:05:31 2242

转载 jvm 性能调优工具之 jmap 命令详解

jmap名称:Java Memory Map(内存映射)官方文档:https://docs.oracle.com/javase/1.5.0/docs/tooldocs/share/jmap.html功能描述:内容太多,直接看前辈们的总结:java命令--jmap命令使用(这篇文章写得非常好)https://www.cnblogs.com/kongzhongqijing/articles/3621163.html...

2020-06-16 18:49:06 621

转载 log4j,Target、Threshold、layout配置实例

1#设置stdout的日志输出控制台log4j.appender.stdout=org.apache.log4j.ConsoleAppender#输出日志到控制台的方式log4j.appender.stdout.Target=System.err #会当作错误输出,全是红色的 #日志级别,bebug及以...

2020-05-29 11:22:50 280

转载 Log4j.properties配置详解

一、 Log4j简介Log4j有三个主要的组件:Loggers(记录器):日志类别和级别;Appenders (输出源):日志要输出的地方;Layouts(布局):日志以何种形式输出1.1 LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用来指定这条日志信息的重要程度,明白这一点很重要,Log4j有一个规

2020-05-29 11:11:15 705

转载 Spring DataSourceUtils.getConnection与DataSource.getConnection

DataSource.getConnection()总是从datasource或连接池返回一个新的连接。通过调用 jdbcTemplate.getDataSource().getConnection()显式获取一个连接,这个连接不是方法事务上下文线程绑定的连接,所以如果开发者如果没有手工释放这连接(显式调用 Connection#close() 方法),则这个连接将永久被占用(处于 active 状态),造成连接泄漏!Spring 提供了一个能从当前事务上下文中获取绑定的数据连接的工具类,那就是 Dat.

2020-05-27 17:06:08 3343

转载 @Transactional事务几点注意及其属性Propagation的使用

@Transactional事务几点注意这里面有几点需要大家留意:A. 一个功能是否要事务,必须纳入设计、编码考虑。不能仅仅完成了基本功能就ok。B. 如果加了事务,必须做好开发环境测试(测试环境也尽量触发异常、测试回滚),确保事务生效。C. 以下列了事务使用过程的注意事项,请大家留意。1. 不要在接口...

2020-05-27 16:02:10 632

转载 Spring注解详解

Spring注解详解 ...

2020-05-22 15:40:00 82

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除