关闭

[置顶] Java性能优化

一、JVM内存模型JVM内存模型大体分5部分:程序计数器(Program Counter Register)、JVM虚拟机栈(JVM Stacks)、本地方法栈(Native Method Stacks)、堆(Heap)、方法区(Method Area)1.1、程序计数器(Program Counter Register)这是一块比较小的内存,不在Ram上,而是直接划分在CPU上的,程序员无法直接操...
阅读(43) 评论(0)

[置顶] 《从Paxos到zookeeper分布式一致性原理与实践》笔记

《从Paxos到zookeeper分布式一致性原理与实践》笔记一、概念ACID: Automaticy、consistency、isolation、 DurabilityCAP: consistency、 Availability、 Partition toleranceBASE: Basically Available、 Soft state、 Eventually consistent二、一致性...
阅读(153) 评论(0)

一种分布式系统下的自增主键实现方法

在分布式系统中大多数存在着如下的架构形式:系统的被逻辑分为前台应用和数据库两个部分,前台应用通过统一的数据访问层对数据库进行读写操作,前台应用会部署在多台机器上,数据库系统则采用分库分表的形式进行部署。 由此引发的一个问题是,当需要对一个逻辑上的表TABLE1(物理上被分为多个表,形如:TABLE1_0000,TABLE1_0001)采用统一的自增主键时,则会遇到困难,因为采用了分表的策略将无法采用...
阅读(41) 评论(0)

mybaits mapper.xml的写法

用习惯了mybaits generator,好久不写mybaits,发现都不会写了,这里先放下些例子,以供以后用的时候参考 项目示例下载地址: https://gitee.com/paincupid/simple-springmvcmybaits config examplepackage com.paincupid.springmvc.persistence;import...
阅读(46) 评论(0)

SpringMVC+Mybatis+Maven+Bonecp+IDEA

springmvc整合mybaits源代码下载:http://download.csdn.net/detail/paincupid/9141975 git://code.csdn.net/paincupid/springmvc.git https://gitee.com/paincupid/simple-springmvc1/ 本文工具:EclipseSTS,Maven; spring4.2.0...
阅读(37) 评论(0)

StarUML中类图如何显示interface

StarUML中类图添加接口,默认是显示一个圆形(也就是我们常讲的棒棒糖),怎么让该接口显示<>呢?默认的接口图示如下UML类图接口棒棒糖表示法在UML类图中,接口有2种表示方法1、分为两层,第一层接口名,顶端有<>标识,第二层是接口方法,也就是俗称的两层矩形框表示;2、和类图表示一样,区别为第二层为空,在矩形框上有一个棒棒糖的标识,俗称棒棒糖表示法;下面我们就详细讲解下如何把接口变成两层矩形框表示...
阅读(210) 评论(0)

google guava使用例子

