分享一道面试题,问出这种问题,我觉得实在是也没什么意思。但是今天还是稍微来分析一下,毕竟总会有人问 1 加 1 为什么等于 2。首先,我们来想一下,既然是用来做缓存,必须要符合哪些特征呢?缓存所要具有的基本特征访问速度要快,不然我直接去数据库查岂不是更好,毕竟就是为了提升某些常态化数据的提取速度和减轻数据库压力,才去使用的缓存模块。支持的存储方式要符合多方面的系统需要,比如不同语言编写的系统交互,
转载 2023-08-16 17:22:01
32阅读
为什么不使用Hash表 使用Hash表存在的问题:Hash表必须要有hash算法,这个算法还要足够优秀来保证你的数据能够很好的散列,如果存在大量的hash冲突或者hash碰撞,会导致一部分查询效率非常低 即使算法足够优秀,如果进行范围查询,需要逐一对比每一个元素值,效率很低,并且在生产环境中大部分的查询是范围查询,如果还需要排序那就更低了 hash比较浪费内存空间,而内存是非常宝贵的资源为什么不使
# 为什么选择 ClickHouse 而非 HBase 在大数据领域,ClickHouse 和 HBase 都是非常受欢迎的数据库选择。它们各自有其优势和适用场景,但在某些情况下,ClickHouse 更加出色。本文将探讨选择 ClickHouse 的理由,并提供一些代码示例,帮助你理解它的魅力。 ## 一、ClickHouse 简介 ClickHouse 是一个开源列式数据库管理系统,旨在
原创 27天前
46阅读
更新于2019年8月13日 昨天下班后又把Jira生态圈回归了一下,自己实在打脸了,JIRA是有很牛逼之处的,只是我以为人家只是个bug记录系统。不了解却还瞎BB。脸打的疼。 1.简介 JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务
转载 2019-08-13 08:54:00
430阅读
2评论
在网络通信中,虚拟化扮演着重要的角色,因为它可以同时处理不同的网络流量,从而提高网络的效率和可靠性。在虚拟化网络中,使用隧道技术来承载虚拟网络流量是常见的实践之一。在这方面,VXLAN(Virtual Extensible LAN)和GRE(Generic Routing Encapsulation)是两种较为常见的隧道协议。 尽管VXLAN和GRE都能够提供隧道功能,但它们在设计思想和特性上存
原创 6月前
47阅读
# 为什么使用Yarn而不是PNPM ## 介绍 在开发过程中,我们经常会使用现代化的包管理工具来管理我们的项目依赖。在JavaScript生态系统中,Yarn和PNPM是两个常用的包管理工具。虽然它们都可以用来安装、升级和删除项目依赖,但它们在一些方面有所不同。本文将向你介绍为什么使用Yarn而不是PNPM,并指导你在使用Yarn时需要注意的事项。 ## 流程 首先让我们来看一下整个过程
原创 2023-09-04 20:15:27
45阅读
大数据篇:YARN 大数据篇:YARNYARN是什么?YARN是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。如果没有YARN!无法管理集群资源分配问题。无法合理的给程序分配合理的资源。不方便监控程序的运行状态及日志
mysql 的索引和引擎mysql的数据都是存放在磁盘上的,都说索引会使查询变快,那么肯定是索引用了特殊的数据结构。常见的数据结构有:hash hash就是咱们在hashMap中的那个hash,用hash确实快,而且时间复杂度是O(1),但是hash不适合范围查询,所以索引的主要数据结构应该不是hash。二叉树 普通二叉树作为最初的树形结构,确实在某些情况下就很快了,但是由于对于自增id这种索引
在我们的印象中,mysql 数据表里无非就是存储一行行的数据。跟个 excel 似的。直接遍历这一行行数据,性能就是 O(n),比较慢。
转载 2022-11-03 10:05:12
70阅读
# 为什么使用Elasticsearch而不是MySQL? 作为一名经验丰富的开发者,我很高兴能够向刚入行的小白解释为什么在某些情况下,我们会选择使用Elasticsearch而不是MySQL。以下是详细的解释和步骤。 ## 流程图 首先,让我们通过一个流程图来展示整个决策过程: ```mermaid flowchart TD A[开始] --> B[确定需求] B -->
原创 1月前
8阅读
1.用途(为什么要有线程?)我们都知道,程序是代码的集合,进程=程序+数据+系统资源,进程可看作是运行中的程序。操作系统在发展的过程中,为了提高内存和cpu的利用率和吞吐量,引入了多道批处理系统的设计,即允许多道程序同时进入内存,并交替获得cpu资源。这一阶段实现了进程并发执行。但是进程可完成的任务比较单一,要完成各种不同的任务,就要设计很多个不同程序,让操作系统进行调度。而进程是操作系统资源分配
 卢文泉 译 分布式实验室 不幸的是,目前的Kubernetes文档并不完善,这也是为什么很多事情非常混乱,其一就是Kubernetes Ingress。ingress是什么?非常简单,ingress是一层代理,负责根据hostname和path将流量转发到不同的服务上。使得一个负载均衡器用于多个微服务。没有ingress的基础设施看起来是这样:带有ingress的微服务架构是这样的:所以使用in
