自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 这四种情况下,才是考虑分库分表的时候!

数据库瓶颈不管是IO瓶颈还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载的活跃连接数的阈值。在业务service来看,就是可用数据库连接少甚至无连接可用,接下来就可以想象了(并发量、吞吐量、崩溃)。IO瓶颈 第一种:磁盘读IO瓶颈,热点数据太多,数据库缓存放不下,每次查询会产生大量的IO,降低查询速度->分库和垂直分表 第二种:网络IO瓶颈,请求的数据太多,网络带宽不够 ->分库 CPU瓶颈 第一种:SQl问题:如SQ..

2021-01-13 16:35:24 103

原创 缓存,确实很香!浅谈用不好缓存的几个受伤场景!

缓存的使用,是一个逐渐演进的过程。问一下你自己,最直接的使用缓存的原因是什么?无它,唯快而已!追溯一下自己最开始使用缓存的场景,一些数据库里存储的不变的配置信息,服务启动时,直接加载到本地公共模块,方便其它功能模块共享使用。这便是最基本,最简单的本地缓存应用。服务与缓存所谓的服务,简而言之,一层应用+一层数据,应用从数据层获取数据然后加工输出。数据层,通常我们指的是持久化介质上的持久化存储。它有多种形式的,可以是文件,或者数据库。数据存储在持久化介质上,而应...

2020-12-29 10:54:34 71

原创 如何使用redis实现轻量级搜索引擎

场景大家如果是做后端开发的,想必都实现过列表查询的接口,当然有的查询条件很简单,一条 SQL 就搞定了,但有的查询条件极其复杂,再加上库表中设计的各种不合理,导致查询接口特别难写,然后加班什么的就不用说了(不知各位有没有这种感受呢~)。下面以一个例子开始,这是某购物网站的搜索条件,如果让你实现这样的一个搜索接口,你会如何实现?(当然你说借助搜索引擎,像Elasticsearch之类的,你完全可以实现。但我这里想说的是,如果要你自己实现呢?)从上图中可以看出,搜索总共分为6大类,每大类中又..

2020-12-28 16:54:19 74

原创 秒杀架构模型设计

前言:秒杀系统相信很多人见过,比如京东或者淘宝的秒杀,小米手机的秒杀,那么秒杀系统的后台是如何实现的呢?我们如何设计一个秒杀系统呢?对于秒杀系统应该考虑哪些问题?如何设计出健壮的秒杀系统?本期我们就来探讨一下这个问题:博客的目录 一:秒杀系统应该考虑的问题 二:秒杀系统的设计和技术方案 三:系统架构图 四:总结 一:秒杀应该考虑哪些问题1.1:超卖问题分析秒杀的业务场景,最重要的有一点就是超卖问题,假如备货只有100个,但是最终超卖了...

2020-09-17 10:39:10 84

原创 高并发场景下的缓存常见的问题

一、缓存一致性问题当数据时效性要求很高时,需要保证缓存中的数据与数据库中的保持一致,而且需要保证缓存节点和副本中的数据也保持一致,不能出现差异现象。这就比较依赖缓存的过期和更新策略。一般会在数据发生更改的时,主动更新缓存中的数据或者移除对应的缓存。二、缓存并发问题缓存过期后将尝试从后端数据库获取数据,这是一个看似合理的流程。但是,在高并发场景下,有可能多个请求并发的去从数据库获取数据,对后端数据库造成极大的冲击,甚至导致 “雪崩”现象。此外,当某个缓存key在被更新时,同时也可能被.

2020-09-15 14:48:33 89

原创 HTTPS的工作原理

当你打开浏览器,访问某个网站,如果网址旁有个小锁,代表访问的网址是安全的,反之不安全。当我们没有看到那个小锁的小图标的时候,需要提高警惕,不要随意输入个人重要的资料。所有的银行和支付相关的网站都是100%使用HTTPS的。我们为什么需要HTTPS?主要有三个原因: 保护隐私(Privacy):所有信息都是加密传播,第三方无法窃听数据。如果使用HTTP明文传输数据的话,很可能被第三方劫持数据,那么所输入的密码或者其他个人资料都被暴露在他人面前,后果可想而知。 数据完整性..

2020-09-15 10:30:35 49

原创 redis对比memcached的优点

我们都知道,Redis和Memcached都是内存数据库,它们的访问速度非常之快。但我们在开发过程中,这两个内存数据库,我们到底要如何选择呢?它们的优劣都有哪些?为什么现在看Redis要比Memcached更火一些?这篇文章,我们就从各个方面来对比这两个内存数据库的差异,方便你在使用时,做出最符合业务需要的选择。要分析它们的区别,主要从以下几个方面对比: 线程模型 数据结构 淘汰策略 管道与事务 持久化 高可用 集群化 .

2020-09-15 10:22:35 213

原创 LINUX环境部署---

#######前期准备工作###########1,安装virtual box虚拟机,secure CRT(远程连接,可能需要Keygen注册机),8Uftp或者FileZilla()2,下载镜像文件 centos7 ISO https://www.centos.org/download/ 选择everything ios3,在虚拟机上启动并安装 centos74,安装完成后进入centos7,输入密码账号#######配置IP 实现远程连接##############5,输入vi /e..

2020-09-15 10:19:10 56

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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