guava是Java的一个扩展类库,在google的许多项目中使用过了,现在最为一个 开源的Java类库广泛使用(http://code.google.com/p/guava-libraries/)。 guava类库扩展的主要是这些相关类:collections(集合类),concurrency(并发),primitives,reflection(反射),comparison,I/O,hashin...
阅读(109) 评论(0)

如何实现一个分布式 RPC 框架

远程过程调用(Remote Procedure Call,RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。RPC的主要目标是让构建分布式应用更加容易,在提供强大的远程调用能力的同时不损失本地调用的语义的简洁性。 趁实习前的这段业余时间,我实现了一个轻量级的分布式RPC框架,名字叫做 buddha,代码量不大,但是麻雀虽...
阅读(113) 评论(0)

在Java中提升函数以更好地“函数式”编程

Java8中的Stream和Optional给我们带来了函数式编程的乐趣,但Java仍然缺少很多函数编程的关键特性。Lambda表达式、Optional和Stream只是函数式编程的冰山一角。这也导致了varvr和functionlajava这些类库的出现,他们都源于Haskell这个纯函数式编程语言。如果想要更加地“函数式”编程,那么首先要注意的是不要过早的中断monad(一种设计模式,表示将一个...
阅读(94) 评论(0)

大型网站架构技术一览

本文内容大部分来自《大型网站技术架构》,这本书很值得一看,强烈推荐。 网站系统架构层次如下图所示: 1.前端架构 前端指用户请求到达网站应用服务器之前经历的环节,通常不包含网站业务逻辑,不处理动态内容。 浏览器优化技术 并不是优化浏览器,而是通过优化响应页面,加快浏览器页面的加载和显示,常用的有页面缓存、合并HTTP减少请求次数、使用页面压缩等。 CDN...
阅读(135) 评论(0)

[2016.10.17日更新]各大互联网公司架构演进之路汇总

[2016.10.17日更新]各大互联网公司架构演进之路汇总...
阅读(79) 评论(0)

Spring框架中的各种*Aware接口

Spring框架提供了多个*Aware接口,用于辅助Spring Bean编程访问Spring容器。通过实现这些接口,可以增强Spring Bean的功能,但是也会造成对Spring框架的绑定。实现这些 Aware接口的Bean在被实例化之后,可以取得一些相对应的资源,例如实现BeanFactoryAware的Bean在实例化后,Spring容器将会注入BeanFactory的实例,而实现Appli...
阅读(103) 评论(0)

redisson分布式锁redLock源码解析【未完】

一、准备阶段1、原理 一个客户端需要做如下操作来获取锁: 1.获取当前时间(单位是毫秒) 2.轮流用相同的key和随机值在N个节点上请求锁,在这一步里,客户端在每个master上请求锁时会有一个和总的锁释放时间相比小的多的超时时间。比如如果锁自动释放时间是10秒钟,那每个节点锁请求的超时时间可能是5-50毫秒的范围,这个可以防止一个客户端在某个宕掉的master节点上阻塞过长...
阅读(309) 评论(0)

SimpleDateFormat并发隐患及其解决-Joda-Time

Joda-Time替换SimpleDateFormat并发隐患...
阅读(207) 评论(0)

RedLock - 用Redis构建分布式锁

线程间的通信、同步方式与进程间通信方式1、线程间的通信方式 使用全局变量 主要由于多个线程可能更改全局变量,因此全局变量最好声明为volatile 使用消息实现通信 在Windows程序设计中,每一个线程都可以拥有自己的消息队列(UI线程默认自带消息队列和消息循环,工作线程需要手动实现消息循环),因此可以采用消息进行线程间通信sendMessage,postMessage。 1)定义消息#de...
阅读(355) 评论(0)

线程间的通信、同步方式与进程间通信方式

线程间的通信、同步方式与进程间通信方式1、线程间的通信方式 使用全局变量 主要由于多个线程可能更改全局变量,因此全局变量最好声明为volatile 使用消息实现通信 在Windows程序设计中,每一个线程都可以拥有自己的消息队列(UI线程默认自带消息队列和消息循环,工作线程需要手动实现消息循环),因此可以采用消息进行线程间通信sendMessage,postMessage。 1)定义消息#de...
阅读(142) 评论(0)

win10禁用笔记本键盘

首先打开开始菜单,找到 windows 系统 – 右击命令提示符 – 更多 – 以管理员身份运行输入以下命令,回车:sc config i8042prt start= disabled然后重启电脑,就好啦~你想恢复的时候,只要重复上面的动作,输入的命令改为:sc config i8042prt start= auto...
阅读(341) 评论(0)

七周七并发模型 | 读后感

七周七并发模型 | 读后感这本书,感觉有两种看法,第一种是粗略的看,有点像21天速成教程,讲了好几种通用模型,几乎是了解性质的介绍,明白其优缺点及适用的场景,等到需要用的时候,再去挑选合适的武器;第二种是按照每个小节提示,认真思考时间,这显然需要7周,而不是作者说的21天(7*3)的时间了。 我是按照第一种方式看的,现在随意总结下各种模型的特性作为回顾了解。 线程与锁 原始,底层(既是优点也是缺...
阅读(207) 评论(0)

IntelliJ IDEA 2017 注册方法

下载破解文件JetbrainsCrack-2.6.2.jar下载地址: 链接:http://pan.baidu.com/s/1bpALM0n 密码:q09vhttp://idea.lanyus.com/开始破解一、下载的 JetbrainsCrack-2.6.2.jar 破解补丁将下载的 JetbrainsCrack-2.6.2.jar 破解补丁放在你的安装idea下面的bin的目录下面(如图)...
阅读(591) 评论(0)

Transaction rolled back because it has been marked as rollback-only

Transaction rolled back because it has been marked as rollback-onlyspring 具备多种事务传播机制,最常用的是REQUIRED,即如果不存在事务,则新建一个事务;如果存在事务,则加入现存的事务中。 示例代码如下:public void A() { querySomething(...); try {...
阅读(253) 评论(0)
470条 共24页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:1164595次
    • 积分:11036
    • 等级:
    • 排名:第1600名
    • 原创:166篇
    • 转载:301篇
    • 译文:3篇
    • 评论:108条
    最新评论