首页
学习
活动
专区
工具
TVP
发布

架构师之旅

专栏成员
76
文章
97335
阅读量
42
订阅数
Redis高可用方案介绍
今天给大家介绍一下关于Redis的高可用方案,后面我们会针对每一种方案进行详细的展开。
用户1257215
2018-12-24
1.2K0
深入理解Java类加载器(ClassLoader)
本篇博文主要是探讨类加载器,同时在本篇中列举的源码都基于Java8版本,不同的版本可能有些许差异。主要内容如下
用户1257215
2018-10-26
1.6K0
Java并发编程:volatile关键字解析
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。
用户1257215
2018-10-09
2740
我用了7年时间成长为阿里Java架构师,你呢?
合格的程序员对于明确分配的任务会完成的很好,但是大部分情况下“架构”这个词意味着架构师并不会涉及太多细节,架构图和代码实现之间总还是有些距离,你无法保证所有人都会正确的理解你的设计,或者是程序员写代码时遇到障碍时会立刻想出足够优雅的解决方案。
用户1257215
2018-07-27
4380
轻松学习设计模式之设计模式认知篇
伴随着上面的问题,我们逐步开始今天的话题,要想开始学习设计模式,我们必须要对它有一个了解,这样才能更好的理解和应用,在我看来设计模式就是一种成熟的面向对象软件开发体系定义的一系列开发标准或者开发方法,它们可以拿来重复的使用,可以被所有开发人员认可,每个人都可以快速的使用。这个纯属个人的一些理解,那我们看一下专家学者如何来定义设计模式的?
用户1257215
2018-07-27
4060
Java正则速成秘籍(一)之招式篇
目录 导读 概述 Pattern类 Matcher类 校验文本是否与正则规则匹配 案例:lookingAt vs find vs matches 查找匹配正则规则的文本位置 案例:使用start()、end()、group() 查找所有匹配正则条件的子序列 替换匹配正则规则的文本 案例:replaceFirst vs replaceAll 案例:appendReplacement、appendTail和replaceAl
用户1257215
2018-01-30
9500
JVM内存管理------JAVA语言的内存管理概述
引言 内存管理一直是Java语言自豪与骄傲的资本,它让JAVA程序员基本上可以彻底忽略与内存管理相关的细节,只专注于业务逻辑。不过世界上不存在十全十美的好事,在带来了便利的同时,也因此引入了很多令人抓狂的内存溢出和泄露的问题。 可怕的事情还不只如此,有些使用其它语言开发的程序员,给JAVA程序员扣上了一个“不懂内存”的帽子,这着实有点让人难以接受。毕竟JAVA当中没有malloc和delete、没有析构函数、没有指针,刚开始接触JAVA的程序员们又怎么可能接触内存这一部分呢,更何况有不
用户1257215
2018-01-30
9280
JVM内存管理------GC算法精解
相信不少猿友看到标题就认为LZ是标题党了,不过既然您已经被LZ忽悠进来了,那就好好的享受一顿算法大餐吧。不过LZ丑话说前面哦,这篇文章应该能让各位彻底理解标记/清除算法,不过倘若各位猿友不能在五分钟内看完,那就不是LZ的错啦。 好了,前面只是小小开个玩笑,让各位猿友放松下心情。下面即将与各位分享的,是GC算法中最基础的算法------标记/清除算法。如果搞清楚这个算法,那么后面两个就完全是小菜一碟了。 首先,我们回想一下上一章提到的根搜索算法,它可以解决我们应该回收哪
用户1257215
2018-01-30
5710
Java9中的GC调优基础
在经过了几次跳票之后,Java 9终于在原计划日期的整整一年之后发布了正式版。Java 9引入了很多新的特性,除了闪瞎眼的Module System和REPL,最重要的变化我认为是默认GC(Garbage Collector)修改为新一代更复杂、更全面、性能更好的G1(Garbage-First)。JDK的维护者在GC选择上一直是比较保守的,G1从JDK 1.6时代就开始进入开发者的视野,直到今天正式成为Hotspot的默认GC,也是走了很长的路。 本文将主要讲解GC调优需要知道的一些基础知识,会涉及到一些
用户1257215
2018-01-30
7050
《Spring敲门砖之基础教程第一季》 第一章(4) Spring 开发工具及开发环境配置
回顾 上一节,我们主要讨论了Sping的历史版本演绎,从无到有,从发布版本1.0到5.0的功能特性分析,并且对现在正在开发5.0版本充期许。随着Spring功能的增强,逐步减少复杂的配置,让广大程序员能够少搬砖是一件很荣幸的事情。 今天,我们在进行正式开发之前,好像把开发工具和开发环境跟大家说一下,原本打算这节放在第二章的,但是内容不算太多而且很杂,就放在第一章最后简单的说一下,下面一章开始详细的实践讲解。 开发工具介绍 中国有句古话说的好,“工欲善其事必先利其器”
用户1257215
2018-01-30
9470
《Spring敲门砖之基础教程第一季》 第二章(1) Spring框架之IOC首例-HelloWorld
回顾 上一章我们主要学习了Spring的一些理论知识,对Spring框架有了一个总体的概括,大家应该在头脑里形成一个初步的印象,接下来我们就会针对Spring框架进行一些列的实践讲解,通过例子来展示Sping的魅力。 今天,我们主要讲解一个简单的示例,也是学习每一门语言或者一个工具,大家最通俗易懂,就是“HelloWorld”,我们通过Spring管理Bean,来输出一个“HelloWorld”。 构建项目 上一章节,我们已经将Spring所有的依赖的jar包下载到制定位置。今天我们来构建一个java项目,
用户1257215
2018-01-30
5390
解读java中volatile关键字的含义
在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。 Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile 关键字机制。 synchronized 同步块大家都比较熟悉,通过 synchronized 关键字来实现,所有加上synchronized 和 块语句,在多线程访问的时候,同一时刻只能有一个线程能够用 synchronized 修饰的方法 或者 代码块。 vola
用户1257215
2018-01-30
6650
《Spring敲门砖之基础教程第一季》 第一章 概要介绍
百度百科say: Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式) 轻量级开源框架。点击查看 WiKi say: Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE
用户1257215
2018-01-30
6260
《Spring敲门砖之基础教程第一季》 第一章(2)解读Spring Framework
系统架构 一个成功的项目离不开一个好的架构,一个好的架构自然需要一位好的设计师, Rod Johnson正是Spring的前生总架构设计师,那么spring有哪些模块,我们看一下由s
用户1257215
2018-01-30
7180
《Spring敲门砖之基础教程第一季》 第一章(3) Spring 框架历史及新功能介绍
回顾 上一节,我们简单介绍了Spring的各个模块,包含核心Sping容器模块、Spring的AOP模块、数据访问与集成模块、web应用模块、测试模块等,接着详细分析了每个模块所覆盖的功能,各模块之间的关系,最后我们列出来各功能模块所在的jar文件,为我们后面使用spring功能打下基础。 今天我们来分析一下sping的历史版本变更记录,并且结合最新的Spring官方文档说说它的新功能特性,以便于我们在开发项目中能够快速、熟练的应用。 Spring框架的历史 1.1 Spri
用户1257215
2018-01-30
8070
《干货系列》如何修炼成为一名高级程序猿?
每个人都有大梦想,作为程序员当然是想做一个程序大牛,毕竟不想当将军的厨子不是好裁缝!那么要想成为好裁缝,不好程序员,应该需要哪些知识呢?小编搜罗了一下,还真不少呢!吓死宝宝了! 架构师之旅 高级程序员需要: 1.Core Java部分 这是最基础的,对于一个java高级开发/设计人员,你需要对这一部分达到精通的水平,重点内容如下: a.面向对象编程思想(封装继承多态接口) b.字符串处理 c.java.lang包,java.util包等常用包 d.java异常处理 2.Java高级部分 a.Java I/O
用户1257215
2018-01-30
8760
【强烈推荐】Java工程师如何从一名普通的码农成长为一位大神
本文源自 http://www.hollischuang.com/archives/489 写在前面 java作为一门编程语言,在各类编程语言中作为弄潮儿始终排在前三的位置,这充分肯定了java语言的魅力,在实际项目应用中,我们已经无法脱离javaa(Ps当然你可以选择不使用),但它的高性能,稳定性,扩展性已经深入到每一个java编程工程师的骨髓里,随着时间的推移,我相信更多的项目会加入到java这个大家庭。 然而要想成为一名合格的java工程师并不容易,难于上青天,此话怎讲
用户1257215
2018-01-30
1.5K0
【Java SE】Java NIO系列教程(三) Buffer
Java NIO中的Buffer用于和NIO通道进行交互。如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。 下面是NIO Buffer相关的话题列表: Buffer的基本用法 Buffer的capacity,position和limit Buffer的类型 Buffer的分配 向Buffer中写数据 flip()方法 从Buffer中读取数据 clear
用户1257215
2018-01-30
6210
【Java SE】Java NIO系列教程(二) Channel
Java NIO的通道类似流,但又有些不同: 既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。 通道可以异步地读写。 通道中的数据总是要先读到一个Buffer,或者总是要从一个Bu
用户1257215
2018-01-30
6410
【Java SE】Java NIO系列教程(一) Java NIO 概述
Java NIO 由以下几个核心部分组成: Channels Buffers Selectors 虽然Java NIO 中除此之外还有很多类和组件,但在我看来,Channel,Buffer 和 Selector 构成了核心的API。其它组件,如Pipe和FileLock,只不过是与三个核心组件共同使用的工具类。因此,在概述中我将集中在这三个组件上。其它组件会在单独的章节中讲到。 Channel 和 Buffer 基本上,所有的 IO 在NIO 中都从一个Channel 开始。Channel 有点象流。 数
用户1257215
2018-01-30
7480
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档