原创 2021-05-19 15:23:11
359阅读
1. 配置中心简介在常规的开发中,每个微服务都包含代码和配置。其配置包含服务配置、各类开关和业务配置。如果系统结构中的微服务节点较少,那么常规的代码+配置的开发方式足以解决问题。当系统逐步迭代,其微服务会越来越复杂,慢慢演化成网状依赖结构,这个时候常规的代码+配置的开发方式就并不合适了,因为还要考虑整体系统的扩展性、伸缩性和耦合性等。这些问题中,配置的管理也是非常麻烦的。 如果还是以常规开发形式管
...
转载 2021-06-13 23:05:52
123阅读
session的作用:session是用来存放用户个人信息的,每当请求一次session的时候,服务器会自动分配一个sessionID放到你的cookies里面。session可存放在web服务器中的的数据大小是不受限制的,但是时间上却有限制。一般情况下是用户的持续访问时间再加上session闲置时间大概是20分钟正由于这个闲置20分钟,所以使得session读取服务器数据的时候效率非常非常的低,
iPhone手机在国内部分手机用户心中还是很难进行选择的,那么对于9月份的即将到来,很多人都在考虑是否入手iPhone的2019年版,对此的争议还是很大的,虽然有很多地方显得不尽人意,但是苹果手机的工艺还是十分精湛的,系统的流畅度仍是大部分人,念念不忘的对象。 iPhone被吐槽最多的几点,小编今天也给大家整理了一下,主要包括这几点:iPhone通话不能录音目前的iPhone的所有机型,都不支持手
 MySQL 为什么选择使用 B+ 树?1.前言无论是表中的数据(主键索引)还是辅助索引最终都会使用 B+ 树来存储数据,其中前者在表中会以 <id, row> 的方式存储,而后者会以 <index, id> 的方式进行存储在主键索引中,id 是主键,我们能够通过 id 找到该行的全部列;在辅助
背景Kafka2.8 之后,移除了Zookeeper,而使用了自己研发的Kafka Raft。为什么移除Zookeeper?原来Zookeeper在Kafka中承担了Controller选举、Broker注册、TopicPartition注册和选举、Consumer/Producer元数据管理和负载均衡等。即承担了各种元数据的保存和各种选举。而Zookeeper并“不快”,集群规模大了之后,很容易
MySQL选择使用B+树做索引不是因为B+数好看,也不是因为B+数好吃,因为货比三家后发现B+数更合适而已。为什么合适,怎样才算合适,得看索引使用场景以及跟其他数据结构进行对比。首先,索引的出现是为了让查询更高效,一个适用于大多数情形并能显著提升查询效率的数据结构才是最合适做索引的。第一个上场的是hash。想想Java中的HashMap数据结构就知道,它的优点是通过key可以快速找到对应的数据,J
为什么MySQL不使用平衡二叉树作索引 在数据库中,索引是一种数据结构,用于提高查询速度和数据的访问效率。MySQL作为一种常用的关系型数据库管理系统,它采用B树(B-tree)和B+树(B+tree)作为索引结构,而不是平衡二叉树。那么,为什么MySQL不使用平衡二叉树作索引呢?本文将从平衡二叉树和B树的特点、性能对比以及MySQL索引的需求出发,为你解答这个问题。 ## 平衡二叉树和B树的
原创 2023-09-15 04:30:38
122阅读
  • 1
  • 2
  • 3
  • 4
  • 5