- 博客(111)
- 收藏
- 关注
原创 2020年Java面试题及答案_Java面试宝典_Java笔试题(持续更新中)
101_本课程前提要求和说明[免费观看]20:19202_volatile是什么[免费观看]05:56303_JMM内存模型之可见性VIP专享20:35404_可见性的代码验证说明[免费观看]16:44505_volatile不保证原子性VIP专享17:26606_volatile不保证原子性理论解释VIP专享15:58707_volatile不保证原子性问题解决[免费观看]10:16808_volatile指令重排案例...
2020-05-22 11:21:59
3479
1
原创 SpringBoot2.0+SpringCloud+Vue构建微服务架构电商商城项目
SpringBoot2.0+SpringCloud 构建微服务电商商城。完整的购物流程运营管理及权限管理oauth授权中心+单点登录+第三方登录支付宝微信支付调用链及JVM监控及接口耗时监控可靠消息系统数据服务中心授权服务中心订单服务中心消息服务中心外部对接服务中心七牛云上传下载邮件短信发送技术栈核心框架:springcloud Edgware全家桶安全框架:S...
2020-04-26 20:24:12
4424
原创 彻底搞懂ConcurrentHashMap底层实现原理(JDK1.8)及源码分析
推荐教程并发编程JVMJava 微服务实践 视频教程- Spring CloudConcurrentHashMap数据结构ConcurrentHashMap相比HashMap而言,是多线程安全的,其底层数据与HashMap的数据结构相同,数据结构如下:说明:ConcurrentHashMap的数据结构(数组+链表+红黑树),桶中的结构可能是链表,也可能是红黑树,红黑树是为了提高查...
2020-04-09 21:25:36
7867
1
原创 彻底掌握JMM和底层实现原理--并发编程
推荐教程并发编程JVMJava 微服务实践 视频教程- Spring Cloud1.并发编程领域的关键问题1.1 线程之间的通信线程的通信是指线程之间以何种机制来交换信息。在编程中,线程之间的通信机制有两种,共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信,典型的共享内存通信方式就是通过共享对象进行通信。在...
2020-03-22 13:53:21
314
转载 实战Spring Boot构建多租户SaaS平台分享(含源代码)
推荐教程Java 微服务实践视频教程 - Spring全家桶Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloud1. 概述笔者从2014年开始接触SaaS(Software as a Service),即多租户(或多承租)软件应用平台;并一直从事相关领域的架构设计及研发工作。机缘巧合,在笔者本科毕业设计时完成了一个基于Sa...
2020-01-15 20:24:46
5331
2
原创 Spring 学习总结-精华
推荐教程Java 微服务实践视频教程 - Spring全家桶Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloud Spring介绍Spring 是一个开源框架,是一个分层的 JavaEE 一站式框架。所谓一站式框架是指 Spring ...
2019-12-26 17:01:22
284
原创 SpringBoot 中 JPA 的使用
Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloud前言第一次使用 Spring JPA 的时候,感觉这东西简直就是神器,几乎不需要写什么关于数据库访问的代码一个基本的 CURD 的功能就出来了。下面我们就用一个例子来讲述以下 JPA 使用的基本操作。新建项目,增加依赖在 Intellij IDEA 里面新建一个空的 Sp...
2019-11-26 14:27:39
259
原创 高并发架构系列:Kafka、RocketMQ、RabbitMQ的优劣势比较
推荐视频链接kafka/rabbitmq消息队列视频教程在高并发业务场景下,典型的阿里双11秒杀等业务,消息队列中间件在流量削峰、解耦上有不可替代的作用。之前介绍了《MQ消息队列的12点核心原理总结》,以及《如何从0到1设计一个MQ消息队列》,以及《RPC远程调用和消息队列MQ的区别》。今天我们一起来探讨:全量的消息队列究竟有哪些? Kafka、RocketMQ、RabbitMQ的优...
2019-11-07 19:14:53
370
原创 Spring Cloud系列教程 | 第十七篇:Spring cloud 如何在Zuul中使用fallback功能
推荐 Spring Boot/Cloud 视频:Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloud ...
2019-11-07 17:34:04
331
原创 java面试宝典2019(总结)
推荐面试视频教程2019最全BATJ面试免费视频教程java面试宝典20191、 meta标签的作用是什么2、 ReenTrantLock可重入锁(和synchronized的区别)总结3、 Spring中的自动装配有哪些限制?4、 什么是可变参数?5、 什么是领域模型(domain model)?贫血模型(anaemic domain model)和充血模型(rich domai...
2019-10-30 13:54:23
540
原创 2019年史上最全BATJ Java 面试题总结
推荐面试视频教程2019最全BATJ面试视频JAVA基础JAVA中的几种基本数据类型是什么,各自占用多少字节。String类能被继承吗,为什么。String,Stringbuffer,StringBuilder的区别。ArrayList和LinkedList有什么区别。讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当new的时候,他们的...
2019-10-08 19:31:15
217
原创 2019年Kubernetes安装说明安装k8s详细教程
推荐Kubernetes视频教程Kubernetes免费视频教程 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接...
2019-09-12 18:56:17
2404
1
原创 2019年SpringBoot 入门简介(超详细)
Spring-Boot 学习笔记Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频jvm调优kubernets+docerjvm秒杀项目实战Linux shell1 Spring-Boot 介绍1.1 什么是Spring-BootSpring-Boot是由Pivotal团队提供的全新框...
2019-07-04 19:31:46
608
原创 北漂程序员哭诉:过年回家被鄙视是失败者,不如国企亲戚有出息
导语:作为一个打工族来说,有时候过年真的不想回家,不是不想家人,而是不想听别人的数落,虽然有时候告诉自己不要在乎,但是说的人多了自然就放在心上了。而程序员的收入高,但是也不例外被别人鄙视,到底是为何呢?要说作为一名程序员,本该对自己的工作和收入是很满足的,毕竟他们的工作可不是一般人能代替的。编码那种东西确实比较难,所以有这种本事的人,让许多外行的人都刮目相看。可是这位程序员今天已经30,有女友...
2019-06-05 17:28:55
1037
原创 Java架构之路——从小白到架构师,从小工到CTO
高并发视频教程Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作三五年之后开始迷茫的老程序员经常会问到的问题。希望这篇文章会是你看到过的最全面最权威的回答。一: ...
2019-06-03 19:48:19
428
转载 从零开始使用IDEA创建SpringBoot项目(图文)
高并发视频教程Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频 SpringBoot的具体介绍可以参看其他网上介绍,这里就不多说了,就这几天的学习,个人理解,简而言之: (1)它是...
2019-05-27 19:25:20
494
转载 2019-java系统高并发解决方案
推荐 Spring Boot/Cloud /Redis视频:高并发视频教程Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频 转载博客地址:http://blog.csdn.net/zxl333/articl...
2019-05-23 19:51:07
372
转载 2019你必须掌握的SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
推荐 Spring Boot/Cloud /Redis视频:Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频 使用SSM(Spring、SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经...
2019-05-23 19:44:46
1705
转载 2019最新基于SpringBoot和SpringCloud实现微服务架构,你必须了解一下
推荐 Java Spring Boot/Cloud /Redis视频:Java视频Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频 Spring 顶级框架SpringCloud 的子项目什么是微服...
2019-05-23 19:21:25
4447
原创 2019干货系列:最新Java学习路线整合,你真的需要这张图
前言学习路线图往往是学习一样技术的入门指南。网上搜到的Java学习路线图也是一抓一大把。今天我只选一张图,仅此一图,足以包罗Java后端技术的知识点。所谓不求最好,但求最全,学习Java后端的同学完全可以参考这张图进行学习路线安排。当然,有一些知识点是可选的,并不是说上面有的你都要会啦。我在复习秋招的过程中就是基于此图进行复习的,感觉效果还是不错的。闲言少叙,我们还是看看这张图上都包含哪些...
2019-05-17 19:12:54
251
原创 Spring Boot 常见面试题你需要了解下
为什么会出现SpringBoot随着使用 Spring 运用的越来越广泛,Spring这个开源框架也在慢慢的壮大,但是问题也随之伴随而来了,大量的配置文件让开发者很是烦恼,要将大量的时间用在配置上。Spring g也意官方也识到了这些问题,所以 2013 年初开始的 Spring Boot 项目的研发,2014年4月,Spring Boot 1.0.0 发布。在2016年,在国内 Sprin...
2019-05-15 20:23:20
179
原创 Java程序员该掌握SpringBoot了
为什么会出现SpringBoot随着使用 Spring 运用的越来越广泛,Spring这个开源框架也在慢慢的壮大,但是问题也随之伴随而来了,大量的配置文件让开发者很是烦恼,要将大量的时间用在配置上。Spring g也意官方也识到了这些问题,所以 2013 年初开始的 Spring Boot 项目的研发,2014年4月,Spring Boot 1.0.0 发布。在2016年,在国内 Sprin...
2019-04-19 16:33:17
320
原创 从实际案例聊聊Java应用的GC优化
当Java程序性能达不到既定目标,且其他优化手段都已经穷尽时,通常需要调整垃圾回收器来进一步提高性能,称为GC优化。但GC算法复杂,影响GC性能的参数众多,且参数调整又依赖于应用各自的特点,这些因素很大程度上增加了GC优化的难度。即便如此,GC调优也不是无章可循,仍然有一些通用的思考方法。本篇会介绍这些通用的GC优化策略和相关实践案例,主要包括如下内容: > 优化前准备: 简单回顾JVM相关...
2019-01-30 14:59:23
552
原创 Spring Boot+SQL/JPA实战悲观锁和乐观锁
最近在公司的业务上遇到了并发的问题,并且还是很常见的并发问题,公司业务就是最常见的“订单+账户”问题,算是低级的失误了。由于公司业务相对比较复杂且不适合公开,在此用一个很常见的业务来还原一下场景,同时介绍悲观锁和乐观锁是如何解决这类并发问题的。推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频...
2018-12-20 16:17:03
3605
4
原创 基于redis(lua)和zookeeper分布式锁(秒杀)实现,分布式接口幂等,分布式速率限制器,分布式ID生成器.
最近的项目中遇到分布式幂等问题,在本文中,我将用一个简单demo,简单阐述下使用分布式锁解决幂等问题以及分布式环境下秒杀扣库存并发问题的解决基本思路。推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux...
2018-12-14 19:15:20
1036
原创 亿级流量并发系统之HTTP缓存
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell简介浏览器缓存是指当我们使用浏览器访问一些网站页面或者http服务时,根据服务端返回的缓存设置响应头将响应内容缓存到浏览器,下次可以直接使...
2018-11-30 14:12:00
219
原创 写了这么多年代码,你真的了解Java各种“锁”吗?
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell前言Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率。本文旨在对锁相关源码(本文中的源码来自JDK...
2018-11-16 16:33:10
420
原创 JVM基础系列教程|第五篇:Java服务GC参数调优案例
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell本文介绍了一次生产环境的JVM GC相关参数的调优过程,通过参数的调整避免了GC卡顿对JAVA服务成功率的影响。这段时间在整理jvm系列的...
2018-11-14 20:28:32
367
原创 JVM基础系列教程|第四篇:Java GC 日志分析
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell什么是 Java GCJava GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之...
2018-11-14 20:23:15
1112
原创 JVM基础系列教程|第三篇:GC算法分类 垃圾收集器种类
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell概述垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,...
2018-11-14 20:05:53
202
原创 JVM基础系列教程|第二篇:Java内存模型
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell所有的Java开发人员可能会遇到这样的困惑?我该为堆内存设置多大空间呢?OutOfMemoryError的异常到底涉及到运行时数据的哪块区域...
2018-11-14 19:57:37
205
原创 JVM基础系列教程|第一篇:类的加载机制原理
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shell原文链接1、什么是类的加载类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建...
2018-11-14 19:35:47
344
原创 Zookeeper的Leader选举原理及影响,你还在用zookeeper做服务发现吗?
Zookeeper的Leader选举原理及影响,你还在用zookeeper做服务发现吗:Zookeeper的Leader选举原理及影响,你还在用zookeeper做服务发现吗推荐 /Zookeeper视频:zookeeper实战视频...
2018-11-08 22:38:40
1695
原创 Raft协议实战之Redis Sentinel的选举Leader源码解析
Raft协议实战之Redis Sentinel的选举Leader源码解析:Raft协议实战之Redis Sentinel的选举Leader源码解析推荐 /Redis视频:redis高可用视频
2018-11-07 21:30:15
489
原创 Java并发编程原理与实战
推荐视频链接Java 微服务实践视频教程 - Spring BootJava 微服务实践 视频教程- Spring Cloudredis高可用视频分布式电商商城视频教程kubernets+docerjvm秒杀项目实战Linux shelljava并发编程是一个优秀的开发者成长过程中绕不过去的挑战。数据库服务,Web服务,大数据处理框架,分布式服务等等,并发编程往往扮演着极其重...
2018-11-02 20:28:54
695
原创 从源码分析SpringMVC工作原理
SpringMVC的工作原理图:推荐 Spring Boot/Cloud /Redis视频:Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频SpringMVC流程1、 用户发送请求至前端控制器DispatcherServlet。2、 DispatcherServlet收到请求调用Handler...
2018-10-29 17:09:52
329
原创 从源码看concurrentHashMap如何实现线程安全的
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。推荐 Spring Boot/Cloud /Redis视频:Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis...
2018-10-29 16:38:15
570
原创 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
前面一节说到了《为什么说Redis是单线程的以及Redis为什么这么快!》,今天给大家整理一篇关于Redis经常被问到的问题:缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等概念的入门及简单解决方案。推荐 Spring Boot/Cloud /Redis视频:Java 微服务实践 - Spring BootJava 微服务实践 - Spring Cloudredis高可用视频一、缓...
2018-10-29 16:08:01
203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人