网工老杨最常用的11个网络命令,有你用的那个吗?

本文介绍了11个网络工程师日常工作中常用的网络诊断命令,包括ping、ipconfig、arp、traceroute、route、nslookup、nbtstat、netstat、ssh、net和ftp。这些命令可以帮助快速检测网络连接、IP配置、路由信息、域名解析等问题,提高网络故障排查效率。

在工作中经常遇到网络故障,是很多网络工程师会遇到的情况。

老杨以前也不例外,要是遇到啥问题了,甩手就是几个常用命令去检测,定位一下故障,很顺手的事情,这样工作起来高效又省事。

但很多小白因为不太懂得使用命令,甚至不知道该使用哪些命令去定位,导致工作效率极低。

本篇文章收集了老杨个人觉得很好用的11个网络命令(约6500字),能覆盖大部分网工的日常工作使用,欢迎转发支持一下。

上一篇万字大汇总受到了不少粉丝的好评,还没看过的可以戳上期:人手一份!思科、华为等四大厂商的交换机基础配置命令全收录

1、ping命令

ping是个使用频率极高的实用程序,主要用于确定网络的连通性。这对确定网络是否正确连接,以及网络连接的状况十分有用。

简单的说,ping就是一个测试程序,如果ping运行正确,大体上就可以排除网络访问层、网卡、Modem的输入输出线路、电缆和路由器等存在的故障,从而缩小问题的范围。

ping能够以毫秒为单位显示发送请求到返回应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络,连接速度比较快。

ping还能显示TTL(Time To Live,生存时间)值,通过TTL值可以推算数据包通过了多少个路由器。

网工老杨最常用的11个网络命令,有你用的那个吗?

01 命令格式

ping 主机名

ping 域名

ping IP地址

网工老杨最常用的11个网络命令,有你用的那个吗?

如图所示,使用ping命令检查到IP地址210.43.16.17的计算机的连通性,该例为连接正常。共发送了四个测试数据包,正确接收到四个数据包。

02 ping命令的基本应用

一般情况下,用户可以通过使用一系列ping命令来查找问题出在什么地方,或检验网络运行的情况。下面就给出一个典型的检测次序及对应的可能故障:

(1) ping 127.0.0.1

如果测试成功,表明网卡、TCP/IP协议的安装、IP地址、子网掩码的设置正常。如果测试不成功,就表示TCP/IP的安装或设置存在有问题。

(2) ping 本机IP地址

如果测试不成功,则表示本地配置或安装存在问题,应当对网络设备和通讯介质进行测试、检查并排除。

(3) ping局域网内其他IP

如果测试成功,表明本地网络中的网卡和载体运行正确。但如果收到0个回送应答,那么表示子网掩码不正确或网卡配置错误或电缆系统有问题。

(4) ping 网关IP

这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够做出应答。

(5)ping 远程IP

如果收到正确应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP的DNS会有问题)。

(6)ping localhost

local host是系统的网络保留名,它是127.0.0.1的别名,每台计算机都应该能够将该名字转换成该地址。否则,则表示主机文件(/Windows/host)中存在问题。

(7)ping www.yahoo.com

对此域名执行Ping命令,计算机必须先将域名转换成IP地址,通常是通过DNS服务器。如果这里出现故障,则表示本机DNS服务器的IP地址配置不正确,或它所访问的DNS服务器有故障。

如果上面所列出的所有ping命令都能正常运行,那么计算机进行本地和远程通信基本上就没有问题了。但是,这些命令的成功并不表示你所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。

03 ping命令的常用参数选项

ping IP -t:连续对IP地址执行ping命令,直到被用户以Ctrl C中断。

ping IP -l 2000:指定ping命令中的特定数据长度(此处为2000字节),而不是缺省的32字节。

ping IP -n 20:执行特定次数(此处是20)的ping命令。

2、ipconfig命令

ipconfig实用程序可用于显示当前的TCP/IP配置的设置值。这些信息一般用来检验人工配置的TCP/IP设置是否正确。

而且,如果计算机和所在的局域网使用了动态主机配置协议DHCP,使用ipconfig命令可以了解到你的计算机是否成功地租用到了一个IP地址,如果已经租用到,则可以了解它目前得到的是什么地址,包括IP地址、子网掩码和缺省网关等网络配置信息。

