12年Java研发经验,8年技术管理和架构经验,熟悉支付和电商领域,擅长微服务生态建设,对Dubbo、Spring Cloud和gRPC等微服务框架有深入研究,并应用于项目,帮助过多家公司进行过微服务建设和改造 合著作品《深入分布式缓存》,目前正在编写《微服务架构实战》
暂时未有相关通用技术能力~
阿里云技能认证
详细说明在上一次分享中,咱们谈到了阻塞与非阻塞,同步与异步的区别,http://www.jianshu.com/p/e9c6690c0737 那么在这一次分享中,咱们主要是以讲故事的方式讲述一下NIO和IO的区别。
一、概念 异步:某个事情需要10s完成。而我只需要调用某个函数告诉xxx来帮我做(然后我再干其他的事情) 同步:某个事情需要10s完成,我需要一直等它完成(等10s),再能继续后面的工作。
从JAVA 5开始,JDK提供了一些JVM检测的API,这就是有名的java.lang.management 包,包里提供了许多MXBean的接口类,可以很方便的获取到JVM的内存、GC、线程、锁、class、甚至操作系统层面的各种信息,本文就简单的介绍一种利用JMX对JAVA进程进行CPU、堆内存使用的监控。
写NIO程序经常使用ByteBuffer来读取或者写入数据,那么使用ByteBuffer.allocate(capability)还是使用ByteBuffer.allocteDirect(capability)来分配缓存了?第一种方式是分配JVM堆内存,属于GC管辖范围,由于需要拷贝所以速度相对较慢;第二种方式是分配OS本地内存,不属于GC管辖范围,由于不需要内存拷贝所以速度相对较快。
本文只是简单的将Dubbo的类结构图罗列出来,在下一次介绍中将重点讲解Dubbo框架的原理以及使用方法。 1、客户端类图 2、服务器端类图