技术随手记


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

Hibernate缓存 查询缓存

发表于 2017-03-30 | 分类于 hibernate |
Hibernate缓存 查询缓存
网上说query.setCacheable(true)或criteria.setCacheable(true)`` 这两种方式的缓存命中率低,个人认为谈论这个“无卵用”; 我在测试的时候发现,上面的操作会受配置的限制,必须在配置文件中打开hibernate.cache.use_query_cache=true,之后setCacheable`才起作用; 查询缓存可以解决二级缓存的不足;它的作用范围也 ...
阅读全文 »

hibernate的查询缓存

发表于 2017-03-30 | 分类于 hibernate |
hibernate的查询缓存

hibernate的查询缓存主要是针对普通属性结果集的缓存,而对于实体对象的结果集只缓存id。在一级缓存,二级缓存和查询缓存都打开的情况下做查询操作时这样的:查询普通属性,会先到查询缓存中取,如果没有,则查询数据库;查询实体,会先到查询缓存中取id,如果有,则根据id到缓存(一级/二级)中取实体,如果缓存中取不到实体,再查询数据库。
和一级/二级缓存不同,查询缓存的生命周期是不确定的,当前关联的表发生改变时,查询缓存的生命周期结束。

阅读全文 »

Layout of Log4j

发表于 2017-03-28 | 分类于 Log4j |
Layout of Log4j
本文档使用Log4j版本为1.2.17 1. Layout介绍Log4j Layout主要用来控制日志的序列化格式,比如时间、线程号、日志消息对齐方式等,是log4j体系结构中的核心组成部分之一。 Layout抽象类声明为:1public abstract class Layout implements OptionHandler Layout实现了OptionHandler接口,OptionHa ...
阅读全文 »

MongoDB两阶段提交实现事务

发表于 2017-03-27 | 分类于 MongoDB |
MongoDB两阶段提交实现事务
MongoDB数据库中操作单个文档总是原子性的,然而,涉及多个文档的操作,通常被作为一个“事务”,而不是原子性的。因为文档可以是相当复杂并且包含多个嵌套文档,单文档的原子性对许多实际用例提供了支持。尽管单文档操作是原子性的,在某些情况下,需要多文档事务。在这些情况下,使用两阶段提交,提供这些类型的多文档更新支持。因为文档可以表示为Pending数据和状态,可以使用一个两阶段提交确保数据是一致的, ...
阅读全文 »

mysql-Innodb事务隔离级别-repeatable read详解

发表于 2017-03-27 | 分类于 mysql |
mysql-Innodb事务隔离级别-repeatable read详解
一、事务隔离级别ANSI/ISO SQL标准定义了4中事务隔离级别:未提交读(read uncommitted),提交读(read committed),重复读(repeatable read),串行读(serializable)。 对于不同的事务,采用不同的隔离级别分别有不同的结果。不同的隔离级别有不同的现象。主要有下面3种现在: 1、脏读(dirty read):一个事务可以读取另一个尚未提交 ...
阅读全文 »

说说MySQL中的事务

发表于 2017-03-27 | 分类于 mysql |
说说MySQL中的事务
从一个问题开始从ATM机取钱分为以下几个步骤: 1.登陆ATM机,输入密码;2.连接数据库,验证密码;3.验证成功,获得用户信息,比如存款余额等;4.用户输入需要取款的金额,按下确认键;5.从后台数据库中减掉用户账户上的对应金额;6.ATM吐出钱;7.用户把钱拿走。 一个简单的取钱,主要分为以上几步。不知道大家有没有“天真”的想过,如果在第5步中,后台数据库中已经把钱减掉了,但是ATM还就是没有吐 ...
阅读全文 »

ORM到底是用还是不用?

发表于 2017-03-27 | 分类于 ORM |
ORM到底是用还是不用?

ORM即Object/Relation Mapping的简写,一般称作“对象关系映射”,在Web开发中最常出没于和关系型数据库交互的地方。接口、中间件、库、包,你都可以这么称呼它。

阅读全文 »

maven 多模块项目

发表于 2017-03-27 |
maven 多模块项目
阅读全文 »

Maven最佳实践:划分模块

发表于 2017-03-27 | 分类于 maven |
Maven最佳实践:划分模块

“分天下为三十六郡,郡置守,尉,监” —— 《史记·秦始皇本纪》

所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块,multi-module)相互关联。那么,为什么要这么做呢?我们明明在开发一个项目,划分模块后,导入Eclipse变成了N个项目,这会带来复杂度,给开发带来不便。

阅读全文 »

mongodb最大连接数修改

发表于 2017-03-26 | 分类于 mongodb |
mongodb最大连接数修改
在nodejs启动时一次性开了200个Mongodb连接,目的是为了高并发时减少数据库连接耗时。如果做cluster开10个实例就有2000个连接了,这样就有些节点连接不到数据库的情况。 原因是Mongodb默认最大连接数只有819个,于是通过在启动里面加参数--maxConns=3000来提高最大连接数。然后重启服务,但悲剧的是通过db.serverStatus().connections;查看 ...
阅读全文 »
1…4567
技术随手记

技术随手记

67 日志
40 分类
47 标签
RSS
© 2017 技术随手记
由 Hexo 强力驱动
主题 - NexT.Mist