Ydoing的专栏

想认识志同道合朋友,请加微信号: csuxajy

Elasticsearch源码编译

下载源码 https://github.com/elastic/elasticsearch, github下载源码,分支切换到5.5,用ieda打开,等待漫长的编译过程 下载安装包 直接编译的源码不能直接使用,需要依赖安装包一些插件等,下载5.5.3安装包,下载地址 https://www.ela...

2018-09-19 17:22:44

阅读数 215

评论数 0

可供参考的互联网电商订单中心设计

最近在做订单中心领域模型设计,虽然还不完善,这里分享出来,希望能给大家提供一个思路。有不懂的,请多多交流,谢谢啦!

2018-06-09 09:56:33

阅读数 1877

评论数 0

分布式事务一些思考和总结

最近在做交易订单的事情,随着系统越来越复杂,交易量越来越大,出现不一致的情况也频发。不禁引人思考,这里做一些总结记录。分布式事务有一些理论,最常听的是CAP,ACID等。这里就不做介绍了,大家自己去查资料看看。分布式事务也经常提到2PC,3PC,因为不太适用互联网场景,这里也不做介绍。 下面我们...

2018-03-23 10:56:19

阅读数 303

评论数 0

mybatis线上问题查找

线上反映查不到数据,根据业务逻辑把sql找出来执行,实际是有数据的。不知道什么原因,记录一下查找问题过程。greys查找问题 greys对查找线上问题还是挺有帮助的,地址https://github.com/oldmanpushcart/greys-anatomy 进入greys首先通过jps...

2017-10-30 20:56:00

阅读数 438

评论数 0

RocketMQ有序消息研究

