随笔分类 - Java基础
JDK相关
摘要:内容 作为微服务架构系统的入口,毫无疑问,Zuul的并发性能直接决定了整个系统的并发性能。本文结合前几篇文章的内容,在云服务器中部署了包含Eureka Server,Zuul等组件的1.0版本的微服务架构,并进行单点部署Zuul的压力测试,对其并发性能一探究竟。 环境 说明 转载请说明出处:Spri
阅读全文
摘要:内容 作为微服务架构系统的入口,毫无疑问,Zuul的并发性能直接决定了整个系统的并发性能。本文结合前几篇文章的内容,在云服务器中部署了包含Eureka Server,Zuul等组件的1.0版本的微服务架构,并进行单点部署Zuul的压力测试,对其并发性能一探究竟。 版本 JVM监测工具:JVisu
阅读全文
摘要:内容 笔者在阿里云服务器中配置Java项目的JMX远程连接,在确认JVM参数、防火墙、阿里云安全组设置都无误后,使用JConsole等工具连接JVM时仍出现JMX连接失败的问题。笔者将该问题的解决方法记录成文,供网友遇到同样问题时能快速的处理。 版本 操作系统: CentOS 7.2 64位 JDK
阅读全文
摘要:内容 本文通过生活中的实际场景解释单体应用和微服务应用的关系,以及SpringCloud中各组件的功能和含义。 适合人群 Java开发人员 说明 转载请说明出处:SpringCloud从入门到进阶(一)——懂生活就懂微服务 GitHub仓库地址:https://github.com/leo-zz/S
阅读全文
摘要:内容 从实际项目需求出发,以最快的速度实现SpringBoot下Logback的配置。然后先后实践测试了SpringBoot内置的基础配置(SizeBasedTriggeringPolicy)、按时间划分日志文件的配置(TimeBasedRollingPolicy) 、同时按时间和大小划分日志文件的
阅读全文
摘要:内容 先介绍单机版Redis镜像在Docker下的安装,然后在容器的Redis Shell中进行常用类型String、List、Set、Hash、SortedSet的增删改查操作测试,最后再结合SpringBoot项目进行简单的测试。后续会推出哨兵模式(Sentinel,一主二从三哨兵)和集群模式(
阅读全文
摘要:内容 本文演示了Git在Windows系统下的安装,在GitHub上新建仓库,以及将本地项目源码上传到仓库中的操作。 版本 操作系统:Windows 10 Git version: 2.16.1-64-bit 说明 转载请说明出处:Linux入门实践笔记(四)——Win下安装配置Git以及Git
阅读全文
摘要:内容 单体应用中各个模块拆分成独立的系统,逐步演变出微服务架构。为了屏蔽微服务内部的复杂调用,引入了Zuul作为微服务调用的统一入口。本文介绍了Zuul的常用配置和使用,并通过简单的演示进行了测试。 版本 IDE:IDEA 2017.2.2 x64 JDK:1.8.0_171 manve:3.3.3
阅读全文
摘要:内容 SpringBoot整合SpringCloud的Eureka、Zuul等组件,快速实现简单易懂且具有服务熔断、负载均衡的分布式架构1.0,体验微服务的魅力。 版本 IDE:IDEA 2017.2.2 x64 JDK:1.8.0_171 manve:3.3.3 SpringBoot:1.5.9.
阅读全文
摘要:内容 本文主要介绍了Spring Boot项目打成jar包后,如何在centos上前台、后台启动和关闭,以及多jar包通过编写简单脚本批量启动。 版本 操作系统: CentOS 7.2 64位 JDK:1.8.0_181 适合人群 linux运维人员,Java开发人员 说明 转载请说明出处:Linu
阅读全文
摘要:内容 服务发现是微服务架构中一个关键的原则,Eureka提供了服务注册和服务发现的功能,并且各注册中心之间会互相拷贝所注册的微服务的信息,这一机制增强了Eureka对网络分区的容错能力。本篇文章讲解了在一台主机上运行三个Eureka Server实例,实现Eureka的伪分布式部署。 版本 IDE:
阅读全文
摘要:内容 解压tar安装包的方式,在阿里云服务器中安装JDK,然后运行Spring Boot项目。 目录 一、准备 1.1检查当前服务器是否安装有JDK 1.2若显示如下信息,则表示已经安装了JDK,一些版本默认安装有OpenJDK 1.3 OpenJDK是通过rpm进行安装的,也需要使用rpm进行删除
阅读全文
摘要:内容 本文对JDK1.7下使用segmentShift和segmentMask求解ConcurrentHashMap键值对在Segment[]中的下标值进行了探究和论证。 适合人群 Java进阶 说明 转载请注明出处,尊重笔者的劳动成果。 推荐阅读 探究HashMap线性不安全(二)——链表成环
阅读全文
摘要:内容 网上很多资料都详细地讲解了HashMap底层的实现,但是讲到HashMap的并发操作不是线性安全时,往往一笔带过:在多个线程并发扩容时,会在执行transfer()方法转移键值对时,造成链表成环,导致程序在执行get操作时形成死循环。 对于没有研究过该过程的童鞋,很难费解这句话的含义。下面
阅读全文
摘要:内容 网上很多资料都详细地讲解了HashMap底层的实现,但是讲到HashMap的并发操作不是线性安全时,往往一笔带过:在多个线程并发扩容时,会在执行transfer()方法转移键值对时,造成链表成环,导致程序在执行get操作时形成死循环。 对于没有研究过该过程的童鞋,很难费解这句话的含义。
阅读全文
摘要:内容 网上很多资料都详细地讲解了HashMap底层的实现,但是讲到HashMap的并发操作不是线性安全时,往往一笔带过:在多个线程并发扩容时,会在执行transfer()方法转移键值对时,造成链表成环,导致程序在执行get操作时形成死循环。 对于没有研究过该过程的童鞋,很难费解这句话的含义。
阅读全文
浙公网安备 33010602011771号