最新文章
-
从Java程序员进阶到架构师,史上最全进阶详解
从Java程序员到架构师进阶,将涉及到数据结构和算法,Java编程语言掌握,Javaweb核心技术,数据库,Java框架与必备工具,系统架构设计等六大环节。 编程基础:数据结构和算法 1 算法分析与计算 算法时间复杂度和空间复杂度的分析计算 2.算法思想 递推、递归、穷举、贪心、分治、动态规划、迭代、分枝界限 3常用数据结构 数组、链表、堆、栈、队列、Hash表、二叉树…... -
从单体架构、到SOA、再到微服务的架构设计详解
本文涉及的内容以及知识点如下: 1、单体架构 2、单体架构的拆分 3、SOA与微服务的区别 4、微服务的优缺点 5、微服务的消息 6、服务集成 7、数据的去中心化 单体架构 Web应用程序发展的早期,大部分web工程是将所有的功能模块(service side)打包到一起并放在一个web容器中运行,很多企业的Java应用程序打包为war包。其他语言(Ruby,Python或者C )写的程序也有类似…... -
我眼中真正优秀的CTO长啥样
现在很多创业公司在找CTO,但是优秀的CTO是极度稀缺的,究竟优秀的CTO需要具备什么样的特征,如何才能成为优秀的CTO呢。 1.技术广度和深度同时具备 作为CTO你不可能什么技术都精通,但什么技术你都要懂和了解,以及对如今的技术发展趋势和技术的各种使用场景,需要掌握。 使用场景分为产品的早期、中期、后期对应的技术方案要清楚。例如,在早期阶段,产品最急缺的是技术能配合快速试错,对技术…... -
史上最全Java架构师技能图谱
java架构师最全技能图谱,包含:数结构算法、java进阶、web开发、框架与工具、设计模式、UML、中间件、分布式集群、负载均衡、通讯协议、架构设计等技术图谱等章节 一:数据结构算法 算法分析 时间复杂度和空间复杂度 算法思想 递推、递归、穷举、贪心、分治、动态规划、迭代、分枝界限 数据结构 数组、链表、堆、栈、队列、Hash表、二叉树等 算法 排序 经典排序:插入排序、冒泡排序、快排(分划交换…... -
深入详解JVM内存模型与JVM参数详细配置
JVM基本是BAT面试必考的内容,今天我们先从JVM内存模型开启详解整个JVM系列,希望看完整个系列后,可以轻松通过BAT关于JVM的考核。 BAT必考JVM系列专题 1.JVM内存模型 2.JVM垃圾回收算法 3.JVM垃圾回收器 4.JVM参数详解 5.JVM性能调优 JVM内存结构 由上图可以清楚的看到JVM的内存空间分为3大部分: 堆内存 方法区 栈内存 其中栈内存可以再细分为java虚拟…... -
Kafka、RocketMQ、RabbitMQ等的优劣势比较
在高并发业务场景下,典型的阿里双11秒杀等业务,消息队列中间件在流量削峰、解耦上有不可替代的作用。 之前介绍了MQ消息队列的12点核心原理总结,以及如何从0到1设计一个消息队列中间件,以及详解RPC远程调用和消息队列MQ的区别 今天我们一起来探讨: 全量的消息队列究竟有哪些? Kafka、RocketMQ、RabbitMQ的优劣势比较 以及消息队列的选型 最全MQ消息队列有哪些 那么目前在业界…... -
成长为月薪50K的阿里P7 Java架构师,必须掌握的7大技能!
整理一份成长为阿里Java技术专家的7个技能体系,希望对你的高薪之路有所参考。 1.Java编程必备 多线程:创建与使用、线程同步与锁、线程池等的掌握 JVM:你只有深入理解虚拟机的内存回收机制,才能正确使用JVM性能调优 掌握NIO,以及对应NIO框架Netty JUC下的工具包:AtomicInteger等原子操作类,基于AQS锁: ReentrantLock Semaphore CountD…... -
双11秒杀系统如何设计?
秒杀活动场景 淘宝双11秒杀场景,大量的用户短时间内涌入,瞬间流量巨大(高并发),比如:1000万人同一时间抢购100件商品。秒杀活动是一个特别考验后台数据库、缓存服务的业务,对于数据库、缓存的性能要求特别严格。 秒杀背后的技术挑战 1、突增的服务器及网络需求 通常情况下,双 11 的服务器使用是平时的 3-5 倍,网络带宽是平时 N倍。 2、业务高并发,服务负载重 我们通常衡量一个 Web 系统…... -
MySQL行锁、表锁、悲观锁、乐观锁的特点与应用
我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突)。如何保证数据并发访问的一致性、有效性,是所有数据库必须解决的一个问题,锁的冲突也是影响数据库并发访问性能的一个重要因素,从这一角度来说,锁对于数据库而言就显得尤为重要。 MySQL锁概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。 比如: MyISAM和MEMORY存…...