下面给出最常用的选项:

01 ipconfig

当使用不带任何参数选项ipconfig命令时,显示每个已经配置了的接口的IP地址、子网掩码和缺省网关值。

02 ipconfig /all

当使用all选项时,ipconfig能为DNS和WINS服务器显示它已配置且所有使用的附加信息,并且能够显示内置于本地网卡中的物理地址(MAC)。

如果IP地址是从DHCP服务器租用的,ipconfig将显示DHCP服务器分配的IP地址和租用地址预计失效的日期。图为运行ipconfig /all命令的结果窗口。

网工老杨最常用的11个网络命令,有你用的那个吗?

03 ipconfig /release和ipconfig /renew

这两个附加选项,只能在向DHCP服务器租用IP地址的计算机使用。如果输入ipconfig /release,那么所有接口的租用IP地址便重新交付给DHCP服务器(归还IP地址)。

如果用户输入ipconfig /renew,那么本地计算机便设法与DHCP服务器取得联系,并租用一个IP地址。大多数情况下网卡将被重新赋予和以前所赋予的相同的IP地址。

网工老杨最常用的11个网络命令,有你用的那个吗?

3、arp命令

ARP是TCP/IP协议族中的一个重要协议,用于确定对应IP地址的网卡物理地址。

使用arp命令,能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容。此外,使用arp命令可以人工方式设置静态的网卡物理地址/IP地址对,使用这种方式可以为缺省网关和本地服务器等常用主机进行本地静态配置,这有助于减少网络上的信息量。

按照缺省设置,ARP高速缓存中的项目是动态的,每当向指定地点发送数据并且此时高速缓存中不存在当前项目时,ARP便会自动添加该项目。

常用命令选项:

(1) arp –a:用于查看高速缓存中的所有项目。

网工老杨最常用的11个网络命令,有你用的那个吗?

(2)arp -a IP:如果有多个网卡,那么使用arp -a加上接口的IP地址,就可以只显示与该接口相关的ARP缓存项目。

(3) arp -s IP 物理地址:向ARP高速缓存中人工输入一个静态项目。该项目在计算机引导过程中将保持有效状态,或者在出现错误时,人工配置的物理地址将自动更新该项目。

(4) arp -d IP:使用本命令能够人工删除一个静态项目。

4、traceroute命令

掌握使用traceroute命令测量路由情况的技能,即用来显示数据包到达目的主机所经过的路径。

traceroute命令的基本用法是,在命令提示符后键入“tracert host_name”或“tracert ip_address”,其中,tracert是traceroute在Windows操作系统上的称呼。

网工老杨最常用的11个网络命令,有你用的那个吗?

输出有5列:

  • 第一列是描述路径的第n跳的数值,即沿着该路径的路由器序号;
  • 第二列是第一次往返时延;
  • 第三列是第二次往返时延;
  • 第四列是第三次往返时延;
  • 第五列是路由器的名字及其输入端口的IP地址。

如果源从任何给定的路由器接收到的报文少于3条(由于网络中的分组丢失),traceroute在该路由器号码后面放一个星号,并报告到达那台路由器的少于3次的往返时间。

此外,tracert命令还可以用来查看网络在连接站点时经过的步骤或采取哪种路线,如果是网络出现故障,就可以通过这条命令查看出现问题的位置。

☆ 测试大型网络的路由

(1)多尝试几次“ping www.sina.com.cn”操作,比较得到的新浪网的IP地址。如果两次ping得到的IP地址不同,试考虑其中的原因(如考虑到负载均衡)。然后,针对这些不同的IP地址,执行“tracert ip_address”命令,观察分析输出的结果是否有差异。

(2)对于大型网络中的某站点进行traceroute测试,记录测试结果。观察其中是否出现第n跳的时延小于第n-1跳的时延情况。试分析其中原因(提示:可分别考虑时延的各个构成成分在总时延中所起的作用)。

(3)在一天的不同时段内,用traceroute程序多次测试从固定主机到远程固定IP地址的主机的路由。试分析比较测量数据,观察该路由是否有变化?如果有变化,该变化频繁吗?

