缓存 算法java lru

Redis缓存何以一枝独秀?(2) —— 聊聊Redis的数据过期、数据淘汰以及数据持久化的实现机制

Redis作为一个非关系型数据库,由于其超高的并发处理性能,及其对缓存场景所提供的系列能力构建,使其成为了集中缓存的绝佳选择。本篇我们聊聊Redis数据管理的能力,如数据过期、数据淘汰、数据持久化等。 ......
数据 一枝独秀 Redis 缓存 机制

面对集中式缓存实现上的挑战,Redis交出的是何种答卷?聊聊Redis在分布式方面的能力设计

对于一个集中式缓存的分布式能力构建,必须要额外提供一些机制,来保障数据在各个节点上的安全与一致性。本文以Redis为代表,看下集Redis面对上述问题交出的是怎样一份答卷。 ......
Redis 答卷 分布式 缓存 方面

Redis缓存何以一枝独秀?——从百变应用场景与热门面试题中感受下Redis的核心特性与使用注意点

在分布式盛行的今天,本地缓存明显无法满足分布式场景的缓存诉求。作为应对之法,集中式缓存被广泛的使用在各中分布式系统中,而使用最广泛的莫过于大家耳熟能详的Redis了,本篇开始聊一聊Redis相关的内容。 ......
一枝独秀 Redis 缓存 场景 特性

算法竞赛向 C++ Standard Library 使用速查

本文旨在对算法竞赛所需 C++ Standard Library 做一个全面而相对严谨的总结。 全文主要参考以下文档: Containers library - cppreference.com C++ 标准库简介 - OI Wiki 如有能力,阅读原文可获得更深入的了解。 1 STL 算法 均在 ......
算法 Standard Library

高性能 Java 框架。Solon v1.12.3 发布(春节前兮的最后更)

一个更现代感的 Java "生态型"应用开发框架:更快、更小、更自由。不是 Spring,没有 Servlet,也无关 JavaEE;新兴独立的轻量生态 (已有150来个生态插件) 。主框架仅 0.1 MB。 相对于 Spring Boot 和 Spring Cloud 的项目: 启动快 5 ~ 1 ......
高性能 框架 Solon Java 12.3

【Java应用服务体系】「序章入门」全方位盘点和总结调优技术专题指南

专题⽬标 本系列专题的目标是希望可以帮助读者们系统和全访问掌握应⽤系统调优的思路与方案以及相关的调优工具的使用,虽然未必会覆盖目前的所有的问题场景,但是还是提供了较为丰富的案例和调优理论,会帮助大家打开思维去⽀撑系统服务体系优化能力。 适合人员 Java相关的开发人员、系统架构师、数据库DB人员以及 ......
应用服务 全方位 体系 专题 指南

Java类、对象以及(静态)方法的探讨

大家好,这是我的第一篇博客。在这里我想跟大家分享一下Java最基础的Class and Object,也就是我们熟说的类和对象,以及对Java方法的探讨。 初学时的我因为没有对这里面的每一行代码思考透彻,在学习Java中级时感到愈加困难,像是在搭建一栋地基不断摇晃的大楼,越往上盖,越是觉得自己轻浮。 ......
静态 对象 方法 Java

算法学习笔记(8.1): 网络最大流算法 EK, Dinic, ISAP

网络最大流 前置知识以及更多芝士参考下述链接 网络流合集链接:网络流 最大流,值得是在不超过管道~~(边)~~容量的情况下从源点到汇点最多能到达的流量 抽象一点:使 $\sum_{(S, v) \in E} f(S, v)$ 最大的流函数被称为网络的最大流,此时的流量被称为网络的最大流量 有了最大流 ......
算法 笔记 Dinic 网络 ISAP

常见限流算法

简介 限流顾名思义是对流量大小进行限制,防止请求数量超过系统的负载能力,导致系统崩溃,起到保护作用。 现实生活中限流也随处可见,节假日出门旅行的人数会剧增,对于旅游景点来说往往会不堪重负,如果不进行人数控制,对整个景点的压力会非常大,游客的体验也会非常差,还容易出现安全事故等危险。 同样的在一线城市 ......
算法 常见

算法学习笔记(5): 最近公共祖先(LCA)

