• 欢迎访问 优知学院 请加入我们的架构交流分享群优知学院-架构师进阶
  • 如果您觉得这个博客非常有看点,那么赶紧使用Ctrl+D 收藏 :优知学院 吧!

2018年09月的内容

分布式系统

阿里P8架构师谈:分布式数据库数据一致性的原理、与技术实现方案

阿里P8架构师谈:分布式数据库数据一致性的原理、与技术实现方案
背景 可用性(Availability)和一致性(Consistency)是分布式系统的基本问题,先有著名的CAP理论定义过分布式环境下二者不可兼得的关系,又有神秘的Paxos协议号称是史上最简单的分布式系统一致性算法并获得图灵奖,再有开源产品ZooKeeper实现的ZAB协议号称超越Paxos。 在大数据场景下,分布式数据库的数据一致性管理是其最重要的内核技术之……继续阅读 »

陈睿 2年前 (2018-09-29) 4953浏览 0评论 9个赞

Java集合

阿里P8架构师谈:深入探讨HashMap的底层结构、原理、扩容机制

阿里P8架构师谈:深入探讨HashMap的底层结构、原理、扩容机制
摘要 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。 随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。 简介 Ja……继续阅读 »

陈睿 2年前 (2018-09-29) 11703浏览 2评论 28个赞

性能优化

大型网站Java Web前端优化最佳实践,以及最全优化工具集锦

大型网站Java Web前端优化最佳实践,以及最全优化工具集锦
前端的性能对于一个Web应用来说非常重要,如果一个Web应用的页面加载速度非常快、对于用户的操作可以及时响应,那么产品的用户体验将会极大地提升。下图显示了页面加载速度对于用户体验的影响。 大型网站Web优化最佳实践 1. 避免坏请求 有时页面中的HTML或CSS会向服务器请求一个不存在的资源,比如图片或HTML文件,这会……继续阅读 »

陈睿 2年前 (2018-09-28) 1976浏览 0评论 1个赞

性能优化

阿里P8架构师谈:流量高峰时期的性能瓶颈有哪些、以及如何来解决

阿里P8架构师谈:流量高峰时期的性能瓶颈有哪些、以及如何来解决
在高并发大量用户的场景,系统一般会面临如下三个挑战: 1. 日益增长的用户数量 2. 日渐复杂的业务 3. 急剧膨胀的数据 这些挑战对于性能优化而言表现为:在保持和降低系统TP95响应时间(指的是将一段时间内的请求响应时间从低到高排序,高于95%请求响应时间的下确界)的前提下,不断提高系统吞吐量,提升流量高峰时期的服务可用性。 ……继续阅读 »

陈睿 2年前 (2018-09-27) 2916浏览 1评论 3个赞

MySQL

阿里P8架构师谈:MySQL有哪些存储引擎,各自的优缺点,应用场景

阿里P8架构师谈:MySQL有哪些存储引擎,各自的优缺点,应用场景
经常面试都会问到MYSQL有哪些存储引擎,以及各自的优缺点。今天主要分享常见的存储引擎:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)等,以及最常用的MyISAM与InnoDB两个引擎 ,文章尾部有两者的详细比较。 MySQL常用存储引擎介绍 1.InnoDB 引擎(MySQL5.5以后默认使用) M……继续阅读 »

陈睿 2年前 (2018-09-27) 3829浏览 0评论 2个赞

RPC

阿里P8架构师谈:主流RPC框架详解,以及与SOA、SOAP、REST的区别

阿里P8架构师谈:主流RPC框架详解,以及与SOA、SOAP、REST的区别
什么是RPC RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。 简言之,RPC使得程序能够像访问本地系统资源一样,去访问远端系统资源。 比较关键的一些方面包括: 通讯协议 序列化 ……继续阅读 »

陈睿 2年前 (2018-09-25) 4061浏览 1评论 5个赞

Dubbo

阿里P8架构师谈:Dubbo的详细介绍、设计思路、以及4大适用场景

阿里P8架构师谈:Dubbo的详细介绍、设计思路、以及4大适用场景
Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。 简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别Web Service模式中……继续阅读 »

陈睿 2年前 (2018-09-25) 4993浏览 0评论 4个赞