5、route命令

大多数主机一般都是驻留在只连接一台路由器的网段上。由于只有一台路由器,因此不存在选择使用哪一台路由器将数据包发送到远程计算机上去的问题,该路由器的IP地址可作为该网段上所有计算机的缺省网关。

但是,当网络上拥有两个或多个路由器时,用户就不一定想只依赖缺省网关了。实际上可能想让某些远程IP地址通过某个特定的路由器来传递,而其他的远程IP则通过另一个路由器来传递。

在这种情况下,用户需要相应的路由信息,这些信息储存在路由表中,每个主机和每个路由器都配有自己独一无二的路由表。大多数路由器使用专门的路由协议来交换和动态更新路由器之间的路由表。

但在有些情况下,必须人工将项目添加到路由器和主机上的路由表中。route命令就是用来显示、人工添加和修改路由表项目的。该命令可使用如下选项:

01 route print

本命令用于显示路由表中的当前项目,在单个路由器网段上的输出结果如图所示。

网工老杨最常用的11个网络命令,有你用的那个吗?

02 route add

使用本命令,可以将路由项目添加给路由表。

例如,如果要设定一个到目的网络209.99.32.33的路由,其间要经过5个路由器网段,首先要经过本地网络上的一个路由器IP为202.96.123.5,子网掩码为255.255.255.224,那么用户应该输入以下命令:

route add 209.99.32.33 mask 255.255.255.224 202.96.123.5 metric 5

03 route change

可以使用本命令来修改数据的传输路由,不过,用户不能使用本命令来改变数据的目的地。下面这个例子将上例路由改变采用一条包含3个网段的路径:

route add 209.99.32.33 mask 255.255.255.224 202.96.123.250 metric 3

04 route delete

使用本命令可以从路由表中删除路由。例如:route delete 209.99.32.33

6、nslookup命令

命令nslookup的功能是查询任何一台机器的IP地址和其对应的域名,它通常需要一台域名服务器来提供域名。如果用户已经设置好域名服务器,就可以用这个命令查看不同主机的IP地址对应的域名。

01 在本地机上使用nslookup命令查看本机的IP及域名服务器地址

直接键入命令,系统返回本机的服务器名称(带域名的全称)和IP地址,并进入以“>”为提示符的操作命令行状态;键入“?”可查询详细命令参数;若要退出,需键入exit。

网工老杨最常用的11个网络命令,有你用的那个吗?

02 查看www.haut.edu.cn的IP,在提示符后输入要查询的IP地址或域名并回车即可

网工老杨最常用的11个网络命令,有你用的那个吗?

7、nbtstat命令

使用nbtstat命令可以查看计算机上网络配置的一些信息。使用这条命令还可以查找出别人计算机上一些私人信息。

如果想查看自己计算机上的网络信息,可以运行nbtstat -n,可以得到你所在的工作组,计算机名以及网卡地址等等;

想查看网络上其他的电脑情况,就,运行nbtstat -a *.*.*.*,此处的*.*.*.*用IP地址代替就会返回得到那台主机上的一些信息。

网工老杨最常用的11个网络命令,有你用的那个吗?

8、netstat命令

使用netstat命令,可以用来了解网络当前的状态。netstat命令能够显示活动的TCP连接、计算机侦听的端口、以太网统计信息、IP路由表、IPv4统计信息(对于IP、ICMP、TCP和UDP协议)以及IPv6统计信息(对于IPv6、ICMPv6、通过IPv6的TCP以及UDP协议)。

使用时如果不带参数,netstat显示活动的TCP连接。

网工老杨最常用的11个网络命令,有你用的那个吗?

netstat的一些常用选项:

(1) netstat –a:-a选项显示所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。

(2) netstat –n:以点分十进制的形式列出IP地址,而不是象征性的主机名和网络名。

网工老杨最常用的11个网络命令,有你用的那个吗?

(3) netstat -e:-e选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据包的总字节数、错误数、删除数、数据包的数量和广播的数量。这些统计数据既有发送的数据包数量,也有接收的数据包数量。使用这个选项可以统计一些基本的网络流量。

