首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏波波烤鸭

    shiro教程8(缓存管理)

    缓存 为什么要使用缓存   在没有使用缓存的情况下,我们每次发送请求都会调用一次doGetAuthorizationInfo方法来进行用户的授权操作,但是我们知道,一个用户具有的权限一般不会频繁的修改, xml version="1.0" encoding="UTF-8"? 3 LRU,最近最少使用的,缓存的元素有一个时间戳,当缓存容量满了,而又需要腾出地方来缓存新的元素的时候,那么现有缓存元素中时间戳离当前时间最远的元素将被清出缓存。 -- 配置缓存管理器 --> <bean id="cacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager"> <! 当调用清空缓存方法后,再次请求的时候因为缓存已经空了,所以会再次授权, 场景: 权限修改生效后,立即刷新清空缓存,则可以实现用户不退出生效新的权限

    1.4K60发布于 2019-04-02
  • 来自专栏洛秋的运维之路

    Linux缓存管理:如何安全地清理系统缓存

    Linux缓存管理:如何安全地清理系统缓存Linux系统中,内存管理是一个关键的性能因素。虽然Linux内核通常能够有效地管理内存和缓存,但有时我们可能需要手动干预。 本文将详细介绍如何安全地清理Linux系统缓存,特别是在CentOS等系统中。目录Linux缓存管理:如何安全地清理系统缓存目录理解/proc/sys/vm/drop_caches为什么要清理缓存? 为什么要清理缓存?在大多数情况下,让Linux内核自动管理缓存是最佳选择。 清理缓存的步骤以下是安全清理Linux系统缓存的步骤:切换到root用户(如果还不是root):sudo su -执行sync命令,确保所有待写入的数据都已经存储到磁盘:sync清理缓存:echo 3 结论手动清理Linux系统缓存是一个强大的工具,但应该谨慎使用。在大多数情况下,让Linux内核自动管理缓存是最佳选择。如果您决定手动清理缓存,请确保理解其影响,并遵循本文outlined的最佳实践。

    4.8K00编辑于 2024-12-28
  • 来自专栏建站知识

    Linux管理系统的arp缓存命令

    arp [功能] 管理系统的arp缓存。 [描述] 用来管理系统的arp缓存,常用的命令包括: arp: 显示所有的表项。 arp -d address: 删除一个arp表项。 另外输出结果中用"C"表示ARP缓存内容,"M"表示永久性表项,"P"表示公共的表项。 ether 00:1d:92:e3:d5:ee C eth0 hostname4 ether 00:1d:0f:11:f2:a5 C eth0 这里,Flags中的"C"代表此表项目是高速缓存中的内容 ,高速缓存中的内容过一段时间(一般20分钟)会清空,而"M"则表示静态表项,静态表项的内容不会过一段时间被清空。 ether 00:1d:0f:11:f2:a5 C eth0 实际上,如果"arp -s"设置成功之后,会增加一个Flags为"CM"的表项,有些系统静态条目不会因为ARP响应而更新,而高速缓存中的条目会因此而更新

    8.7K40发布于 2021-07-21
  • 来自专栏山河已无恙

    K8s 镜像缓存管理 kube-fledged 认知

    写在前面 博文内容为K8s 镜像缓存管理 kube-fledged 认知 内容涉及: kube-fledged 简单介绍 部署以及基本使用 理解不足小伙伴帮忙指正 不必太纠结于当下,也不必太忧虑未来, 如果集群管理员或操作员需要对应用程序进行升级,并希望事先验证是否可以成功拉取新镜像。 kube-fledged 是一个 kubernetes operator,用于直接在 Kubernetes 集群的 worker 节点上创建和管理容器镜像缓存。 kube-fledged 提供了 CRUD API 来管理镜像缓存的生命周期,并支持多个可配置的参数,可以根据自己的需要自定义功能。 Kubernetes 具有内置的镜像垃圾回收机制。 如果镜像缓存中的镜像被 kubelet 的 gc 删除,下一个刷新周期会将已删除的镜像拉入镜像缓存中。这可确保镜像缓存是最新的。

    44010编辑于 2024-03-06
  • 来自专栏linux命令

    linux常用命令(8)——用户管理

    今天来分享一下linux常用命令——用户管理 八、用户管理 1. user add 创建用户账户 useradd 是 Linux 中用于创建新系统用户的核心命令,需 root 权限(可通过 sudo 执行 自动生成家目录和同名组 sudo useradd -s /bin/bash -G sudo lisi #创建用户 `lisi`,指定登录 Shell 为 `/bin/bash`,附加组为 `sudo`(获得管理员权限 Linux 密码默认要求:至少 8 位、包含字母 + 数字 + 特殊字符(可通过 /etc/login.defs 调整策略)。 zhangsan) gid=1001(zhangsan) groups=1001(zhangsan),27(sudo) (说明:zhangsan 的 UID/GID 为 1001,附加组为 sudo,有管理员权限

    43410编辑于 2026-01-13
  • 来自专栏linux教程

    CentOS 8 清除 DNS 缓存

    nscd(Name Service Cache Daemon)是一种能够缓存 passwd、group、hosts 的本地缓存服务,分别对应三个源 /etc/passwd、/etc/hosts、/etc 这里利用 nscd 的 hosts 缓存服务来实现 清除 CentOS 8 Linux 下的 DNS 缓存。 清缓存命令: 有可能nscd没装,下面讲解一下,安装,启动,清缓存的命令 1. 启动nscd 服务后,清缓存 开启 nscd 的 hosts 缓存服务后,每次内部接口请求不会都发起 dns 解析请求,而是直接命中 nscd 缓存散列表,从而获取对应服务器 ip 地址,这样可以在大量内部接口请求时减少接口的响应时间

    4.1K10编辑于 2023-04-26
  • 来自专栏数据分析与挖掘

    springboot缓存之使用redis作为缓存管理

    sudo docker pull redis sudo docker run --name redis01 -p 6379:6379 -d redis (2)安装redis管理工具,Redis Desktop

    89020发布于 2020-08-26
  • 来自专栏IT大咖说

    Linux缓存机制bufferscached

    缓存机制:Linux引入了buffers和 cached机制,buffers与cached都是内存操作,用来保存系统曾经打开过的文件以及文件元数据,这样当操作系统需要读取某些文件时,首先在buffers 为了方便查找文件,linux引入目录项(dentry)描述目录与文件的关系树,Linux为每一个目录建立一个目录项,也为每个文件建立一个目录项。 cat /etc/hostname linuxabc [root@linuxabc ~]# stat /etc/hostname File: /etc/hostname Size: 9 Blocks: 8 根据Linux虚拟内存管理机制,这种行为是正常的。要理解为什么缓存会变得如此之高,以及为什么这不是一个问题,就必须了解I/O在Linux上是如何工作的。 slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。 如果buffers/cached过高,如何排查哪些进程引起的?

    5.7K10发布于 2020-12-29
  • 来自专栏magicodes

    Magicodes.WeiChat——缓存管理

    本框架支持缓存管理,内部机制使用开源库CacheManager。支持全局缓存、租户缓存,默认使用的系统缓存实现,可以在Web.config将其配置为其他缓存类型,比如支持Redis、内存等。 --缓存配置--> <cacheManager xmlns="http://tempuri.org/CacheManagerCfg.xsd"> <managers> <cache name="defaultCache /cachemanager.net/Documentation/Index/cachemanager_configuration 1.1.2 相关函数介绍: /// <summary> /// 获取<em>缓存</em> name="key">key</param> /// <returns>值</returns> public T Get<T>(string key) ///

    /// 获取缓存 >值</returns> public T GetByTenant<T>(string key, string tenantKey = null) /// /// 添加或更新缓存

    46930发布于 2018-12-27
  • 来自专栏charlieroro

    自适应软件缓存管理

    自适应软件缓存管理 译自:Adaptive Software Cache Management 简介 由于负载的多样性,很难开发一个能够适用于各种负载的软件缓存管理策略。 因此系统设计者面临的并非一项简单的任务,需要了解负载的特性,然后为这些负载调研出一个可以提供最高命中率的缓存管理策略。而且,一些缓存管理策略具有可调节的参数,这要求系统设计者了解如何去配置这些参数。 价值 在本论文中,我们为软件缓存管理框架确定了两种自适应机制,这两种机制都暴露了影响命中率的调参。第一种基于爬山方式[26]来调节缓存管理参数。 类似地,Main缓存可能会引入任何缓存管理框架,但Caffeine使用了SLRU淘汰策略。 例如,增量为8,代表该元素的计数器会在元素进入时增加8,即估计的访问频率为8。第一次Reset操作之后,估计的频率会减半到4,第二次之后,会减半到2,以此类推。

    1.2K20发布于 2021-07-14
  • 来自专栏java学习

    Spring整合Ehcache管理缓存

    作者:静默虚空 链接:cnblogs.com/jingmoxukong/p/5975994.html 前言 Ehcache 是一个成熟的缓存框架,你可以直接使用它来管理你的缓存。 (1) 在classpath下添加ehcache.xml 添加一个名为helloworld的缓存。 <?xml version="1.0" encoding="UTF-<em>8</em>"? Element:缓存的元素,它维护着一个键值对。 Cache:它是Ehcache的核心类,它有多个Element,并被CacheManager管理。它实现了对缓存的逻辑行为。 xml version="1.0" encoding="UTF-8"? xml version="1.0" encoding="UTF-8"?

    71220发布于 2018-07-25
  • 来自专栏静默虚空的博客

    Spring整合Ehcache管理缓存

    前言 Ehcache 是一个成熟的缓存框架,你可以直接使用它来管理你的缓存。 Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache),但本身不直接提供缓存功能的实现。 (1) 在classpath下添加ehcache.xml 添加一个名为helloworld的缓存。 <?xml version="1.0" encoding="UTF-<em>8</em>"? Element:缓存的元素,它维护着一个键值对。 Cache:它是Ehcache的核心类,它有多个Element,并被CacheManager管理。它实现了对缓存的逻辑行为。 xml version="1.0" encoding="UTF-8"? xml version="1.0" encoding="UTF-8"?

    2K70发布于 2018-01-05
  • 来自专栏存储内核技术交流

    浅谈Linux内核中页缓存和块缓存

    Page Cache(页缓存) Linux页高速缓存任何基于页的数据,所缓存的Page包括普通文件内容、块设备文件、内存映射文件的读写。页缓存中一个页帧的文件数据锁对应的磁盘块不必是连续的。 针对块设备文件的页缓存则是磁盘盘块在物理磁盘上是连续的。 页缓存中采用了struct address_space数据结构来管理。它特指一个文件内容所形成的的页缓存空间。 struct address_space不仅仅管理某个文件已经读入的页帧内容,同时也管理这些页帧到进程空间的文件映射关系(多个进程打开同一个文件下,多个进程读取不同位置的数据)。 如果一个struct address_space和一个文件对应,所有进程访问的页缓存通过一个struct address_space进行管理。 在内核中块缓存是通过struct buffer_head进行管理的。

    4K30编辑于 2022-08-17
  • 来自专栏码匠的流水账

    聊聊linux的文件缓存

    序本文主要研究一下linux的文件缓存文件缓存linux使用page cache来缓存最近读取的文件,也有目录结构(dcache: Directory Entry Cache)缓存及inode缓存,它们都使用了 LRU算法来管理这些page及dentries cachevmstat## vmstatprocs -----------memory---------- ---swap-- -----io---- - vm.dirty_expire_centisecs管理数据在写入驱动器之前在缓存中可以存活多长时间。 memlock unlimited查看ulimit -Ha | grep lockedmax locked memory (kbytes, -l) 2033684小结linux 使用page cache来缓存最近读取的文件,也有目录结构(dcacheDirectory Entry Cache)缓存及inode缓存,它们都使用了LRU算法来管理这些page及dentries cache

    1.3K10编辑于 2024-04-17
  • 来自专栏韩曙亮的移动开发专栏

    Linux 内核 内存管理】内存管理架构 ③ ( Linux 内核中的内存管理模块 | 页分配器 | 不连续页分配器 | 内存控制组 | 硬件设备内存管理 | MMU | 页表缓存 | 高速缓存 )

    文章目录 一、Linux 内核中的内存管理模块 二、硬件设备内存管理 一、Linux 内核中的内存管理模块 ---- Linux 内核还需要处理如下内容 : ① 页错误异常处理 ② 页表管理 ③ 引导内存分配器 : 如果 " 内存碎片化 " 严重 , 没有连续物理页 , 需要通过 整理内存碎片 并迁移数据 得到 连续的 物理页 ; 内存回收 : 内存不足时 , 回收内存 ; ⑦ 页回收处理 二、硬件设备内存管理 ---- 硬件设备内存管理 : ① CPU 处理器 中的 " 内存管理单元 " ( MMU ) 和 高速缓存 ; ② 物理内存 在 " 内存管理单元 " ( MMU ) 中 , 还有一个 " 页表缓存 " ; 页表缓存缓存了 最近使用的 " 页表映射 “ , 该映射的作用是 将 ” 物理地址 " 映射为 " 虚拟地址 " ; CPU 处理器 与 内存 访问速度不匹配 , 增加了 " 高速缓存 " 机制 ; 一级缓存 : 数据缓存 , 指令缓存 ; 二级缓存 : 协调 内存 与 一级缓存 ;

    1.8K40编辑于 2023-03-30
  • 来自专栏灵墨AI探索室

    系统内存管理:虚拟内存、内存分段与分页、页表缓存TLB以及Linux内存管理

    Linux下,每一页的大小通常为4KB。虚拟地址与物理地址之间通过页表进行映射,页表存储在CPU的内存管理单元(MMU)中,从而CPU可以直接通过MMU找到实际访问的物理内存地址。 页表缓存TLB(Translation Lookaside Buffer)TLB(Translation Lookaside Buffer)是一个位于CPU芯片中的缓存,用于存储程序中最常访问的页表项, 因此,通过将最常访问的页表项存储到TLB这个硬件缓存中,可以更快地进行地址转换。在CPU芯片中,内存管理单元(Memory Management Unit)芯片负责处理地址转换和TLB的访问与交互。 Linux内存管理Linux内存管理涉及逻辑地址和线性地址的转换。逻辑地址是程序使用的地址,而线性地址是通过段式内存管理映射的地址,也称为虚拟地址。 页表缓存TLB能够加快虚拟地址到物理地址的转换速度。Linux的内存管理涉及逻辑地址和线性地址的转换,将虚拟地址空间分为内核空间和用户空间,方便进程访问内核空间内存。

    1.7K80编辑于 2023-11-13
  • 来自专栏技术杂记

    RabbitMQ管理8

    /usr/bin/env ruby ## encoding: utf-8 require "bunny" conn = Bunny.new conn.start conn = Bunny.new(:hostname /usr/bin/env ruby ## encoding: utf-8 require "bunny" conn = Bunny.new conn.start ch = conn.create_channel

    23810编辑于 2022-04-23
  • 来自专栏linux驱动个人学习

    Linux内核的冷热缓存

    如果这个页本来没有存在于硬件缓存中,那么它的到来,势必会将原本为其他的页缓存的内容挤出硬件缓存。 但是,如果对于内存的访问是由DMA设备发起的,那么该页不会被CPU访问,就不需要在CPU的硬件缓存中进行缓存,也不会对已经缓存在硬件缓存中的页内容造成伤害。 在Linux操作系统中,每个内存区域(Zone)都分配了hot cache和cold cache,hot cache用来缓存那些很可能被CPU的硬件缓存收纳了的页。 . 5: */ 6: static inline 7: struct page *buffered_rmqueue(struct zone *preferred_zone, 8: 如果gfp_flags中指定的__GFP_COLD,则从冷缓存中分配一页,否则,从热缓存中分配。

    2.1K20发布于 2019-05-25
  • 来自专栏自动化测试工具

    shiro框架04会话管理+缓存管理+Ehcache使用

    目录 一、会话管理 1.基础组件 1.1 SessionManager 1.2 SessionListener 1.3 SessionDao 1.4 会话验证 1.5 案例 二、缓存管理 1、为什么要使用缓存 (创建spring-ehcache.xml) 3)在SecurityManager安全管理器中设置缓存管理器 4)开启Shiro的授权或者认证数据缓存 ---- 一、会话管理 Shiro提供了完整的企业级会话管理功能   Cache:缓存对象,缓存管理器内可以放置若干cache,存放数据的实质,所有cache都实现了Ehcache接口   Element:单条缓存数据的组成单位 CacheManager xml version="1.0" encoding="UTF-8"? --defaultCache:默认的管理策略-->

    1.5K10编辑于 2022-11-18
  • 来自专栏Java学习网

    如何使用Java进行缓存管理

    缓存管理是在计算机领域中普遍的一项技术,它可以将一些常用的数据、文件或者对象存储到内存中,以提高程序的性能和响应速度。Java作为一种流行的编程语言,在缓存管理方面也提供了许多工具和类库。 下面将简要介绍如何使用Java进行缓存管理。 一、Java Cache API Java SE 6及以上版本提供了一个专门用于缓存管理的API,即Java Cache API。 provider = Caching.getCachingProvider(); CacheManager cacheManager = provider.getCacheManager(); 有了缓存管理器之后 我们可以设置缓存项的类型、失效策略、统计信息等。然后通过缓存管理器来创建一个名称为myCache的缓存实例,并向其中添加了一个键值对。最后,我们从缓存中获取了key对应的value。 二、Spring Cache Spring是Java世界中非常流行的开发框架,它提供了一种便捷的缓存管理方式——Spring Cache。

    1.5K10编辑于 2023-12-31
领券