自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

转载 Java 中的 syncronized 你真的用对了吗

生活中随处可见并行的例子,并行 顾名思义就是一起进行的意思,同样的程序在某些时候也需要并行来提高效率,在上一篇文章中我们了解了Java 语言对缓存导致的可见性问题、编译优化导致的顺序性问题的解决方法,下面我们就来看看Java 中解决因线程切换导致的原子性问题的解决方案-- 锁。说到锁我们并不陌生,日常工作中也可能经常会用到,但是我们不能只停留在用的层面上,为什么要...

2019-09-19 22:38:00 177

转载 并发编程学习篇_01 并发原理

本系列是 极客时间王宝令老师《JAVA 并发编程实战》课程的学习笔记,目的在于学习之后的思考与总结,将学到的东西转换成自己的东西,输出出来。架构图如下:导致并发的原因有三种:缓存导致的可见性问题线程切换带来的原子性问题编译优化带来的顺序性问题并发源头之一:缓...

2019-09-08 15:38:00 125

转载 happen before 原则

并发一直都是程序开发者绕不开的难题,在上一篇文章中我们知道了导致并发问题的源头是 :多核 CPU 缓存导致程序的可见性问题、多线程间切换带来的原子性问题以及编译优化带来的顺序性问题。原子性问题我们暂且不谈,Java 中有足够健壮的锁机制来保证程序的原子性,后面学习的重点也是在这方面。今天我们就先来看看 Java 是怎么解决可见性与顺序性问题的。合理的建议是按需禁用...

2019-09-08 15:33:00 132

转载 重构_使用模板模式替代重复业务操作

在日常开发中经常有重复的业务操作,每次写这些重复操作时总感觉冗余,又少点管理。今天我在开发中又遇到了这个问题,却发现项目组中的大牛已经帮我将重复的操作管理好了,于是便请教一番,偷偷学了这个---模板设计模式。模板设计模式要注意以下几点:将重复的业务操作抽取出一套模板;将实现模板的实现类放到管理器中统一管理;在业务中用的...

2019-07-28 22:31:00 193

转载 入门学算法_堆排序、树遍历、生产消费模型

程序员的基本功包括数据结构与算法、操作系统、数据库原理、网络等等,这些提升内功的东西是需要花费长时间去练习的,也只有这些东西才是阻碍发展的瓶颈。工作了几年就会发现,技术框架更新迭代非常快,框架是学不完的,但是框架的底层原理都是相同的,都是由基础衍生出来的,今天我继续之前的学习算法之路来看看基本功中排序算法的堆排序、二叉树的遍历与生产者消费者模型。...

2019-07-08 11:33:00 170

转载 再写单例模式,就把这篇文章转给他吧

Java 中单例模式是一种常见的设计模式,几乎设计模式面试题中必问的,开始之前我们先了解一下为什么需要单例模式。为什么需要单例模式单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能...

2019-07-06 21:57:00 164

转载 分布式协调框架_Zookeeper

Zookeeper 如今在分布式架构中应用十分广泛,它作为分布式协调框架在分布式架构中有着举足轻重的地位,本文是主要从以上几个方面对Zookeeper 常用的知识进行总结。一 从集中式到分布式架构的演变架构的演变过程在之前的文章《浅谈网站架构演变》中有所介绍分布式服务架构:分布式架构:由多台机器通过网络通信组成,分布式的...

2019-06-02 18:29:00 200

转载 到底什么是时间复杂度

​我们常常在武侠小说中看到一位内力精深的高手在学习新的招式的时候修炼速度异常惊人,我心目中最经典的片段就是倚天屠龙记中张无忌学习乾坤大挪移和太极拳的时候了,他能在极短的时间内领会常人数十年所不能掌握的东西,即使拍了很多版本,每次看到这,我都大呼过瘾,仍然看的津津有味~数据结构和算法对于程序员来说就像是武侠世界中江湖人士的内功心法,其重要程度不言而喻,而开启数据结构与算...

2019-04-27 17:34:00 347

转载 一文了解 Hadoop 运行机制

大数据技术栈在当下已经是比较成熟的了,Hadoop 作为大数据存储的基石,其重要程度不言而喻,作为一个想从 java 后端转向大数据开发的程序员来说,打好 Hadoop 基础,就相当于夯实建造房屋的地基,本文以上图结构为基本,旨在帮助大家快速了解 Hadoop 运行机制。 HDFS 篇HDFS就是大家熟知的分布式存储的文件系统,它包括 3 ...

2019-03-30 19:37:00 753

转载 十问 JVM

今天我们来讨论下 Java 虚拟机,通过一系列常见的问题来逐渐深入了解 JVM 创建对象过程,内存布局,类加载以及 GC 回收算法等机制。十问 JVM 问题整理:Java虚拟机创建对象的过程 (使用new的方式)对象的内存布局双亲委派机制JVM的内存布局JVM中的类加载机制垃圾回收算法与垃圾收集...

2019-03-17 16:30:00 80

转载 二分法与二叉树的 Java 实现

算法与数据结构始终是计算机基础的重要一环,今天我们来讨论下 Java 中二叉树的实现以及一些简单的小算法,如二分查找,归并排序等。 二分查找二分查找是一种在有序数组中查找某一特定元素的搜索算法,它在开发中应用的也是非常广泛,需要注意的是二分法是建立在有序数组基础上的快速查找,所以一般需要先对数组进行排序。算法思想...

2019-03-13 00:26:00 272

转载 聊聊 JUC 并发包

今天开始我们聊聊 Java 并发工具包中提供的一些工具类,本文主要从并发同步容器和并发集合工具角度入手,简单介绍下相关 API 的用法与部分实现原理,旨在帮助大家更好的使用和理解 JUC 工具类。 在开始今天的内容之前,我们还需要简单回顾下线程、 syncronized 的相关知识。Java 线程的运行周期中的几种状态, 在java.la...

2019-03-10 22:25:00 247

转载 浅谈网站架构演变

浅谈网站架构作为一个从事后台开发已经2年的程序员来讲,大部分时间都忙于业务逻辑分析,往往忽略了业务之上的架构层面的设计。本文作为网站架构知识的补充,不仅开拓了眼界,也对以后的程序设计益处多多。下面我们就一起来看看网站架构的演变历史。网站架构的演变大致分为如下几个阶段:1初始阶段的网站架构网站在最初开始时没有太多人访问,用一台服务...

2019-03-06 23:38:00 161

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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