Mysql读写分离:Spring+JPA应用层实现 vs Amoeba中间件实现 Posted on January 5, 2013 | 10 minutes | GaryZhu 前段时间看了篇文章,讲Youku网数据库架构的演变,如何从最开始的读写分离,再到垂直分区,最后到水平分片,一步一步慢慢成熟的。看完之后很有冲动抽出一个模型来把这几种技术都实现一下。 说干就干,首先是读写分离... [Read More] Read-write splitting Architecture Mysql Java
Java深度克隆 Posted on September 28, 2012 | 6 minutes | GaryZhu 在实际开发中经常遇到属性克隆的问题,比如在表现层提交的Request DTO,可能需要在控制层被映射成多个Java Bean,再传递到逻辑层来进行相应的业务处理,那么如何才能简单而又快速的完成属性克隆呢? [Read More] Deep clone Apache Commons Java
用MapReduce来进行用户行为分析 Posted on September 16, 2012 | 5 minutes | GaryZhu 在系统设计的时候,为了提高可用性,经常需要对用户行为进行分析,来持续完善系统。一个典型的场景就是分析用户的查询条件,根据操作习惯和规律来精简用户输入,让查询变得更简单更高效。那么对于这种场景,我们应该如何实现? [Read More] MapReduce User analysis Hadoop Java
基于Aviator的注解驱动验证框架 Posted on August 25, 2012 | 8 minutes | GaryZhu 程序开发过程中,在同一系统中层层之间数据传递或者是异构系统之间同步异步通信的时候,我们经常需要对Java Bean进行属性验证,来决定是否继续后续process,或者直接抛出error message。EasyValidation是基于Aviator DIY的申明式验证框架,能解决传统解决方案存在的弊端与不足。 [Read More] Data quality Declarative validation Aviator Java