Java后端技术交流群!学习技术期待你的加入!(分享资料,书籍,源码等)

专注Java技术,Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、多线程,群内有大牛解答。   免费Java架构资料 需要完整思维导图和学习资料的可以添加这个交流群,进群找群主要即可。   QQ群每周五发放学习资源福利,期待你的加入!...

2018-07-25 14:25:19

阅读数 1135

评论数 0

想成为Java架构师?先学会如何画好架构图吧!

技术传播的价值,不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径,加速业务的上线速率,也体现在优秀工程师在工作效率提升、产品性能优化和用户体验改善等经验方面的分享,以提高我们的专业能力。 当我们想用一张或几张图来描述我们的系统时,是不是经常遇到以下情况: 对着画布无从下手、删了又来?...

2019-05-12 22:16:15

阅读数 853

评论数 0

重构:高手的姿势你学不会

软件开发是一门工程技术,其中任何一个技术或技能如果孤立地看都会是管中窥豹,只见一斑。任何一个作者在写书时都有一些前提和细节,然而经常是要不作者没说清楚,要不读者直奔主题而忽略了这些前提和细节,结果是东施效颦,适得其反,照猫画虎不成反类犬。 我在和很多人交流重构的时候发现,大家非常注重重构的结果,即...

2019-05-10 21:15:12

阅读数 7

评论数 0

腾讯大牛教你如何使用Java实现二叉树的添加,删除,获取以及遍历

一段来自百度百科的对二叉树的解释: 在计算机科学中,二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。 一棵深度为k,且有2^k-1个节点的二叉树,称为满二叉树。这种树的特点...

2019-05-09 16:59:22

阅读数 11

评论数 0

技巧分享丨可以提高千倍效率的Java代码的35个小技巧

前言 代码优化 ,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。 代码优化也是一样,如果项目着眼于尽快无BUG上线,那...

2019-05-08 15:18:20

阅读数 36

评论数 0

JVM 与 Linux 的内存关系详解

在一些物理内存为8g的服务器上,主要运行一个Java服务,系统内存分配如下:Java服务的JVM堆大小设置为6g,一个监控进程占用大约 600m,Linux自身使用大约800m。 从表面上,物理内存应该是足够使用的;但实际运行的情况是,会发生大量使用SWAP(说明物理内存不够使用 了),如下图所示...

2019-05-05 21:52:36

阅读数 13

评论数 0

Java大学问——优雅地处理异常

一.前言 你有没有这样的印象,当你想要更新一款 APP 的时候,它的更新日志里总有这么一两句描述: 修复若干 bug 杀了某程序员祭天,并成功解决掉他遗留的 bug 作为一名负责任的程序员,我们当然希望程序不会出现 bug,因为 bug 出现的越多,间接地证明了我们的编程能力越差,至少领导是这...

2019-05-05 16:34:45

阅读数 11

评论数 0

微服务探索与实践—服务注册与发现

前言 微服务从大规模使用到现在已经有很多年了,从之前的探索到一步步的不断完善与成熟,微服务已经成为众多架构选择中所必须面对的一个选项。服务注册与发现是相辅相成的,所以一般会合起来思索。其依托组件有很多,比如Zookeeper,Consul,Eureka等等。 本文,我们将探讨服务注册和发现的概念及...

2019-05-04 17:13:04

阅读数 13

评论数 0

讲一些你所不知道的Java动态代理

简介 Proxy 是设计模式中的一种。当需要在已存在的 class 上添加或修改功能时,可以通过创建 proxy object 来实现 通常 proxy object 和被代理对象拥有相同的方法,并且拥有被代理对象的引用,可以调用其方法 代理模式应用场景包括 在方法执行前后打印和记录日志 认证、...

2019-05-02 21:24:15

阅读数 5

评论数 0

讲一些你所不知道的Java动态代理

简介 Proxy 是设计模式中的一种。当需要在已存在的 class 上添加或修改功能时,可以通过创建 proxy object 来实现 通常 proxy object 和被代理对象拥有相同的方法,并且拥有被代理对象的引用,可以调用其方法 代理模式应用场景包括 在方法执行前后打印和记录日志 认证、...

2019-05-02 21:24:06

阅读数 7

评论数 0

深入学习Java序列化

前言 对于Java的序列化,一直只知道只需要实现Serializbale这个接口就可以了,具体内部实现一直不是很了解,正好这次在重复造RPC的轮子的时候涉及到序列化问题,就抽时间看了下 Java序列化的底层实现,这篇文章算是这次的学习小结吧。 第一部分:What Java序列化是指把Java对象保...