最近公共祖先(LCA) 最近公共祖先是树上的概念,不了解树的出门左转百度:树(数据结构名词)_百度百科 定义 假设我们需要求 x 和 y 的最近公共祖先,这里有多种等价的定义 路径x到y上深度最小的点 x和y公共祖先中深度最大的点 x和y在这棵树上距离最近的公共祖先结点 如果x就是y的祖先,则x本身 ......
祖先 算法 笔记 LCA

算法学习笔记(2): 欧拉定理与逆元

逆元 定义 逆元素,是指一个可以取消另一给定元素运算的元素 具体来说,对于实际的一些应用,如: 当我们想要求(11 / 3) % 10时 明显可以看出,是没有办法直接算的,这时就需要引入逆元 $a$ 在模$p$意义下的逆元记作 $a^{-1}$,也可以用inv(a)表示 应当满足 $$ a * a^ ......
定理 算法 笔记

又一重要进展发布!OpenMMLab算法仓支持昇腾AI训练加速

摘要:上海人工智能实验室的浦视开源算法体系(OpenMMLab)团队基于昇腾AI发布了MMDeploy 0.10.0版本,该版本已支持OpenMMLab算法仓库在昇腾异构计算架构CANN上的推理部署。 本文分享自华为云社区《又一重要进展发布!OpenMMLab算法仓支持昇腾AI训练加速》,作者:昇腾 ......
重要进展 算法 OpenMMLab

【问题解决】Tomcat启动服务时提示Filter初始化或销毁出现java.lang.AbstractMethodError错误

问题背景 最近在开发项目接口,基于SpringBoot 2.6.8,最终部署到外置Tomcat 8.5.85 下,开发过程中写了一个CookieFilter,实现javax.servlet.Filter接口,代码编译期正常。部署到外置Tomcat 8.5.85 下,在控制台上报错: 16-Jan-2 ......

Java集合 - ConcurrentHashMap

本篇文章介绍 Java 集合中的 ConcurrentHashMap。 1、CHM 的底层存储结构; 2、CHM 的新增操作的处理逻辑; 3、CHM 的数组扩容机制; 4、CHM 的查询操作的处理逻辑; 5、CHM 的计数; ......
ConcurrentHashMap Java

为什么 java 容器推荐使用 ExitOnOutOfMemoryError 而非 HeapDumpOnOutOfMemoryError ?

前言 好久没写文章了, 今天之所以突然心血来潮, 是因为昨天出现了这样一个情况: 我们公司的某个手机APP后端的用户(customer)微服务出现内存泄露, 导致OutOfMemoryError, 但是因为经过我们精心优化的openjdk容器参数, 这次故障对用户完全无感知. :muscle::mu ......

React中实现keepalive组件缓存效果

背景:由于react官方并没有提供缓存组件相关的api(类似vue中的keepalive),在某些场景,会使得页面交互性变的很差,比如在有搜索条件的表格页面,点击某一条数据跳转到详情页面,再返回表格页面,会重新请求数据,搜索条件也将清空,用户得重新输入搜索条件,再次请求数据,大大降低办公效率,如图: ......
缓存 组件 keepalive 效果 React

安卓部署Java项目

开头:之前做了个文档转换的小项目,想部署在安卓手机上,自己可以随时看看,所以才有了下面这篇文章,内容或有瑕疵,望请批正。文末放我自己部署文档转换网址,仅供大家参考,谢谢! 选择:Termux 还是 Linux Deploy 还是 AidLinux? 我自己的情况就是:linux deploy安装ra ......
项目 Java

聊聊分布式缓存

缓存作为磁盘以外的一种存储数据的方式,它有着比磁盘更快的存取效率,因此,可以有效提高系统的性能。在单体系统中,一般会用到本地缓存。但在分布式系统中,本地缓存就显得不够用了,这时往往要用到分布式缓存。 分布式缓存特性 本地缓存因为就在应用系统进程的内存里面,不需要网络和对象拷贝的开销所以性能非常高,不 ......
分布式 缓存

每个Java程序员都必须知道的四种负载均衡算法

前言 一般来说,我们在设计系统的时候,为了系统的高扩展性,会尽可能的创建无状态的系统,这样我们就可以采用集群的方式部署,最终很方便的根据需要动态增减服务器数量。但是,要使系统具有更好的可扩展性,除了无状态设计之外,还要考虑采用什么负载均衡算法,本文就带领大家认识以下常见的4种负载均衡算法。 欢迎关注 ......
程序员 算法 程序 Java

分布式协议与算法-Paxos算法

