摘要:
一: Redis线上不能使用危险的命令 1:keys * 虽然其模糊匹配功能使用非常方便也很强大,在小数据量情况下使用没什么问题,数据量大会导致 Redis 锁住及 CPU 飙升,在生产环境建议禁用或者重命名! 2:flushdb 删除 Redis 中当前所在数据库中的所有记录,并且此命令从不会执行 阅读全文
摘要:
一、Bean装载过程 1、第一步是加载Bean配置文件 Xml默认读取器类(XmlBeanDefinitionReader)加载配置Bean定义的配置文件。 2、第二步是解析Bean配置文件 由默认的文档读取器类(DefaultBeanDefinitionDocumentReader)对已经加载Be 阅读全文
摘要:
一、Spring容器中的bean可以分为5个范围: (1)singleton:默认,每个容器中只有一个bean的实例 (2)prototype:为每一个bean请求提供一个实例 一般来说下面几种作用域,在开发的时候一般都不会用,99.99%的时候都是用singleton单例作用域。 (3)reque 阅读全文
摘要:
优先是jdk动态代理,其次是cglib动态代理,网上搜一下两种动态代理的代码示例。 其实就是动态的创建一个代理类出来,创建这个代理类的实例对象,在这个里面引用你真正自己写的类,所有的方法的调用,都是先走代理类的对象,他负责做一些代码上的增强,再去调用你写的那个类。 spring里使用aop,比如说你 阅读全文
摘要:
Spring中用到了 工厂模式,单例模式,代理模式。 工厂模式,spring ioc核心的设计模式的思想提现,他自己就是一个大的工厂,把所有的bean实例都给放在了spring容器里(大工厂),如果你要使用bean,就找spring容器就可以了,你自己不用创建对象了。 spring默认来说,对每个b 阅读全文
摘要:
一、当执行某个操作,前50次成功,第51次失败。a 全部回滚;b 前50次提交,第51次抛异常。ab场景分别如何设置spring事务? (1)前50次成功,第51次失败。a 全部回滚,使用默认的事物传播行为就行。 (2)b 前50次提交,第51次抛异常,50次成功提交,最后一次不提交,采用PROPA 阅读全文
摘要:
一、Spring的事务支持(注解事务、声明事务、编程事务、事务的传播机制) spring支持编程式事务,和声明式事务。编程式事务就是用个事务类TransactionTemplate来管理事务,这个一般现在没人傻到干这个事儿了;声明式事务分成在xml里配置个AOP来声明个切面加事务,一般现在也没人傻到 阅读全文
摘要:
1、这里采用4核8g的机器 -server -Xms4g -Xmx4g -Xss256k -XX:PermSize=512m -XX:MaxPermSize=512m -XX:MaxTenuringThreshold=20-XX:CMSInitiatingOccupancyFraction=80 - 阅读全文
摘要:
1、使用dmesg命令查看系统日志 dmesg |grep -E ‘kill|oom|out of memory’,可以查看操作系统启动后的系统日志,这里就是查看跟内存溢出相关联的系统日志。 2、这时候,需要启动项目,使用ps命令查看进程 ps -aux|grep java命令查看一下你的java进 阅读全文
摘要:
1、图解 2、一定会有线程去执行我们写的代码。 3、比如说我们有一个类里面包含了一个main方法,你去执行这个main方法,此时会自动一个jvm进程,他会默认就会有一个main线程,这个main线程就负责执行这个main方法的代码,进而创建各种对象。 4、tomcat,类都会加载到jvm里去,spr 阅读全文