(4)netstat -r:-r选项可以显示关于路由表的信息,类似于route print命令时看到的信息。除了显示有效路由外,还显示当前有效的连接。

网工老杨最常用的11个网络命令,有你用的那个吗?

上图显示的是一个路由表,其中:Network Destination表示目的网络,0.0.0.0表示不明网络,这是设置默认网关后系统自动产生的;

127.0.0.0表示本机网络地址,用于测试;224.0.0.0表示组播地址;255.255.255.255表示限制广播地址;

Netmask表示网络掩码,Gateway表示网关,Interface表示接口地址,Metric表示路由跳数。

(5) netstat -s:-s选项能够按照各个协议分别显示其统计数据。这样就可以看到当前计算机在网络上存在哪些连接,以及数据包发送和接收的详细情况等等。

如果应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么可以用本选项来查看一下所显示的信息。仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。

网工老杨最常用的11个网络命令,有你用的那个吗?

9、ssh命令

在需要远程登录 Linux 系统,可以使用 ssh 命令,比如你想远程登录一台服务器,可以使用 ssh user@ip 的方式,如下图:

网工老杨最常用的11个网络命令,有你用的那个吗?

接着,会有输入密码的提示,输入正确的密码后,就进入到了服务器的终端页面,之后你操作的命令就是控制服务器的了。

网工老杨最常用的11个网络命令,有你用的那个吗?

10、net命令

了解Net服务的功能,学会使用Net服务命令解决有关网络问题。在命令行键入net help command,可以在命令行获得net命令的语法帮助。例如,要得到关于net accounts命令的帮助信息,可键入“net help accounts”。

所有net命令都可以使用/y和/n命令行选项。例如,net stop server命令用于提示用户确认停止所有依赖的服务器服务,net stop server/y表示确认停止并关闭服务器服务。

基本的NET命令及它们的作用:

NET命令的执行结果有许多与其它Windows Server 2003管理工具所得到的结果相似。但是,NET命令可以在一个地方提供所有信息,并可以把结果重定向到打印机或一个标准的文本文件中。

许多服务所使用的网络命令都以net开头,这些net命令有一些公用属性。要看到所有可用的net命令的列表,可以在命令提示符窗口键入net/?得到。

11、ftp 命令

网络上开放的ftp 的主机很多,其中很大一部分是匿名的,也就是说任何人都可以登陆。如果用户在网络中偶然遇到了开放的ftp,则可用ftp 命令登陆这台服务器,查看或下载给服务器共享资源。

在命令提示符窗口ftp 命令,显示ip 提示符,然后执行help 命令即可显示ftp 下属命令。下面介绍ftp 命令中常用的几个下属命令。

(1)open,用于连接ftp 主机,该命令的使用方法是open 是open主机端口号。如果用户使用的是21 端口号,可省略。

(2)dir,跟dos 命令一样,用于查看服务器的文件。

(3)cd,进入某个文件夹。

(4)get,下载文件到本地机器。

(5)put,上传文件到过程服务器。

(6)delete,删除远程ftp 服务器上的文件,要求用户必须有读写权限才可以成功删除。

(7)bye/quit,推出当前联接。

还有什么你常用的网络命令?欢迎留言区互动一波哈。

整理:老杨丨8年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