本文总结自:极客时间韩健老师的分布式协议与算法实战课程。 为什么要学习Paxos算法?其实关于这个问题的答案,每个人有不同的看法。其实对我来说,我认为当前很多常用的共识算法都是基于它改进,我学习它的初衷也是为了更好的去理解Raft算法。如果你想深入理解RAFT算法,博主在这里推荐蚂蚁金服的SOFAJ ......
算法 分布式 Paxos

机器学习经典算法总结

K 近邻算法(KNN)是一种基本分类和回归方法。KNN 算法的核心思想是如果一个样本在特征空间中的 k 个最相邻的样本中的大多数属于一个类别,那该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分类样本所属的类别。 ......
算法 机器 经典

分布式协议与算法-Quorum NWR

1.强一致性与最终一致性 1.1强一致性 强一致性能保证写操作完成后,任何后续访问都能读到更新后的值;强一致性可以保证从库有与主库一致的数据。如果主库突然宕机,我们仍可以保证数据完整。但如果从库宕机或网络阻塞,主库就无法完成写入操作。 1.2最终一致性 最终一致性只能保证如果对某个对象没有新的写操作 ......
分布式 算法 Quorum NWR

你知道哈希算法,但你知道一致性哈希吗?

前言 假如让你为淘宝这种数据量非常大的公司的设计一个可扩展的数据存储系统,你该如何存储和管理数据呢?总不能放在单个服务器上吧,肯定放不下,必然需要水平扩展。那么这样就带来一个问题,这个数据要存储在哪个服务器上呢?这就引入了本文的主题一致性哈希算法,可能你没听过,那么本文就通过一个简单的例子带你一步一 ......
一致性 算法

你知道这个提高 Java 单元测试效率的 IDEA 插件吗

前言 2023年我们公司主抓代码质量,所以单元测试必不可少,而且都写到了年底的绩效目标中了。在考虑如何达成这个目标的过程中,我发现了一个关于单元测试的IDEA插件——SquareTest,它可以帮助我们提高编写单元测试的速度,你知道吗? 欢迎关注个人公众号【JAVA旭阳】交流学习 SquareTes ......
插件 单元 效率 Java IDEA

初探富文本之OT协同算法

初探富文本之OT协同算法 OT的英文全称是Operational Transformation,是一种处理协同编辑的算法。当前OT算法用的比较多的地方就是富文本编辑器领域了,常用于作为实现文档协同的底层算法,支持多个用户同时编辑文档,不会因为用户并发修改导致冲突,而导致结果不一致甚至数据丢失的问题。 ......
算法 文本

把KMP算法嚼碎!(C++)

相信不少人在学数据结构的时候都被KMP算法搞的迷迷糊糊的,原理看的似懂非懂,代码写不出来,或者写出来了也不知道为什么就可以这么写。本文力求尽可能通俗详细的讲解KMP算法,让你不再受到KMP算法的困扰。 暴力匹配的痛点 所谓暴力匹配,就是从文本串的首端开始依次检查子串是否与模式串匹配,如果不匹配就将模 ......
算法 KMP

[数据结构]KMP算法(含next数组详解)

#字符串匹配问题 给定一个字符串 s 和一个要匹配的模式串 p。模式串 p 有可能在 s 中多次出现,请求出模式串 p 在 s 中所有出现的起始位置。 #暴力匹配算法 BF ##算法思路 在面对字符串匹配问题时,很容易想到暴力求解。字符串匹配的暴力算法思路很简单,即在 s 中枚举起点 i,对于每个起 ......
数据结构 数组 算法 结构 数据

Java线程诊断

1.诊断CPU占用过高 [root@master ~]# nohup java -jar JvmProject.jar & // 有问题的java程序 [1] 1627 [root@master ~]# nohup: ignoring input and appending output to ‘n ......
线程 Java

Java的深拷贝和浅拷贝的区别

一、拷贝的引入(1)、引用拷贝创建一个指向对象的引用变量的拷贝。 Teacher teacher = new Teacher("Taylor",26); Teacher otherteacher = teacher; System.out.println(teacher); System.out.p ......
拷贝 Java

Java中Elasticsearch 实现分页方式(三种方式)

目录 ES 简介 ES 的特点: 一、from + size 浅分页 二、scroll 深分页 scroll删除 三、search_after 深分页 ES 简介 Elasticsearch 是一个基于 Lucene 实现的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful ......
方式 Elasticsearch Java