MySQL逻辑架构及性能优化原理

MySQL逻辑架构 如果能在头脑中构建一幅MySQL各组件之间如何协同工作的架构图,有助于深入理解MySQL服务器。下图展示了MySQL的逻辑架构图。 MySQL逻辑架构整体分为三层,最上层为客户端层,并非MySQL所独有,诸如:连接处理、授权认证、安全等功能均在这一层处理。 MySQL...

2019-01-16 17:19:11

阅读数 120

评论数 0

详解RPC远程调用和消息队列MQ的区别

PC(Remote Procedure Call)远程过程调用,主要解决远程通信间的问题,不需要了解底层网络的通信机制。   RPC框架 知名度较高的有Thrift(FB的)、dubbo(阿里的)。   RPC的一般需要经历4个步骤: 1、建立通信 首先要解决通讯的问题:即A机器...

2019-01-08 21:04:04

阅读数 173

评论数 0

最新阿里内推Java后端面试题'

阿里一面题目: 1、osi七层网络模型,五层网络模型,每次层分别有哪些协议: 2、死锁产生的条件, 以及如何避免死锁,银行家算法,产生死锁后如何解决 3、如何判断链表有环 4、虚拟机类加载机制,双亲委派模型,以及为什么要实现双亲委派模型 5、虚拟机调优参数 6、拆箱装箱的原理 ...

2018-12-18 16:21:00

阅读数 277

评论数 0

浅析java内存模型--JMM

在并发编程中,多个线程之间采取什么机制进行通信(信息交换),什么机制进行数据的同步? 在Java语言中,采用的是共享内存模型来实现多线程之间的信息交换和数据同步的。 线程之间通过共享程序公共的状态,通过读-写内存中公共状态的方式来进行隐式的通信。同步指的是程序在控制多个线程之间执行程序的相对顺...

2018-12-07 15:50:26

阅读数 77

评论数 0

用Redis轻松实现秒杀系统

秒杀系统的架构设计 秒杀系统,是典型的短时大量突发访问类问题。对这类问题,有三种优化性能的思路: 1:写入内存而不是写入硬盘  2:异步处理而不是同步处理  3:分布式处理 用上这三招,不论秒杀时负载多大,都能轻松应对。更好的是,Redis能够满足上述三点。因此,用Redis就能轻松实现秒杀...

2018-11-29 22:06:54

阅读数 102

评论数 0

利用Redis实现分布式锁

写在最前面 我在之前总结幂等性的时候,写过一种分布式锁的实现,可惜当时没有真正应用过,着实的心虚啊。正好这段时间对这部分实践了一下,也算是对之前填坑了。 分布式锁按照网上的结论,大致分为三种:1、数据库乐观锁; 2、基于Redis的分布式锁;3.、基于ZooKeeper的分布式锁; 关于乐观...

2018-11-26 21:37:29

阅读数 71

评论数 0

Redis集群

集群原理 一个系统建立集群主要需要解决两个:数据同步问题和集群容错问题。 Naive方案 一个简单粗暴的方案是部署多台一模一样的Redis服务,再用负载均衡来分摊压力以及监控服务状态。这种方案的优势在于容错简单,只要有一台存活,整个集群就仍然可用。但是它的问题在于保证这些Redis服务的数据...

2018-11-26 20:42:30

阅读数 63

评论数 0

Spring Cloud底层原理

毫无疑问,Spring Cloud 是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。 不过大多数讲解还停留在对 Spring Cloud 功能使用的层面,其底层的很多原理,很多人可能并不知晓。 实际上,Spring Cloud 是一个全家桶式的技术栈,它包含了很多组件。本文先从...

2018-11-21 22:23:07

阅读数 506

评论数 0

分布式和事务你真的很熟吗?

本文注重实战或者实现,不涉及CAP,略提ACID。 本文适合基础分布式程序员: 本文会涉及集群中节点的failover和recover问题. 本文会涉及事务及不透明事务的问题. 本文会提到微博和tweeter,并引出一个大数据问题. 由于分布式这个话题太大,事务这个...