消息中间件

消息中间件系列(三):主流的消息队列中间件有哪些?

消息中间件系列(三):主流的消息队列中间件有哪些?
消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。 当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。 本文主要探讨主流的消息队列MQ比较,特征,以及典型使……继续阅读 »

陈睿 2年前 (2018-09-25) 5394浏览 0评论 6个赞

分布式系统

阿里P8架构师谈:分布式事务的解决方案,以及原理、总结

阿里P8架构师谈:分布式事务的解决方案,以及原理、总结
分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在这几年越来越火的微服务架构中,几乎可以说是无法避免,本文就围绕分布式事务各方面与大家进行介绍。 事务 1.1 什么是事务 数据库事务(简称:事务,Transaction)是指数据库执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。 ……继续阅读 »

陈睿 2年前 (2018-09-21) 4682浏览 1评论 9个赞

Java面试题及答案

Java经典基础与高级面试36题和答案

Java经典基础与高级面试36题和答案
在Java面试的首轮,经常会问很多关于Java面试基础以及高级的问题,今天收集相关Java面试36题和答案分享出来。 1.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? “static”关键字表明一个成员变量或者是成员方法可以在没有所属的类的实例变量的情况下被访……继续阅读 »

陈睿 2年前 (2018-09-20) 9624浏览 6评论 51个赞

架构设计

阿里P8架构师谈:淘宝技术架构从1.0到4.0的架构变迁

阿里P8架构师谈:淘宝技术架构从1.0到4.0的架构变迁
淘宝技术架构变迁 自2003年创立以来的,淘宝业务发展非常迅速,几乎是每年以100%的速度在成长。创立之初,为了快速上线,抢占市场,选择了当时流行的LAMP架构,用PHP作为网站开发语言, Linux作为操作系统,Apache作为Web服务器,MySQL为数据库,用了三个月不到的时间淘宝就上线了。当时整个网站应用服务器大概10台左右,MySQL数据库采用了读……继续阅读 »

陈睿 2年前 (2018-09-19) 3167浏览 1评论 5个赞

面试题

最强阿里面试126题:数据结构+并发编程+Redis+设计模式+微服务

最强阿里面试126题:数据结构+并发编程+Redis+设计模式+微服务
BAT技术面试范围 数据结构与算法:最常见的各种排序,最好能手写 Java高级:JVM内存结构、垃圾回收器、回收算法、GC、并发编程相关(多线程、线程池等)、NIO/BIO、各种集合类的比较优劣势(底层数据结构也要掌握,特别是扩容等)等。 性能优化、设计模式、UML的……继续阅读 »

陈睿 2年前 (2018-09-18) 3884浏览 0评论 9个赞

分布式系统

阿里P8架构师谈:分布式Session共享的4类技术方案,与优劣势比较

阿里P8架构师谈:分布式Session共享的4类技术方案,与优劣势比较
什么是session 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。 当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过……继续阅读 »

陈睿 2年前 (2018-09-17) 4776浏览 0评论 3个赞

MySQL

阿里P8架构师谈:MySQL行锁、表锁、悲观锁、乐观锁的特点与应用

阿里P8架构师谈:MySQL行锁、表锁、悲观锁、乐观锁的特点与应用
我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突)。如何保证数据并发访问的一致性、有效性,是所有数据库必须解决的一个问题,锁的冲突也是影响数据库并发访问性能的一个重要因素,从这一角度来说,锁对于数据库而言就显得尤为重要。 MySQL锁概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。 ……继续阅读 »

陈睿 2年前 (2018-09-15) 5553浏览 1评论 14个赞

性能优化

阿里P8架构师谈:多线程、架构、异步消息、Redis等性能优化策略

阿里P8架构师谈:多线程、架构、异步消息、Redis等性能优化策略
常见性能优化策略分类 1.代码 之所以把代码放到第一位,是因为这一点最容易引起技术人员的忽视。很多技术人员拿到一个性能优化的需求以后,言必称缓存、异步、JVM等。实际上,第一步就应该是分析相关的代码,找出相应的瓶颈,再来考虑具体的优化策略。有一些性能问题,完全是由于代码写的不合理,通过直接修改一下代码就能解决问题的,比如for循环次数过多、作了很多无谓的条件判断、……继续阅读 »

