
Java实战
文章平均质量分 88
Java实战
Java学习训练营
爱老婆 爱编程!
展开
-
红黑树面试
————————————————————————二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。下图中这棵树,就是一颗典型的二叉查找树:...原创 2022-05-15 11:38:44 · 1094 阅读 · 0 评论 -
调度算法面试
前言最近,我偷偷潜伏在各大技术群,因为秋招在即,看到不少小伙伴分享的大厂面经。然后发现,操作系统的知识点考察还是比较多的,大厂就是大厂就爱问基础知识。其中,关于操作系统的「调度算法」考察也算比较频繁。所以,我这边总结了操作系统的三大调度机制,分别是「进程调度/页面置换/磁盘调度算法」,供大家复习,希望大家在秋招能斩获自己心意的 offer。正文进程调度算法进程调度算法也称 CPU 调度算法,毕竟进程是由 CPU 调度的。当 CPU 空闲时,操作系统就选择内存中的某个「就绪.原创 2022-05-15 11:39:01 · 498 阅读 · 0 评论 -
动态规划详解
前言我们刷leetcode的时候,经常会遇到动态规划类型题目。动态规划问题非常非常经典,也很有技巧性,一般大厂都非常喜欢问。今天跟大家一起来学习动态规划的套路,文章如果有不正确的地方,欢迎大家指出哈,感谢感谢~ 什么是动态规划? 动态规划的核心思想 一个例子走进动态规划 动态规划的解题套路 leetcode案例分析 什么是动态规划?动态规划(英语:Dynamic programming,简称 DP),是一种在数学、管理科学、计算机科学、经济学原创 2022-05-15 11:39:09 · 555 阅读 · 0 评论 -
最大公共子串
原创 2022-05-15 11:39:19 · 407 阅读 · 0 评论 -
最强代码生成器平台
最近低代码概念开始炒起来了,如果大家留意,最近各种开发者大会和技术大会,都会有低代码的专题。与使用计算机编程语言构建应用程序的传统方法不同,低代码开发平台是使用图形向导来创建和构建软件的应用程序开发平台。因此,在许多情况下,低代码或无代码(几乎没有代码)这个名称是作为可视化开发工具来帮助设计人员进行拖放、组件浏览器和逻辑构建器的。低代码/无代码的主要概念并不新鲜,它可以追溯到十多年前的无代码编程 (PWCT) 和类似系统。但是,这一概念在开发者社区中并没有那么可用或得到支持。如今,数十种低代码/无代原创 2022-05-15 11:32:34 · 576 阅读 · 0 评论 -
免费的XShell替代品
FinalShell是一款免费的国产的集SSH工具、服务器管理、远程桌面加速的良心软件,同时支持Windows,macOS,Linux,它不单单是一个SSH工具,完整的说法应该叫一体化的的服务器,网络管理软件,在很大程度上可以免费替代XShell,是国产中不多见的良心产品,具有免费海外服务器远程桌面加速,ssh加速,双边tcp加速,内网穿透等特色功能。先预览一张使用时的截图。使用截图预览功能简介连接linux服务器我们第一步打开软件,然后点击如图红色线框所示处开始使用然后原创 2022-05-15 11:31:12 · 2155 阅读 · 0 评论 -
阿里程序员常用的 15 款开发者工具
一、Java 线上诊断工具 ArthasArthas是阿里巴巴 2018 年 9 月开源的一款 Java 线上诊断工具。工具的使用场景: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗? 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现! 是否有一个全局视角来查看系统的原创 2022-05-15 11:31:41 · 437 阅读 · 0 评论 -
调优 IDEA 快到飞起来
不要做守财奴,给IDE多留点内存吧。昨天,大家就是否自定义 IntelliJ IDEA 的内存设置进行了讨论,有些人选择默认设置,有些人会对默认的设置进行简单的变更,还有一些开发者会基于他们的需求进行全面复杂的设置。笔者目前的工作是处理几个微服务项目和一个老项目,而客户的核心业务需求非常大。对 IntelliJ IDEA 内存进行简单设置以后,笔者明显感受到了该 IDE 在速度和响应方面的改善。但当时笔者并未进行具体的测量,所以这只是主观感受而已。不过,参与讨论的一位开发者给笔者发了一份他的设置,虽原创 2022-05-13 11:06:55 · 238 阅读 · 0 评论 -
JetBrains出品,一款好用到爆的数据库工具
最近看到一款数据库客户端工具,DataGrip,是大名鼎鼎的JetBrains公司出品的,就是那个出品Intellij IDEA的公司。DataGrip是一款数据库管理客户端工具,方便连接到数据库服务器,执行sql、创建表、创建索引以及导出数据等。之前试用的客户端工具是dbvisualizer,但是在试用了DataGrip以后,我就决定抛弃dbvisualizer。我相信,当你第一眼看到DataGrip以后,会有一种惊艳的感觉,就好比你第一眼看到一个姑娘,就是那么一瞥,你对自己说,就是她了!废话不多原创 2022-05-15 11:31:01 · 2543 阅读 · 0 评论 -
5款牛逼的 API 工具
# API 定义Swagger Editor 是图形可视化的流行选项。你可以使用 JSON 或 YAML 定义 API。此外,你可以为大多数相关技术(从 ASP.NET Core 和 Kotlin 到 Node.JS 和 Python)生成服务端或客户端存根。Apicurio 是一个开源项目,简单而优雅,支持 JSON 和 YAML。它可以: 从源代码控制、文件和 URL 导入 API。 与你的 GitHub、GitLab 或 Bitbucket 帐户集成。原创 2022-05-15 11:30:56 · 4703 阅读 · 1 评论 -
Java 程序员常用的高效资源工具集合
01 搜索资源网站 学习技术过程我们经常需要使用搜索引擎来检索资料,国内常用的也就是某度了。当然有条件的话,搜索引擎首先还是推荐使用 Google,如果没办法使用,可以使用以下几个作为备用:BingBing 国际版:https://cn.bing.com/比某度好用,之前还被停用了几天,最近可以了。DuckDuckGoDuckDuckGo:https://duckduckgo.com/从官网的介绍来看这个搜索引擎不收集用户信息,而且没有广告。Stack Ov...原创 2022-05-15 11:30:52 · 255 阅读 · 0 评论 -
IDEA 最新15款插件
满满的都是干货 所有插件都是在 ctrl+alt+s里的plugins 里进行搜索安装1、CodeGlance 代码迷你缩放图插件2、 Codota代码提示工具,扫描你的代码后,根据你的敲击完美提示Codota基于数百万个开源Java程序和您的上下文来完成代码行,从而帮助您以更少的错误更快地进行编码,更多资源关注公众号码猿技术专栏。安装:3、Material Theme UI那就顺便推荐一下这个吧,超多的主题插件,各种颜色,各种..原创 2022-05-13 11:06:23 · 586 阅读 · 0 评论 -
Redis 可视化工具
1. 命令行不知道大家在日常操作redis时用什么可视化工具呢?以前总觉得没有什么太好的可视化工具,于是问了一个业内朋友。对方回:你还用可视化工具?直接命令行呀,redis提供了这么多命令,操作起来行云流水。用可视化工具觉得很low。命令行的鄙视用工具的,用高端工具的鄙视低端工具的,鄙视链一直存在。虽然用命令行自己也可以,但是总感觉效率上不如用工具,在视觉上不那么直观。尤其是看json的时候,在命令行就很不友好。大佬朋友说:谁说命令行就不能格式化json了?可以利用iredi转载 2022-05-13 11:06:03 · 684 阅读 · 0 评论 -
实用开发工具
目录 前言 X-shell FileZilla Navicat RedisDesktop Typora ProcessOn drawio ScreenToGif everything ApiPost 前言所谓工欲善其事,必先利其器,一个好的工具往往是提升工作效率的关键,今天作者分享几个工作和生活中常用的工具软件。如果和你正在使用的工具重复了,请一笑置之,哈哈......X-shell原创 2022-05-13 11:05:57 · 1505 阅读 · 0 评论 -
程序员需知的 58 个网站
一、在线教程首先列出一些在线教程网站,这些在线教程网站通常都比较适合入门,可以作为开发学习路上的第一个阶梯,也可以作为工作中的在线文档。1、菜鸟教程 地 址:https://www.runoob.com/ 简 介:在线教程网站,前端学习看这两个网站就够了。 推荐指数:⭐⭐⭐ 网站封面2、易百教程 地 址:https://www.yiibai.com/ 简 介:内容比较全面的在线教程网站。 推荐指数:⭐⭐⭐ 网站封面3原创 2022-05-13 11:05:52 · 768 阅读 · 0 评论 -
Linux一键安装包
前言 安装包的基本目录 适用人群 如何使用? 上传tar.gz文件 运行MySQL 运行Redis 运行Nginx 运行RabbitMQ 一键运行 如何定制? 总结 前言 昨天一哥们的弟弟突然问我有没有部署过的Linux,公司连个运维都没有,服务器都要后端部署.... 你有没有相似的遭遇呢?公司规模小,后端即是运维,一份工资干两份活,哈哈~..原创 2022-05-13 11:05:25 · 367 阅读 · 0 评论 -
分布式缓存,就该这样设计
在高并发的分布式的系统中,缓存是必不可少的一部分。没有缓存对系统的加速和阻挡大量的请求直接落到系统的底层,系统是很难撑住高并发的冲击,所以分布式系统中缓存的设计是很重要的一环。下面就来聊聊分布式系统中关于缓存的设计以及过程中遇到的一些问题。缓存的收益与成本使用缓存我们得到以下收益: 加速读写:因为缓存通常是全内存的,比如Redis、Memcache。对内存的直接读写会比传统的存储层如MySQL,性能好很多。举个例子:同等配置单机Redis QPS可轻松上万,MySQL则只有几千。加速读写之原创 2022-05-11 19:08:22 · 300 阅读 · 0 评论 -
消息队列必问
面试官在面试候选人时,如果发现候选人的简历中写了在项目中使用了 MQ 技术(如 Kafka、RabbitMQ、RocketMQ),基本都会抛出一个问题:在使用 MQ 的时候,怎么确保消息 100% 不丢失?这个问题在实际工作中很常见,既能考察候选者对于 MQ 中间件技术的掌握程度,又能很好地区分候选人的能力水平。接下来,我们就从这个问题出发,探讨你应该掌握的基础知识和答题思路,以及延伸的面试考点。案例背景以京东系统为例,用户在购买商品时,通常会选择用京豆抵扣一部分的金额,在这个过程中,交易服务和原创 2022-05-11 19:08:17 · 212 阅读 · 0 评论 -
MQ 幂等、去重 有哪些通用的解决方案?
消息中间件是分布式系统常用的组件,无论是异步化、解耦、削峰等都有广泛的应用价值。我们通常会认为,消息中间件是一个可靠的组件——这里所谓的可靠是指,只要我把消息成功投递到了消息中间件,消息就不会丢失,即消息肯定会至少保证消息能被消费者成功消费一次,这是消息中间件最基本的特性之一,也就是我们常说的“AT LEAST ONCE”,即消息至少会被“成功消费一遍”。举个例子,一个消息M发送到了消息中间件,消息投递到了消费程序A,A接受到了消息,然后进行消费,但在消费到一半的时候程序重启了,这时候这个消息并没有标记原创 2022-05-11 19:08:13 · 279 阅读 · 0 评论 -
微服务如何聚合 API 文档?
为什么需要聚合?微服务模块众多,如果不聚合文档,则访问每个服务的API文档都需要单独访问一个Swagger UI界面,这么做客户端能否接受?反正作为强迫症的我是接受不了.......既然使用了微服务,就应该有统一的API文档入口。如何聚合?统一的文档入口显然应该聚合到网关中,通过网关的入口统一映射到各个模块。演示本文采用Spring Cloud Gateway聚合Swagger的 方式 生成API文档。案例源码结构如下:本文只介绍如何聚合Swagger,...原创 2022-05-11 19:08:08 · 370 阅读 · 0 评论 -
微服务下蓝绿发布、滚动发布、灰度发布等方案
在项目迭代的过程中,不可避免需要上线。上线对应着部署,或者重新部署;部署对应着修改;修改则意味着风险。目前有很多部署发布的技术, 这儿将常见的做一个总结。上面所说难免有些抽象, 举一个情景例子, 假如你是微博项目负责人员, 现在新版本较原来的老版本有很大的改变, 这设计到服务架构、前端UI等等, 经过测试功能没有障碍, 那么这时候如何让用户切换到新的版本呢?显而易见, 第一次发布的应用是没有所谓的这个问题的, 这种如何发布的思考只会出现在后面的版本迭代中。蓝绿发布蓝绿部署中,一共有两套系统:原创 2022-05-11 19:08:04 · 731 阅读 · 0 评论 -
Spring Cloud Gateway集成 RBAC 权限模型实现动态权限控制
什么是RBAC权限模型?RBAC(Role-Based Access Control)基于角色访问控制,目前使用最为广泛的权限模型。相信大家对这种权限模型已经比较了解了。此模型有三个用户、角色和权限,在传统的权限模型用户直接关联加了角色层,解耦了用户和权限,使得权限系统有了更清晰的职责划分和更高的灵活度。以上五张表的SQL就不再详细贴出来了,都会放在案例源码的doc目录下,如下图:设计思路RBAC权限模型是基于角色的,因此在Spring Security中的权限就是角色,具体..原创 2022-05-11 19:07:33 · 559 阅读 · 0 评论 -
退出登录时如何借助外力使JWT令牌失效?
解决方案JWT最大的一个优势在于它是无状态的,自身包含了认证鉴权所需要的所有信息,服务器端无需对其存储,从而给服务器减少了存储开销。但是无状态引出的问题也是可想而知的,它无法作废未过期的JWT。举例说明注销场景下,就传统的cookie/session认证机制,只需要把存在服务器端的session删掉就OK了。但是JWT呢,它是不存在服务器端的啊,好的那我删存在客户端的JWT行了吧。额,社会本就复杂别再欺骗自己了好么,被你在客户端删掉的JWT还是可以通过服务器端认证的。使用JWT要非常明确..原创 2022-05-03 21:21:44 · 656 阅读 · 0 评论 -
跨库多表存在大量数据依赖问题有哪些解决方案?
曾经设计的一个供应链系统中,存在商品、销售订单、采购这三个服务,它们的主数据的部分结构如下所示:商品:ID 名称 分类 型号 生产年份 编码 订单和子订单:订单ID 下单时间 客户 总金额 子订单ID 商品ID 单价 数量 采购单和子订单:采购单ID 下单时间 供应商 总金额 采购子原创 2022-05-03 21:20:48 · 193 阅读 · 0 评论 -
Spring Cloud Gateway 整合 OAuth2.0 实现分布式统一认证授权
微服务认证方案微服务认证方案目前有很多种,每个企业也是大不相同,但是总体分为两类,如下: 网关只负责转发请求,认证鉴权交给每个微服务控制 统一在网关层面认证鉴权,微服务只负责业务 你们公司目前用的哪种方案?先来说说第一种方案,有着很大的弊端,如下: 代码耦合严重,每个微服务都要维护一套认证鉴权 无法做到统一认证鉴权,开发难度太大 第二种方案明显是比较简单的一种,优点如下: 实现了统一的认证鉴权,微服务只需要各司其职,专注于自身的业务 代码耦..原创 2022-05-03 21:20:28 · 2775 阅读 · 1 评论 -
OAuth2.0实战 认证、资源服务异常自定义这些骚操作
案例服务搭建此篇文章沿用上篇文章的认证、资源服务,如下:1、认证服务oauth2-auth-server-jwt2、资源服务oauth2-auth-resource-jwt“案例源码已经上传GitHub,关注公众号:码猿技术专栏,回复关键词:9529获取!”认证服务的异常先来看一下正确的获取令牌的请求,以密码模式为例,如下图:密码模式需要传递5个参数,分别是用户名、密码、客户端id,客户端秘钥、授权类型。那么问题来了:如果任意一个参数传错了,返回什么?...原创 2022-05-03 21:19:37 · 1769 阅读 · 1 评论 -
OAuth2.0实战 使用JWT令牌认证
什么是JWT?OAuth2.0体系中令牌分为两类,分别是透明令牌、不透明令牌。不透明令牌则是令牌本身不存储任何信息,比如一串UUID,上篇文章中使用的InMemoryTokenStore就类似这种。因此资源服务拿到这个令牌必须调调用认证授权服务的接口进行令牌的校验,高并发的情况下延迟很高,性能很低,正如上篇文章中资源服务器中配置的校验,如下:透明令牌本身就存储这部分用户信息,比如JWT,资源服务可以调用自身的服务对该令牌进行校验解析,不必调用认证服务的接口去校验令牌。JWT相信大..原创 2022-05-03 21:19:24 · 933 阅读 · 0 评论 -
整合Spring Cloud Security
为什么需要OAuth2.0?编码永远都是为了解决生产中的问题,想要理解为什么需要OAuth2,当然要从实际生活出发。举个例子:小区的业主点了一份外卖,但是小区的门禁系统不给外卖人员进入,此时想要外卖员进入只能业主下来开门或者告知门禁的密码。密码告知外卖员岂不是每次都能凭密码进入小区了,这明显造成了安全隐患。那么有没有一种方案:既能不泄露密码,也能让外卖小哥进入呢?于是此时就想到了一个授权机制,分为以下几个步骤: 门禁系统中新增一个授权按钮,外卖小哥只需要点击授权按钮呼叫对应业主..原创 2022-05-03 21:18:54 · 1893 阅读 · 0 评论 -
链路追踪SkyWalking
什么是Skywalking?上一篇文章介绍了分布式链路追踪的一种方式:Spring Cloud Sleuth+ZipKin,这种方案目前也是有很多企业在用,但是作为程序员要的追逐一些新奇的技术,Skywalking作为后起之秀也是值得大家去学习的。skywalking是一个优秀的国产开源框架,2015年由个人吴晟(华为开发者)开源 ,2017年加入Apache孵化器。短短两年就被Apache收入麾下,实力可见一斑。skywalking支持dubbo,SpringCloud,SpringBo...原创 2022-05-03 21:18:34 · 1710 阅读 · 0 评论 -
分布式链路追踪之Spring Cloud Sleuth夺命连环9问
为什么需要链路追踪?大型分布式微服务系统中,一个系统被拆分成N多个模块,这些模块负责不同的功能,组合成一套系统,最终可以提供丰富的功能。在这种分布式架构中,一次请求往往需要涉及到多个服务,如下图:服务之间的调用错综复杂,对于维护的成本成倍增加,势必存在以下几个问题: 服务之间的依赖与被依赖的关系如何能够清晰的看到? 出现异常时如何能够快速定位到异常服务? 出现性能瓶颈时如何能够迅速定位哪个服务影响的? 为了能够在分布式架构中快速定位问题,分布式链路追踪应运而生。..原创 2022-05-03 21:18:06 · 393 阅读 · 0 评论 -
Spring Cloud Gateway 整合阿里 Sentinel网关限流实战
网关如何限流?Spring Cloud Gateway本身自带的限流实现,过滤器是RequestRateLimiterGatewayFilterFactory,不过这种上不了台面的就不再介绍了,有兴趣的可以实现下。今天的重点是集成阿里的Sentinel实现网关限流,sentinel有不懂的可以看陈某的文章:阿里限流神器Sentinel夺命连环 17 问?从1.6.0版本开始,Sentinel提供了SpringCloud Gateway的适配模块,可以提供两种资源维度的限流: route..原创 2022-05-03 21:12:38 · 731 阅读 · 0 评论 -
Spring Cloud Gateway连环10问
为什么需要网关?传统的单体架构中只有一个服务开放给客户端调用,但是微服务架构中是将一个系统拆分成多个微服务,那么作为客户端如何去调用这些微服务呢?如果没有网关的存在,只能在本地记录每个微服务的调用地址。无网关的微服务架构往往存在以下问题: 客户端多次请求不同的微服务,增加客户端代码或配置编写的复杂性。 认证复杂,每个服务都需要独立认证。 存在跨域请求,在一定场景下处理相对复杂。 网关的基本功能?网关是所有微服务的门户,路由转发仅仅是最基本...原创 2022-05-03 21:12:10 · 1609 阅读 · 0 评论 -
Redis 实战:巧用 Bitmap 实现亿级海量数据统计
在移动应用的业务场景中,我们需要保存这样的信息:一个 key 关联了一个数据集合。常见的场景如下: 给一个 userId ,判断用户登陆状态; 显示用户某个月的签到次数和首次签到时间; 两亿用户最近 7 天的签到情况,统计 7 天内连续签到的用户总数; 通常情况下,我们面临的用户数量以及访问量都是巨大的,比如百万、千万级别的用户数量,或者千万级别、甚至亿级别的访问信息。所以,我们必须要选择能够非常高效地统计大量数据(例如亿级)的集合类型。如何选择合适的数据集合,我们原创 2022-05-11 19:07:21 · 361 阅读 · 0 评论 -
MySQL调优
这里的主要是分享索引方面的调优,在工作中,很多同学都有建立索引的一些经验,但是是否有自己深入的思考过,怎么样建立索引才最合适。字符串怎么建立索引、怎么优化联合索引、怎么避免回表等一些问题,是否有结合自己的实际项目进行深入的思考呢?这里,我就将自己实际中遇到的一些问题分享给大家,下面开始我们的正题,首先开始之前,先来回顾一些基础的知识。什么是Mysql的索引,联合索引是什么?回表是什么?回表怎么解决?Mysql索引Mysql的索引是一种加快查询速度的数据结构,索引就好比书的目录一样能够快速原创 2022-05-11 19:07:13 · 172 阅读 · 0 评论 -
SQL慢查询处理
前几天帮公司解决线上慢SQL告警问题,遇到了几个case。下面我会结合case案例分析自己这段时间在工作上遇到的慢查询谈谈数据库如何优化慢查询。一般我们遇到的慢sql都是索引没有正确使用导致的,所以我先介绍下索引相关知识索引介绍索引概念排好序的快速查找的数据结构(我们平时说的索引,如果没有特别指明,都是指B树,其中聚集索引、次要索引、覆盖索引、复合索引、前缀索引、唯一索引默认使用的都是B+树索引,除B+树这种类型的索引外还有哈希索引等)索引优缺点优点: 查找 :提高数据检索原创 2022-05-11 19:07:02 · 800 阅读 · 0 评论 -
Redis夺命连环20问
金九银十即将到来,整理了20道经典Redis面试题,希望对大家有帮助。1. 什么是Redis?它主要用来什么的?Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。与MySQL数据库不同的是,Redis的数据是存在内存中的。它的读写速度非常快,每秒可以处理超过10万次读写操作。因此redis被广泛应用于缓存,另外,Redis也经常原创 2022-05-10 21:14:34 · 779 阅读 · 0 评论 -
20道Mysql面试题
1.什么Mysql的事务?事务的四大特性?事务带来的什么问题?Mysql中事务的隔离级别分为四大等级:读未提交(READ UNCOMMITTED)、读提交 (READ COMMITTED)、可重复读 (REPEATABLE READ)、串行化 (SERIALIZABLE)。在Mysql中事务的四大特性主要包含:原子性(Atomicity)、一致性(Consistent)、隔离性(Isalotion)、持久性(Durable),简称为ACID。 原子性:是指事务的原子性操作,对数据的修改要么全部原创 2022-05-10 21:14:26 · 240 阅读 · 0 评论 -
缓存和数据库到底先写哪个?
大型高并发的后端服务系统,处理瓶颈往往是数据库,比如mysql的查询写入。为了能够快速响应用户请求,系统优化自然会想到利用缓存加快处理速度,常用的比如redis,性能非常高的缓存数据库。redis搭配mysql一起使用,绝配。但,没有免费的午餐,你要用缓存,就不得不面对缓存和数据库不一致的问题,解决这种不一致有通用设计模式(其实不仅仅是数据库上的应用),陈皓这篇文章讲的比较全面。来源:coolshell.cn链接:https://coolshell.cn/articles/17416.htm原创 2022-05-10 21:14:11 · 428 阅读 · 0 评论 -
Redis 16 个常见使用场景
目录 缓存 数据共享分布式 分布式锁 全局ID 计数器 限流 位统计 购物车 用户消息时间线timeline 消息队列 抽奖 点赞、签到、打卡 商品标签 商品筛选 用户关注、推荐模型 排行榜 1、缓存String类型例如:热点数据缓存(例如报表、明星出轨),对象缓存、全页缓存、可以提升热点数据的访问数据。2、数据共享分布式String原创 2022-05-10 21:13:59 · 240 阅读 · 0 评论 -
万字详解MySQL性能优化
说起MySQL的查询优化,相信大家积累一堆技巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运用。MySQL逻辑架构如果能在头脑中构建一幅MySQL各组件之间如何协同工作的架构图,有助于深入理解MySQL服务器。下图展示了MySQL的逻辑架构图。My原创 2022-05-10 21:13:47 · 291 阅读 · 0 评论