2018-11-20 22:18:55

阅读数 55

评论数 0

从程序员的角度深入理解MySQL

数据库基本原理 我对DB的理解 第一,数据库的组成:存储 + 实例 不必多说,数据当然需要存储;存储了还不够,显然需要提供程序对存储的操作进行封装,对外提供增删改查的API,即实例。 一个存储,可以对应多个实例,这将提高这个存储的负载能力以及高可用;多个存储可以分布在不同的机房、地域,...

2018-11-16 21:37:59

阅读数 95

评论数 1

什么样的经历,才能领悟成为架构师?

最近我发现,无论是博客也好,还是我写的技术专栏也好,经常会收到很多朋友的留言,留言的内容除了讨论技术问题以外,问的最多的,莫过于职业生涯规划相关的了。 例如: 我刚毕业,如何入行Java开发这一行业? 干了几年Java开发了,感觉进入瓶颈期,不知道下一步该怎么走了? 大家做生意的做生意,转管理...

2018-11-02 22:09:31

阅读数 166

评论数 0

dubbo负载均衡策略及对应源码分析

在集群负载均衡时,Dubbo 提供了多种均衡策略,缺省为 random 随机调用。我们还可以扩展自己的负责均衡策略,前提是你已经从一个小白变成了大牛,嘻嘻 1、Random LoadBalance 1.1 随机,按权重设置随机概率。 1.2 在一个截面上碰撞的概率高,但调用量越大分布越均匀,...

2018-10-25 14:48:06

阅读数 66

评论数 0

Dubbo和Spring Cloud微服务架构

微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如Dubbo和Spring C...

2018-10-23 22:17:13

阅读数 88

评论数 0

记录一次dubbo项目实战

  一、案例说明 存在2个系统,A系统和B系统,A系统调用B系统的接口获取数据,用于查询用户列表。     二、环境搭建 安装zookeeper,解压(zookeeper-3.4.8.tar.gz)得到如下: 然后进入conf将zoo_sample.cfg改名成zoo.cfg...

2018-10-22 22:27:13

阅读数 145

评论数 0

再看ThreadLocal

ThreadLocal,网上文章很多,大家也基本都会使用,但是不一定用的好,或者说不一定真的能理解 ThreadLocal ThreadLocal本身并不作为存储的容器,而是把值存放在当前线程中的变量里面,Thread类里如下: /* ThreadLocal values pert...

2018-10-21 19:45:30

阅读数 54

评论数 0

Spring事务事件监控

前面我们讲到了Spring在进行事务逻辑织入的时候,无论是事务开始,提交或者回滚,都会触发相应的事务事件。本文首先会使用实例进行讲解Spring事务事件是如何使用的,然后会讲解这种使用方式的实现原理。 1. 示例        对于事务事件,Spring提供了一个注解@TransactionE...

2018-10-21 15:29:05

阅读数 79

评论数 0

微服务架构组件分析

微服务架构组件 1. 如何发布和引用服务 服务描述:服务调用首先解决的问题就是服务如何对外描述。 常用的服务描述方式包括 RESTful API、XML 配置以及 IDL 文件三种。 RESTful API 主要被用作 HTTP 或者 HTTPS 协议的接口定义,即使在非微服务架构体系下,...

2018-10-19 21:34:37

阅读数 112

评论数 0

关于MySQL 通用查询日志和慢查询日志分析

MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。 1)通用查询日志:记录建立的客户端连接和执行的语句。 2)慢查询日志:记录所有执行时间超过longquerytime秒的所有查询或者不使用索引的查询 (1...

2018-10-10 21:49:28

阅读数 92

评论数 0

轻松理解Dubbo分布式服务框架

  Dubbo是什么?     Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个...

2018-10-09 22:41:39

阅读数 76

评论数 0

深入理解高并发下分布式事务的解决方案

1、什么是分布式事务 分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,...

2018-10-09 21:35:52

阅读数 176

评论数 0

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