在订阅消息的时候,有时我们希望消息能按照一定业务顺序消费,比如一个订单创建,订单修改,订单完成。这时候是需要顺序消息。RocketMQ支持顺序消费,下面来研究一下实现逻辑。样例生产者public class OrderedProducer { public static void main...

2017-10-28 19:19:41

阅读数 2471

评论数 0

一次JVM调优实战

早上查看低峰期gc情况,发现昨晚上fgc有274次,感觉有些不正常,开始查找原因[jump@order-binlog-data002 spring-boot]$ sudo jstat -gc 20028 4000 10 S0C S1C S0U S1U EC ...

2017-07-17 19:15:32

阅读数 1082

评论数 0

ThreadPoolExecutor源码剖析的一些思考和总结

最近迁移一个项目,涉及到线程池的问题。特意看了一下ThreadPoolExecutor源码,记录一下。思考几个问题ThreadPoolExecutor的基本实现思路是什么? - 在线程池正在运行(running)的状态下,提交任务到线程池以后,如果线程数量小于corePoolSiez,则创建新的...

2017-06-05 17:54:33

阅读数 566

评论数 0

从dubbo看Netty使用

Netty是个高性能的Java网络传输框架,在很多中间件或者分布式框架中几乎都能看到它的身影。既然Netty这么受欢迎,那到底怎么把netty嵌入到我们的系统中了?笔者在几年前就接触了Netty,也开发了个小项目。一直问题困扰自己,Netty使用场景是什么?怎么使用Netty?我们可以从dubbo...

2017-05-11 09:32:37

阅读数 17118

评论数 3

关于分库分表的实现

当数据大的时候,都会考虑分库分表的实现。分库分表可以在不同的层做。一般来说有以下几种: jdbc层:实现复杂,属于轻量级,对应用基本没有侵入性;缺点是不能复用数据库连接,在应用部署多的时候资源耗费大,不适于大规模部署。类似当当网的sharding-jdbc. ORM层:比如蘑菇街TSharding...

2017-03-10 15:14:16

阅读数 2989

评论数 0

Java中sleep和wait有什么区别?

sleep和wait有什么区别?大家都说是sleep不会释放锁,wait会释放锁。一直都不是很理解。最近在看AQS代码,才找到一些蛛丝马迹。AQS的await和wait实现思想类似,释放当前占有的锁,让其他线程继续获取锁。等适合机会唤醒后再重新占有锁。await方法有fullyRelease的方法...

2017-03-05 16:08:41

阅读数 891

评论数 0

从ReentrantLock去分析AbstractQueuedSynchronizer

在并发中,锁是一个重要的工具,能帮助程序处理好数据并发处理不一致的问题,而AbstractQueuedSynchronizer在其中扮演中重要的角色。在设计所锁的时候,应该思考怎么锁能解决什么问题,而这个问题本质是由于什么原因引起。并发问题说到底是由于资源共享竞争使用引起的。锁就是为了防止资源不合...

2017-03-04 18:06:06

阅读数 360

评论数 0

Spring中@Transactional什么时候开启事务?

在使用注解事务的情况时,Spring会把每个方法的执行封装为AOP执行过程。每次执行被事务注解方法时,会判断是否有必要创建事务。如果创建事务成功,则继续调用业务逻辑方法。事务是在方法执行最开始阶段创建的,因此方法要越小越好。事务的执行入口是TransactionInterceptor的invoke...

2017-03-01 21:45:39

阅读数 5990

评论数 0

JVM的Perm区持续增长导致OOM问题记录

查找问题先用jstack看看线程栈是否正常,确认正常后用jmap查看(因为线上用的OpenJDK,需要安装debuginfo包)堆中快照情况。jmap一些命令可能会造成JAVA进程挂起,特别是jmap -permstat会造成STW,程序无法响应。建议使用jmap命令应该与线上环境隔离才能用。使用...

2017-02-05 17:33:48

阅读数 2700

评论数 0

这些年读过有关计算机的书

快过年了,正在整理买的书,发现一大堆,还有些成就感,故总结记录一下。Java后端Java编程思想这本书是大学的教科书,买的是盗版的,现在工作了,就买了本正版的。总的来说,这本书在Java领域名气大,但我读起来有些费劲,一个是排版的问题,一个是作者的文笔的问题。作者用了很多源码例子讲述Java语法,...

2017-01-23 20:56:57

阅读数 586

评论数 0

Spring AOP自定义实现

上一遍文章研究了Spring AOP实现源码,现在自己也想自己实现。假如要对以下接口BarService织入Before增强和After增强接口定义public interface BarService { void doSomething(); }接口实现@Service public ...

2017-01-02 10:44:07

阅读数 1954

评论数 0

Spring AOP源码研究笔记

实现思路通过BeanPostProcessor的postProcessAfterInitialization方法,对初始化后的Bean创建代理。InstantiationModelAwarePointcutAdvisorImpl是Advisor的默认封装。MethodBeforeAdviceInt...

2016-12-31 16:28:44

阅读数 664

评论数 0

AOP的实现的几种方式

静态AOP 在编译期,切面直接以字节 码的形式编译到目标字节 码文件中。 AspectJ属于静态AOP,是在编译时进行增强,会在编译的时候将AOP逻辑织入到代码中,需要专有的编译器和织入器。 优点:被织入的类性能不受影响。 缺点:不够灵活 动态AOPJDK动态代理 在运行期,目标类加载后,...

2016-12-04 16:57:33

阅读数 9822

评论数 0

初识Spring Batch

概念Spring Batch是一个优秀的离线批处理框架。可以批量处理的数据格式可以是文本文件、xml文件以及持久化的数据。当然Spring Batch还提供了丰富的接口可以扩展,处理不同格式的数据。处理规模为中小型(对于海量的数据可以考虑Hadoop)。使用场景可以考虑账单对账,数据迁移,定时批量...

2016-12-02 11:52:19

阅读数 629

评论数 0

Spring中Bean的生成过程

Spring是个Bean大工厂,负责Bean的创建和注入。核心接口BeanFactory是Spring最核心接口,它是Bean的容器,所有Bean的创建和注入几乎都与它有关。很多后缀是“Context”的类都继承或扩展了它,比如ClassPathXmlApplicationContext。最核心的...

2016-11-02 15:31:00

阅读数 5859

评论数 1

关于ThreadLocal内存泄漏引起的思考

概述最近在对一个项目进行重构,用到了ThreadLocal。场景如下:外围系统会调用接口上传数据,在接口中要记录数据的变化Id,在上传数据完后需要集中在一个地方把这些Id以消息形式发送出去。使用场景样例代码 public Result<Void> uploadOrder(Tota...

2016-11-01 19:59:17

阅读数 2481

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