2019-04-30 16:08:32

阅读数 19

评论数 0

详解SpringBoot——启动原理及自定义starter

一、引言 SpringBoot的一大优势就是Starter,由于SpringBoot有很多开箱即用的Starter依赖,使得我们开发变得简单,我们不需要过多的关注框架的配置。 在日常开发中,我们也会自定义一些Starter,特别是现在微服务框架,我们一个项目分成了多个单体项目,而这些单体项目中会...

2019-04-30 11:50:39

阅读数 28

评论数 0

对于MySQL你必须要了解的锁知识

一、前言 MySQL 的锁按照范围可以分为全局锁、表锁、行锁,其中行锁是由数据库引擎实现的,并不是所有的引擎都提供行锁,MyISAM 就不支持行锁,所以文章介绍行锁会以InnoDB引擎为例来介绍行锁。 二、全局锁 MySQL 提供全局锁来对整个数据库实例加锁。 语法: FLUSH TABLES...

2019-04-29 11:32:03

阅读数 35

评论数 0

阿里架构师手写Tomcat——Session源码解析

在 web 开发中,我们经常会用到 Session 来保存会话信息,包括用户信息、权限信息,等等。在这篇文章中,我们将分析 tomcat 容器是如何创建 session、销毁 session,又是如何对 HttpSessionListener 进行事件通知 tomcat session 设计分析 ...

2019-04-28 20:45:21

阅读数 21

评论数 0

吐血总结——90%程序员面试都用得上的索引优化手册

目录 多关于索引,分为以下几点来讲解: 一、索引的概述(什么是索引,索引的优缺点) 二、索引的基本使用(创建索引) 三、索引的基本原理(面试重点) 四、索引的数据结构(B树,hash) 五、创建索引的原则(重中之重,面试必问!敬请收藏!) 六、百万级别或以上的数据如何删除 一、索引的概述 Ⅰ、...

2019-04-27 21:54:03

阅读数 30

评论数 0

哪有什么中年危机,不过是把定目标当成了有计划

一、计划比总结更具有建设性 个人以为,计划其实比总结更具有建设性。 计划是主动的,总结是被动的。计划首先意味著你有目标,有了目标,才会有决心和动力。人们常常讲求方法与效率的重要性,固然不错,但在方法之前,是方向。 “对于盲目航行的帆船,什么风都是逆风。” 打个比方,以理财中的储蓄为例——很多人应该...

2019-04-27 20:31:48

阅读数 16

评论数 0

JDK源码——利用模板方法看设计模式

前言: 相信很多人都听过一个问题:把大象关进冰箱门,需要几步? 第一,把冰箱门打开;第二,把大象放进去;第三,把冰箱门关上。我们可以看见,这个问题的答案回答的很有步骤。接下来我们介绍一种设计模式——模板方法模式,你会发现,它与这个问题的答案实际上有很多共同之处。 一、定义 定义一个算法骨架,允许子...

2019-04-25 12:28:28

阅读数 14

评论数 0

面试中可能被问到的常用排序算法

排序算法 排序算法是一种比较简单的算法,从我们一开始接触计算机编程开始接触的可能就是排序或者搜索一类的算法,但是因为排序在其他的一些算法中应用较多,所以为了提高性能已经研究了多种排序算法。目前区别排序算法主要还是以时间复杂度,空间复杂度,稳定性等来排序,接下来我们分别分析。 稳定性算法 区别一个排...

2019-04-24 17:18:44

阅读数 13

评论数 0

MySQL的可重复读级别能解决幻读吗

引言 之前在深入了解数据库理论的时候,了解到事物的不同隔离级别可能存在的问题。为了更好的理解所以在MySQL数据库中测试复现这些问题。关于脏读和不可重复读在相应的隔离级别下都很容易的复现了。但是对于幻读,我发现在可重复读的隔离级别下没有出现,当时想到难道是MySQL对幻读做了什么处理? 测试: 创...

2019-04-24 15:40:58

阅读数 34

评论数 0

通过Spring Boot Webflux实现Reactor Kafka

在Apache Kafka简介中,我们研究了分布式流媒体平台Apache Kafka。这一次,我们将关注Reactor Kafka,这个库可以创建从Project Reactor到Kafka Topics的Reactive Streams,反之亦然。 我们将使用两个小型示例应用程序,Payment...

2019-04-24 12:23:09

阅读数 14

评论数 0

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