<think>我们正在讨论Spring Boot中同集成Caffeine和Redis缓存的问题。根据引用内容,我们可以确认这是可行的,并且通常用于构建两级缓存(本地缓存+分布式缓存)系统。 引用[1]提到“Spring Boot 使用多级缓存 {Caffeine+Redis}”,并给出了快速入门的示例。 引用[2]解释了在分布式环境下使用Redis的发布/订阅功能来同步各个节点的缓存,解决一致性问题。 引用[3]则展示了具体的配置代码,其中通过条件注解@ConditionalOnProperty来控制本地缓存(Caffeine)的开关。 因此,我们可以分步骤解释如何在Spring Boot中同集成Caffeine和Redis: 步骤1:添加Maven依赖 需要同添加spring-boot-starter-cache(用于支持Spring缓存抽象)、spring-boot-starter-data-redis(用于Redis)和caffeine(用于本地缓存)的依赖。 步骤2:配置缓存 在application.propertiesapplication.yml中配置Redis和Caffeine的相关属性。 步骤3:启用缓存 在启动类上添加@EnableCaching注解。 步骤4:配置多级缓存 如引用[3]所示,可以创建配置类来定义Redis缓存和Caffeine缓存,并且通过条件注解来控制Caffeine缓存的启用。 步骤5:使用缓存 在业务代码中,可以使用@Cacheable等注解来使用缓存。同,为了支持多级缓存,可能需要自定义缓存管理器,将Caffeine作为一级缓存,Redis作为二级缓存。 引用[2]提到,为了解决分布式环境下本地缓存不一致的问题,可以使用Redis的发布/订阅功能来同步各个节点的缓存。 下面是一个简化的示例代码,展示如何配置多级缓存: ```java @Configuration @EnableCaching public class CacheConfig { // 配置Redis连接厂 @Bean public RedisConnectionFactory redisConnectionFactory() { return new LettuceConnectionFactory(); } // 配置RedisTemplate @Bean public RedisTemplate<String, Object> redisTemplate() { RedisTemplate<String, Object> template = new RedisTemplate<>(); template.setConnectionFactory(redisConnectionFactory()); template.setKeySerializer(new StringRedisSerializer()); template.setValueSerializer(new GenericJackson2JsonRedisSerializer()); return template; } // 配置Redis缓存管理器 @Bean public RedisCacheManager redisCacheManager(RedisTemplate<String, Object> redisTemplate) { RedisCacheManager cacheManager = new RedisCacheManager(redisTemplate); cacheManager.setTransactionAware(true); cacheManager.setLoadRemoteCachesOnStartup(true); cacheManager.setUsePrefix(true); return cacheManager; } // 配置Caffeine缓存管理器 @Bean public CaffeineCacheManager caffeineCacheManager() { CaffeineCacheManager cacheManager = new CaffeineCacheManager(); cacheManager.setCaffeine(Caffeine.newBuilder() .expireAfterWrite(10, TimeUnit.MINUTES) .maximumSize(1000)); return cacheManager; } // 配置多级缓存管理器(组合Caffeine和Redis) @Primary @Bean public CacheManager multiLevelCacheManager(CaffeineCacheManager caffeineCacheManager, RedisCacheManager redisCacheManager) { // 这里需要自定义一个组合缓存管理器,可以使用已有的开源实现者自己实现 // 通常,读取先读本地缓存,再读Redis;写入写入两级缓存 // 注意:需要处理缓存同步和一致性问题 return new MultiLevelCacheManager(caffeineCacheManager, redisCacheManager); } } ``` 注意:上述代码中的MultiLevelCacheManager需要自定义实现,它负责协调两级缓存。同,为了保持缓存一致性,当数据更新,需要使所有节点的一级缓存失效,这可以通过Redis的发布/订阅机制实现(如引用[2]所述)。 另外,引用[3]中提到了使用条件注解来控制本地缓存的开关,我们可以这样实现: ```java @Configuration @ConditionalOnProperty(name = "cache.local.enabled", havingValue = "true") public class LocalCacheConfig { // 配置本地缓存相关的Bean } ``` 这样,通过配置文件中的`cache.local.enabled`属性,可以动态开启关闭本地缓存。 综上所述,Spring Boot可以同集成Caffeine和Redis,构建多级缓存系统,并通过配置灵活控制。 生成相关问题: 1. 如何自定义多级缓存管理器(MultiLevelCacheManager)? 2. 如何利用Redis的发布/订阅实现缓存同步? 3. 在Spring Boot中配置多级缓存,需要注意哪些问题?</think>在 Spring Boot 项目中,**可以同集成 Caffeine 和 Redis 缓存**,形成多级缓存架构(本地缓存 + 分布式缓存)。这种组合能显著提升系统性能,同解决分布式环境下的缓存一致性问题。以下是关键实现方案: --- ### **一、实现原理** 1. **两级缓存架构** - **一级缓存(本地)**:使用 Caffeine 提供超高速访问(纳秒级响应),适合高频访问的热点数据。 - **二级缓存(分布式)**:使用 Redis 保证多节点间数据一致性,作为后备存储。 ```mermaid graph LR A[应用] --> B[Caffeine 本地缓存] B -->|缓存未命中| C[Redis 分布式缓存] C -->|缓存未命中| D[数据库] ``` 2. **缓存同步机制** - 通过 Redis 的 **发布/订阅(Pub/Sub)** 功能同步各节点的本地缓存(如引用[2]所述)。 - 当某节点修改数据,发布消息使其他节点失效本地缓存。 --- ### **二、集成步骤** #### 1. **添加 Maven 依赖** ```xml <!-- Caffeine --> <dependency> <groupId>com.github.ben-manes.caffeine</groupId> <artifactId>caffeine</artifactId> </dependency> <!-- Redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` #### 2. **启用缓存(启动类)** ```java @SpringBootApplication @EnableCaching // 开启缓存抽象 public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } ``` #### 3. **配置多级缓存管理器** ```java @Configuration public class CacheConfig { @Bean public CacheManager cacheManager(RedisConnectionFactory factory) { // Caffeine 作为一级缓存(本地) CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager(); caffeineCacheManager.setCaffeine(Caffeine.newBuilder() .expireAfterWrite(10, TimeUnit.MINUTES) // 本地缓存过期间 .maximumSize(1000) ); // Redis 作为二级缓存(分布式) RedisCacheManager redisCacheManager = RedisCacheManager.create(factory); // 组合多级缓存(优先本地,其次Redis) return new MultiLevelCacheManager(caffeineCacheManager, redisCacheManager); } } ``` #### 4. **实现缓存同步(关键)** 通过 Redis 发布/订阅同步本地缓存失效(如引用[2]): ```java @Bean public RedisMessageListenerContainer container(RedisConnectionFactory factory) { RedisMessageListenerContainer container = new RedisMessageListenerContainer(); container.setConnectionFactory(factory); container.addMessageListener(new MessageListenerAdapter(this), new ChannelTopic("cache-invalidate")); return container; } // 收到消息失效本地缓存 public void handleMessage(String cacheKey) { caffeineCacheManager.getCache(cacheKey).clear(); } ``` #### 5. **动态开关本地缓存(如引用[3])** ```java @Configuration @ConditionalOnProperty( // 通过配置控制开关 name = "cache.local.enabled", havingValue = "true", matchIfMissing = false ) public class LocalCacheConfig { @Bean public CaffeineCacheManager caffeineCacheManager() { // 本地缓存配置 } } ``` 配置文件 `application.yml`: ```yaml cache: local: enabled: true # 动态启用/禁用 Caffeine ``` --- ### **三、使用缓存示例** ```java @Service public class UserService { @Cacheable(value = "users", key = "#id") // 自动使用多级缓存 public User getUserById(Long id) { return userRepository.findById(id); // 数据库查询 } @CacheEvict(value = "users", key = "#id") public void updateUser(User user) { // 更新数据后发布缓存失效消息 redisTemplate.convertAndSend("cache-invalidate", "users:" + user.getId()); } } ``` --- ### **四、优势与适用场景** | **优势** | **适用场景** | |-------------------------|----------------------------------| | **高性能**:Caffeine 本地缓存响应极快 | 高频读取的热点数据(如商品详情) | | **一致性**:Redis 保证多节点同步 | 分布式集群环境 | | **灵活性**:动态开关本地缓存 | 测试环境降级、流量高峰控制 | > **注意**:需权衡本地缓存带来的内存消耗,建议通过 `maximumSize` 限制缓存条目(如引用[3])。 --- ### **相关问题** 1. 如何解决 Caffeine 和 Redis 之间的数据一致性问题? 2. 在多级缓存架构中,如何设计缓存穿透和雪崩的保护机制? 3. 如何监控 Spring Boot 中 Caffeine 和 Redis 的缓存命中率? [^1]: Spring Boot 使用多级缓存 {Caffeine+Redis},快速入门示例 [^2]: 基于 Redis 发布/订阅实现分布式缓存同步 [^3]: 通过 `@ConditionalOnProperty` 动态控制本地缓存开关
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值