分布式任务&分布式锁
摘要:目前系统中存在批量审批、批量授权等各个操作,批量操作中可能因为处理机器、线程不同,造成刷新缓存丢失授权等信息,如批量审批同一用户权限多个权限申请后,流程平台并发的发送多个http请求到acl不同服务器,a机器处理了授权a,b机器同时处理了授权b,然后刷新用户缓存。因为在事务里彼此看不见对方提交的数据
阅读全文
posted @
2016-07-28 15:53
RunforLove
阅读(2669)
推荐(1)
ActiveMQ(li)
摘要:一、ActiveMQ 首先,ActiveMQ不是一个框架,它不是struct,webx,netty这种框架,它更像是tomcat服务器,因为你使用它之前必须启动它,activeMQ和JMS的关系有点类似于tomcat和servlet的关系,tomcat实现了servlet规范,同理activeMQ实
阅读全文
posted @
2016-07-27 15:04
RunforLove
阅读(610)
推荐(1)
航旅事业群面试(li)
摘要:一、JVM 1.如何观察垃圾回收? 2.JAVA应用的JVM参数调优? 3.举例说明你所知道的JVM profile方法? 4.GC tunning实战。假如你是一个大型网站的总架构师,有次web应用升级后,出现了大量的磁盘频繁读写的情况,你如何调优,看他的思路? 二、JS 1.js跨域问题产生的原
阅读全文
posted @
2016-07-27 14:04
RunforLove
阅读(869)
推荐(1)
Java新人学习(li)
摘要:一、项目中搭配使用SVN和Git 安装SVN;安装熟悉Git;安装maven,修改setting.xml文件;安装eclipse,配置jdk、maven路径; 建立自己的Git仓库,熟悉常用的Git命令。熟悉基本Linux命令。ssh登录线上环境,查看日志。 二、项目启动(antx、Autoconf
阅读全文
posted @
2016-07-26 15:21
RunforLove
阅读(937)
推荐(0)
Spring容器深入(li)
摘要:spring中最常用的控制反转和面向切面编程。 一、IOC IoC(Inversion of Control,控制倒转)。对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。在一个对象中,如果要使用另外的对象,就必须得到它(自己new一个,或者从JNDI中查询一个),
阅读全文
posted @
2016-07-26 11:24
RunforLove
阅读(2621)
推荐(1)
线程池深入(li)
摘要:java线程池。在jdk5之后为我们提供了线程池,只需要使用API,不用去考虑线程池里特殊的处理机制。jdk5线程池分好多种,固定尺寸的线程池、可变尺寸连接池等。常用的是ThreadPoolExecutor,它的构造方法如下: 参数说明: 1.corePoolSize:线程池维护线程的最少数量,有可
阅读全文
posted @
2016-07-25 12:59
RunforLove
阅读(2059)
推荐(0)
MySQL引擎、索引和优化(li)
摘要:一、存储引擎 存储引擎,MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。InnoDB存储引擎是5.5版本后Mys
阅读全文
posted @
2016-07-23 08:47
RunforLove
阅读(2133)
推荐(0)
Cobar + MySQL 技术验证(li)
摘要:一、简介 Cobar是一个对数据进行拆分后进行分布式存储的产品,可以支持使用后台的 MySQL或者Oracle数据库,通过配置,将数据按照一定规则存储入不同的数据库中。即用分布式数据库代替了集中式数据库。传统的集中式数据库系统有如下不足:集中式处理,势必造成性能瓶颈;应用程序集中在一台计算机上运行,
阅读全文
posted @
2016-07-22 14:07
RunforLove
阅读(5922)
推荐(1)
数据库表结构设计方法及原则(li)
摘要:数据库设计的三大范式:为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。 在实际开发中最为常见的设计范式有三个:第一范式是最基本的范式。如果数据库表中的所有字
阅读全文
posted @
2016-07-22 09:37
RunforLove
阅读(55020)
推荐(4)
SpringMVC启动过程详解(li)
摘要:通过对SpringMVC启动过程的深入研究,期望掌握Java Web容器启动过程;掌握SpringMVC启动过程;了解SpringMVC的配置文件如何配置,为什么要这样配置;掌握SpringMVC是如何工作的;掌握Spring源码的设计和增强阅读源码的技巧。 目录 1.Web容器初始化过程 2.Sp
阅读全文
posted @
2016-07-20 16:10
RunforLove
阅读(53189)
推荐(22)
Java多线程整理(li)
摘要:目录: 1.volatile变量 2.Java并发编程学习 3.CountDownLatch用法 4.CyclicBarrier使用 5.BlockingQueue使用 6.任务执行器Executor7.CompletionService使用8.ConcurrentHashMap使用9.Lock使用
阅读全文
posted @
2016-07-19 17:47
RunforLove
阅读(1346)
推荐(1)
深入理解JDK中的I/O
摘要:深入理解JDK中的I/O 目 录 java内存模型GCHTTP协议事务隔离级并发多线程设计模式清楚redis、memcache并且知道区别mysql分表分库有接口幂等性了解jdk8稍微了解一下特性 jvm内存模型:堆和非堆,http://www.cnblogs.com/RunForLove/p/47
阅读全文
posted @
2016-07-11 10:00
RunforLove
阅读(617)
推荐(0)
同步辅助类CountDownLatch用法
摘要:CountDownLatch是一个同步辅助类,犹如倒计时计数器,创建对象时通过构造方法设置初始值,调用CountDownLatch对象的await()方法则使当前线程处于等待状态,调用countDown()方法就将计数器减1,当计数到达0时,则所有等待线程全部开始执行。它提供的常用方法:
阅读全文
posted @
2016-07-06 11:23
RunforLove
阅读(941)
推荐(0)
幂等和高并发在电商系统中的使用
摘要:在Java web项目开发中,经常会听到在做订单系统中生成订单的时候,要做幂等性控制和并发控制,特对此部分内容作出总结,在高并发场景下,代码层面需要实现并发控制;但是幂等性,其实更多的是系统的接口对外的一种承诺,承诺一次请求和多次请求会返回同样的数据。关于幂等性将分别从高等代数中的幂等性、HTTP中的幂等性和订单生成系统中的幂等性阐述;并发性控制则提供了分布式锁等方式来对并发场景进行代码实现。
阅读全文
posted @
2016-07-04 16:45
RunforLove
阅读(11185)
推荐(1)
TensorFlow知识总结
摘要:学习资料: 英文官方网站 Tensorflow 将要写的博客目录: 1.使用Spring AOP对异常进行统一处理 2.动态代理模式理解 aop中的动态代理模式 3.工厂模式三种的理解。loggerFactory.getclass(); 4.流关闭在JDK1.7中使用 5.API auth授权原理整
阅读全文
posted @
2016-07-02 16:26
RunforLove
阅读(422)
推荐(0)