作者莱乌来源IT界农民工(ID:kejishuqian)前段时间有读者提议讲讲索引下推,这期就把这事儿安排上。多余的前言就不赘述了,我们直接开始。列位坐好!思维导图回表操作对于数据库来说,只要涉及到索引,必然绕不过去回表操作。当然这也是我们今天所讲内容的前调基础。说到回表,我们需要从索引开始说起。别担心,不会长篇大论,这里只是简单讲下主键索引与普通索引,目的是让大家对回表操作有个认识。如果你对回表操作很熟悉了,...
2022-04-21 22:52:45 5861浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)这期的文章主要是讲述写操作过程中涉及到的三个日志文件,看过前几期的话可能你或多或少已经有些了解了(或者从别的地方也了解过)。比如整个写操作过程中用到的两阶段提交,又或者是操作过程中涉及到的日志文件,但是总体来说不是很系统更谈不上全面。今天我们就来会会这三兄弟。思维导图两阶段提交这个名词你应该听到过很多次了,在这里再介绍下这位老朋友。所谓的两阶段提交,从字面意...
2022-04-21 22:26:30 4602浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)写这篇文章是因为之前有一次删库操作,需要进行批量删除数据,当时没有控制好删除速度,导致产生了主从延迟,出现了一点小事故。今天我们就来看看为什么会产生主从延迟以及主从延迟如何处理等相关问题。坐好了,准备发车!思维导图主从常见架构随着日益增长的访问量,单台数据库的应接能力已经捉襟见肘。因此采用主库写数据,从库读数据这种将读写分离开的主从架构便随之衍生了出来。在...
2022-04-21 22:20:03 6181浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)SQL语句执行慢的原因是面试中经常会被问到的,对于服务端开发来说也是必须要关注的问题。在生产环境中,SQL执行慢是很严重的事件。那么如何定位慢SQL、慢的原因及如何防患于未然。接下来带着这些问题让我们开启本期之旅!思维导图写操作作为后端开发,日常操作数据库最常用的是写操作和读操作。读操作我们下边会讲,这个分类里我们主要来看看写操作时为什么会导致SQL变慢。刷脏页脏页的...
2022-04-21 22:13:48 5380浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)作为内存数据库,内存空间大小对于Redis来说是至关重要的。内存越多,意味着存储的数据也会越多。但是不知道你有没有遇到过这样的情况,明明空间很大,但是内存的使用却不是很理想。为什么会出现这样的情况呢这期我们就来看看这个"诡异"的事件。坐好了,准备发车!思维导图查看内存使用情况首先想要知道Redis内存的使用情况,我们就需要获取相关的信息。Redis中查看内存相关信息是很简单...
2022-04-21 22:06:29 5119浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)上周因为实在太忙就认认真真写了一篇水文,吹了一下自己过去的经历,反响竟然超出了我的预期,并且后台还有读者留言表示想看续集的。哈哈,果然大家还是对水文更有热情。这期我们继续回到之前的Redis话题。今天主要讲的是主从复制数据一致性相关以及面对网络中断如何进行数据同步的问题。不BB了,直接上钟吧!思维导图主从模式配置对于Redis主从大家可能并不陌生,但是配置的话日常工作...
2022-04-21 21:59:59 5594浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)Redis是单线程的,这话搁以前,是横着走的,谁都知道的真理。现在不一样,Redis变了。再说这句话,多少得有质疑的语气来跟你辩驳一番。意志不坚定的,可能就缴械投降,顺着别人走了。到底是什么样的,各位看官请跟小莱一起往下看:思维导图Reactor模式反应器模式,你可能不太认识,如果看过上篇文章的话应该会有点印象。涉及到Redis线程它是一个绕不过去的话题。1、传统阻塞IO模型在讲...
2022-04-21 21:52:10 6395浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)作为一名服务端工程师,工作中你肯定和Redis打过交道。Redis为什么快,这点想必你也知道,至少为了面试也做过准备。很多人知道Redis快仅仅因为它是基于内存实现的,对于其它原因倒是模棱两可。那么今天就和小莱一起看看:思维导图基于内存实现这点在一开始就提到过了,这里再简单说说。Redis是基于内存的数据库,那不可避免的就要与磁盘数据库做对比。对于磁盘数据库来说,是需要将数据...
2022-04-21 21:46:23 4771浏览 0点赞 0回复 0收藏
作者莱乌来源IT界农民工(ID:kejishuqian)上篇《干货:送你一份新鲜出炉的面试题》里提到了redis集群的三种模式,私下里就这道题和几位熟悉的朋友也交流过,很多答得不是很全面。大多数人平时对redis的使用很熟悉,但是对于这种偏思想与设计的东西却只是略知一二。那么,今天我们就来聊聊redis集群的三种模式。画外音:事实上,这道题在小莱的面试经历中被问到的频率还是挺高的。主从模式1、架构图2、集群介绍1)主从模式里使用...
2022-04-21 21:34:29 6669浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)Dubbo起源于阿里巴巴,对于我们做电商开发的人来说,基本是首选的技术,那么为何一个区区soa服务治理框架,会受到这么多人的青睐呢今天就跟着小羽一起看看这个微服务框架之一的Dubbo的详细解读吧。前言互联网的不断发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对。服务化的进一步发展,服务越来越多,服务之间的调用和依赖关系也越来越复杂,诞生了面向服务的架构...
2022-04-21 17:57:58 1.0w浏览 0点赞 0回复 0收藏
说起MySQL优化的话,想必大部分人都不陌生了。在我们的记忆储备里也早已记住了这些关键词:避免使用SELECT、避免使用NULL值的判断、根据需求适当的建立索引、优化MySQL参数......但是你对于这些优化技巧是否真正的掌握了及其相应的工作原理是否吃透了呢在我们的实际开发过程中你能充分应用到吗我觉得还有待考察。所以,本文将详细介绍MySQL优化技巧以及其相应的技术原理,希望大家看完以后,能更清楚直接的了解这些优化方案,并...
2022-04-21 17:41:24 6992浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)Redis的读写都是在内存中进行的,所以它的性能高。而当我们的服务器断开或者重启的时候,数据就会消失,那么我们该怎么解决这个问题呢其实Redis已经为我们提供了一种持久化的机制,分别是RDB和AOF两种方式,接下来跟着我一起看看这两个锦囊都是怎么保证数据的持久化的。持久化由于Redis是基于内存的数据库,所以当服务器出现故障的时候,我们的数据就得不到安全保障。这个时候就...
2022-04-21 17:39:19 6155浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)我们在平时工作中,使用最多的数据库就是MySQL了,随着业务的增加,如果单单靠一台服务器的话,负载过重,就容易造成宕机。这样我们保存在MySQL数据库的数据就会丢失,那么该怎么解决呢其实在MySQL本身就自带有一个主从复制的功能,可以帮助我们实现负载均衡和读写分离。对于主服务器(Master)来说,主要负责写,从服务器(Slave)主要负责读,这样的话,就会大大减轻压力,从而提高...
2022-04-21 17:27:29 3.5w浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)之前的一篇文章给大家介绍过了何为微服务:图文详解:如何给女朋友解释什么是微服务但是身为一名积极好学的前端女朋友还是会经常问我,微服务那么多理念,你跟我讲完,我就忘了,可以再给我讲讲它的思想到底是啷个回事嘛~看在她这么刻苦奋进的情况下,加之我们公司也做了许多微服务的项目,对此还算有所研究。今天就继续为大家带来深层次的关于微服务架构的讲解:在学习微服务之...
2022-04-21 17:11:42 6295浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)前言今天给大家带来的的是关于我们的老朋友Kafka的来世今生。随着对实时性的要求越来越高,那么在庞大的数据的传输过程中怎么能保证数据的快速传递呢,由此,消息队列产生了。“消息”是在两台计算机间传送的数据单位。消息可以非常简单,例如只包含文本字符串;也可以更复杂,可能包含嵌入对象。消息被发送到队列中。“消息队列”是在消息的传输过程中保存消息的容器。Kafka是一...
2022-04-21 16:38:02 9319浏览 0点赞 0回复 1收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)微服务:微服务是基于分而治之的思想演化出来的。过去传统的一个大型而又全面的系统,随着互联网的发展已经很难满足市场对技术的需求,于是我们从单独架构发展到分布式架构,又从分布式架构发展到SOA架构,服务不断的被拆分和分解,粒度也越来越小,直到微服务架构的诞生。微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用...
2022-04-21 16:28:14 5916浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)前言Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、KeyValue数据库,并提供多种语言的API。从2010年3月15日起,Reids的开发工作由VMware主持。Redis能运行在大多数POSIX(Linux,BSD,OSX和Solaris等)系统上。和普通的KeyValue结构不同,Redis的Key支持灵活的数据结构,除strings,还有hashes、lists、sets和sortedsets等结构。正是这些灵活的数...
2022-04-21 16:06:51 4447浏览 0点赞 0回复 0收藏
作者浅羽Eric来源浅羽的IT小屋(ID:codefeather)Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目。支持所有JDBC兼容的数据库,包括Oracle、MySQL、Derby、PostgreSQL、SQLServer、H2等。Druid在监控、可扩展性、稳定性和性能方面具有明显的优势。通过Druid提供的监控功能,可以实现观察数据连接池和SQL查询的工作情况,可以根据自己的需求监控自己的数据。本文将介绍如何配置关于Druid的监控统计功能,并访问内置的...
2022-04-21 15:59:12 8938浏览 0点赞 0回复 0收藏