陈睿 2年前 (2018-09-14) 3421浏览 0评论 5个赞

架构设计

阿里P8架构师谈:高并发网站的监控系统选型、比较、核心监控指标

阿里P8架构师谈:高并发网站的监控系统选型、比较、核心监控指标
在高并发分布式环境下,对于访问量大的业务、接口等,需要及时的监控网站的健康程度,防止网站出现访问缓慢,甚至在特殊情况出现应用服务器雪崩等场景,在高并发场景下网站无法正常访问的情况,这些就会涉及到分布式监控系统,对于核心指标提前监控,防患于未然。 常见的开源监控系统 1.Zabbix Zabbix是一个基于WEB界面的提供分布式系统……继续阅读 »

陈睿 2年前 (2018-09-13) 2937浏览 1评论 3个赞

MySQL

阿里P8架构师谈:MySQL慢查询优化、索引优化、以及表等优化总结

阿里P8架构师谈:MySQL慢查询优化、索引优化、以及表等优化总结
MySQL优化概述 MySQL数据库常见的两个瓶颈是:CPU和I/O的瓶颈。 CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候。 磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应用分布在网络上,那么查询量相当大的时候那么平瓶颈就会出现在网络上。 我们可以用mpstat, iostat, sar和vmstat来查看系……继续阅读 »

陈睿 2年前 (2018-09-12) 10174浏览 0评论 24个赞

面试题

2018最新阿里Java技术三面(已拿Offer):JVM+高并发性能+单点登录+微服务

2018最新阿里Java技术三面(已拿Offer):JVM+高并发性能+单点登录+微服务
一面 1.自我介绍 2.谈一个你觉得你学到最多的项目,使用了什么技术,挑战在哪里 3.Spring的bean的作用域?(比如:singleton,prototype等) 4.Spring的IOC实现原理?没有无参构造函数能实例化吗?有参构造函数注入?(xml配置) 5.通过反射,谈到了方法区,然后,类加载机制……继续阅读 »

陈睿 2年前 (2018-09-11) 3208浏览 3评论 3个赞

分布式缓存

阿里P8架构师谈:什么是缓存雪崩?服务器雪崩的场景与解决方案

阿里P8架构师谈:什么是缓存雪崩?服务器雪崩的场景与解决方案
什么是应用服务雪崩 雪崩问题 分布式系统都存在这样一个问题,由于网络的不稳定性,决定了任何一个服务的可用性都不是 100% 的。当网络不稳定的时候,作为服务的提供者,自身可能会被拖死,导致服务调用者阻塞,最终可能引发雪崩连锁效应。 缓存雪崩 当缓存服务器重启或者大量缓存集中在某一个时间段失效,这样在失效的时候,也会给后端系统(比如DB)……继续阅读 »

陈睿 2年前 (2018-09-11) 4068浏览 5评论 6个赞

架构设计

史上最强大型分布式架构详解:高并发+数据库+缓存+分布式+微服务+秒杀

史上最强大型分布式架构详解:高并发+数据库+缓存+分布式+微服务+秒杀
分布式架构设计是成长为架构师的必备技能,涵盖的内容很广,今天一次打包分享,文末有:最全分布式架构设计资料获取方式~ 负载均衡 负载均衡的原理和分类 负载均衡架构和应用场景 分布式缓存 常见分布式缓存比较:memcached和redis memca……继续阅读 »

陈睿 2年前 (2018-09-10) 9158浏览 36评论 35个赞

Docker

阿里P8架构师谈:Docker容器的原理、特征、基本架构、与应用场景

阿里P8架构师谈:Docker容器的原理、特征、基本架构、与应用场景
什么是容器? 一句话概括容器:容器就是将软件打包成标准化单元,以用于开发、交付和部署。 容器镜像是轻量的、可执行的独立软件包 ,包含软件运行所需的所有内容:代码、运行时环境、系统工具、系统库和设置。 容器化软件适用于基于Linux和Windows的应用,在任何环境中都能够始终如一地运行。 容器赋予了软件独立性,使其免……继续阅读 »

陈睿 2年前 (2018-09-08) 4682浏览 1评论 4个赞