Linux 常用命令

摘要: 查看日志 more 查看文件内容 tail -f 实时查看日志文件 tail -f 日志文件log 按ctrl+c 退出 解压缩文件 解压 tar xzvf filename 压缩 tar -czvf filename z:通过gzip支持压缩或解压缩。还有其他的压缩或解压缩方式,比如j表示bzip 阅读全文
posted @ 2018-10-23 16:27 Jed_SH 阅读(184) 评论(0) 推荐(0) 编辑

Microservices and exception handling in Java with Feign and reflection

摘要: Microservices architecture When it comes to building a complex application in the cloud, microservices architecture is the newest and coolest kid in t 阅读全文
posted @ 2018-10-16 22:50 Jed_SH 阅读(259) 评论(0) 推荐(0) 编辑

微服务摘要

摘要: 配置管理(configuration management)--Spring Cloud Config 服务发现(service discovery)--Spring Cloud Netflix Eureka rabbitmq目录 /usr/local/Cellar/rabbitmq/3.7.3/s 阅读全文
posted @ 2018-10-15 19:30 Jed_SH 阅读(268) 评论(0) 推荐(0) 编辑

Javac编译与JIT编译

摘要: Java程序最初是仅仅通过解释器解释执行的,即对字节码逐条解释执行,这种方式的执行速度相对会比较慢,尤其当某个方法或代码块运行的特别频繁时,这种方式的执行效率就显得很低。于是后来在虚拟机中引入了JIT编译器(即时编译器),当虚拟机发现某个方法或代码块运行特别频繁时,就会把这些代码认定为“Hot Sp 阅读全文
posted @ 2018-10-11 10:25 Jed_SH 阅读(522) 评论(0) 推荐(0) 编辑

GC调优思路

摘要: 性能角度 1、内存占用 2、延时 3、吞吐量 其他:OOM、应用启动速度 基本思路: 1、确定调优目标 暂停时间、吞吐量等 2、掌握JVM和GC的状态,定位具体问题,确定真的有GC调优的必要 3、这里需要思考,选择的 GC 类型是否符合我们的应用特征,如果是,具体问题表现在哪里,是 Minor GC 阅读全文
posted @ 2018-09-27 14:15 Jed_SH 阅读(251) 评论(0) 推荐(0) 编辑

同步synchronized方法和代码块

摘要: 打个比方:一个object就像一个大房子,大门永远打开。房子里有很多房间(也就是方法)。这些房间有上锁的(synchronized方法),和不上锁之分(普通方法)。房门口放着一把钥匙(key),这把钥匙可以打开所有上锁的房间。另外我把所有想调用该对象方法的线程比喻成想进入这房子某个房间的人。所有的东 阅读全文
posted @ 2018-08-23 11:16 Jed_SH 阅读(741) 评论(0) 推荐(0) 编辑

Java中的ThreadPoolExecutor类

摘要: 转至http://www.cnblogs.com/dolphin0520/p/3932921.html java.uitl.concurrent.ThreadPoolExecutor类是线程池中最核心的一个类,因此如果要透彻地了解Java中的线程池,必须先了解这个类。下面我们来看一下ThreadPo 阅读全文
posted @ 2018-08-16 17:08 Jed_SH 阅读(419) 评论(0) 推荐(0) 编辑

Java并发类库提供的线程池有哪几种?分别有什么特点?

摘要: 通常开发者都是利用Executors提供的通用线程池创建方法,去创建不同配置的线程池,主要区别在于不同的 Executors目前提供了5种不同的线程池创建配置: 1、newCachedThreadPool(),它是用来处理大量短时间工作任务的线程池,具有几个鲜明特点:它会试图缓存线程并重用,当无缓存 阅读全文
posted @ 2018-08-16 17:07 Jed_SH 阅读(14645) 评论(0) 推荐(1) 编辑

Java线程:Callable和Future

摘要: 接着上一篇继续并发包的学习,本篇说明的是Callable和Future,它俩很有意思的,一个产生结果,一个拿到结果。 Callable接口类似于Runnable,从名字就可以看出来了,但是Runnable不会返回结果,并且无法抛出返回结果的异常,而Callable功能更强大一些,被线程执行后,可以返 阅读全文
posted @ 2018-08-16 14:03 Jed_SH 阅读(120) 评论(0) 推荐(0) 编辑

ConcurrentLinkedQueue和LinkedBlockingQueue区别

摘要: Concurrent类型基于lock-free,在常见的多线程访问 下面这张图是Java并发类库提供的各种各样的线程安全队列实现,注意,图中并未将非线程安全部分包含进来。 LinkedBlockingDeque无非是用一个独占锁来保持线程安全,然后用Condition来做阻塞操作 Concurren 阅读全文
posted @ 2018-08-16 09:45 Jed_SH 阅读(4058) 评论(0) 推荐(0) 编辑