- 博客(16)
- 收藏
- 关注
原创 详细剖析Nacos架构
Nacos作为一款功能强大的服务注册与配置管理平台,其架构设计精巧且层次分明。通过服务管理、配置管理、元数据管理等核心组件以及丰富的扩展机制和关键特性,Nacos为云原生应用的构建提供了有力的支持。未来,随着云原生技术的不断发展和普及,Nacos必将在更多场景和领域发挥重要作用。
2024-08-06 14:20:28
738
原创 提升代码搜索效率:深入解析现代代码搜索流程
图1:代码搜索流程图流程图从左上角开始,用户输入一个“查询”(query),随后经历一系列处理步骤,最终返回搜索结果。用户输入查询作用:用户通过界面输入代码搜索的关键词或表达式。思考与建议:提供友好的查询界面,支持多种查询语法和自然语言处理,以降低用户的学习成本并提高查询的灵活性。文件语法分析(File Syntax Analysis)工具:语法分析引擎(如ANTLR、Roslyn等)作用:对代码文件进行语法分析,生成抽象语法树(AST)。思考与建议。
2024-08-06 13:57:40
879
原创 深入解析基于代码搜索的高效流程与创新技术
该代码搜索流程始于用户输入的查询(query),随后通过一系列精心设计的步骤,最终实现高效、准确的代码搜索。用户输入查询用户通过界面输入代码搜索的关键词或表达式,这是整个搜索流程的起点。文件语法分析(File Syntax Analysis)使用语法分析引擎对代码文件进行解析,将其转换成抽象语法树(AST)。这一步骤确保了代码结构的准确识别,为后续处理提供了坚实的基础。数据块处理与AST转换(Chunk with AST, Vector Storage)
2024-08-06 13:53:46
645
转载 k8s pod container内存指标说明
即:container_memory_working_set_bytes = total_active_file+ total_rss,其中total_rss为应用真实使用内存量,正常情况下该指标数值稳定,那为何该指标会持续上升而且一直维持很高呢?上面获取内存记录,主要关心total_cache、total_rss、total_inactive_anon、total_active_anon、total_inactive_file、total_active_file。
2023-09-18 14:11:43
986
转载 Redis分布式锁-这一篇全了解(Redission实现分布式锁完美方案)
在某些场景中,多个进程必须以互斥的方式独占共享资源,这时用分布式锁是最直接有效的。随着技术快速发展,数据规模增大,分布式系统越来越普及,一个应用往往会部署在多台机器上(多节点),在有些场景中,为了保证数据不重复,要求在同一时刻,同一任务只在一个节点上运行,即保证某一方法同一时刻只能被一个线程执行。
2023-07-12 14:54:40
2210
转载 Redis的分布式锁详解
(3)为了有效解决既保证锁完全有效性 和 性能高效问题:antirez又提出了“延迟重启”的概念,redis同步到磁盘方式保持默认的每秒1次,在redis崩溃单机后(无论是一个还是所有),先不立即重启它,而是等待TTL时间后再重启,这样的话,这个节点在重启前所参与的锁都会过期,它在重启后就不会对现有的锁造成影响,缺点是在TTL时间内服务相当于暂停状态;redisson在获取锁之后,会维护一个看门狗线程,在每一个锁设置的过期时间的1/3处,如果线程还没执行完任务,则不断延长锁的有效期。
2023-03-03 11:02:48
935
转载 Redis缓存与数据库双写一致性
首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作。但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存呢?又或者是先删除缓存,再更新数据库呢?其实大家存在很大的争议。本文主要针对不同的更新进行总结,文章结构由以下三个部分组成:1、讲解缓存更新策略2、对每种策略进行缺点分析3、针对缺点给出改进方案先做一个说明,从理论上来说,给缓存设置过期时间,是保证最终一致性的解决方案。
2023-03-03 10:34:54
115
1
原创 分布式批处理方案
有大批量的业务数据需要应用程序去批量计算处理,而通过单机模式去执行会耗费很长的处理时间,也不能充分发挥业务集群中每个应用节点处理能力
2022-07-19 09:49:31
1627
1
转载 MySQL对数据表进行分组查询(GROUP BY)
MySQL对数据表进行分组查询(GROUP BY)GROUP BY关键字可以将查询结果按照某个字段或多个字段进行分组。字段中值相等的为一组。基本的语法格式如下:GROUP BY 属性名 [HAVING 条件表达式] [WITH ROLLUP]属性名:是指按照该字段的值进行分组。 HAVING 条件表达式:用来限制分组后的显示,符合条件表达式的结果将被显示。 WITH ROLLUP...
2019-03-20 10:51:34
645
转载 Fiddler实现iPhone手机抓包
最近某小程序大火,许多非专业人员也在跃跃欲试,但是在查找自己的session_id的时候卡住了,本文只从技术方面介绍如何通过通过Fiddler来抓取手机的数据,不涉及如何作弊。。。1、电脑上安装Fiddler抓包工具,百度一搜就可以了,很容易下载,如果只是在电脑上抓包,没什么好说的,现在说的是如何抓苹果手机上的包,安装之后点Tools -- Options菜单,按照下面截图设置HTTPS,不然...
2018-11-08 09:26:51
15693
1
转载 Spring Boot Tomcat配置详解
参数配置容器server.xx开头的是所有servlet容器通用的配置,server.tomcat.xx开头的是tomcat特有的参数,其它类似。所有参数绑定配置类:org.springframework.boot.autoconfigure.web.ServerProperties# EMBEDDED SERVER CONFIGURATION (ServerProperties)...
2018-10-08 11:11:43
1101
转载 Dubbo源码分析(三):Dubbo之服务端(Service)
如上图所示的Dubbo的暴露服务的过程,不难看出它也和消费者端很像,也需要一个像reference的对象来维护service关联的所有对象及其属性,这里的reference就是provider。由于ServiceBean实现了InitializingBean接口,所有在Spring实例化这个bean后会调用接口方法afterPropertiesSet: ...
2018-09-20 18:34:24
262
转载 zookeeper详解
场景一有这样一个场景:系统中有大约100w的用户,每个用户平 均有3个邮箱账号,每隔5分钟,每个邮箱账需要收取100封邮件,最多3亿份邮件需要下载到服务器中(不含附件和正文)。用20台机器划分计算的压力,从 多个不同的网路出口进行访问外网,计算的压力得到缓解,那么每台机器的计算压力也不会很大了。 通过我们的讨论和以往的经验判断在这场景中可以实现并行计算,但我们还期望能对并行计...
2018-08-30 14:31:18
174
转载 Redis主从复制和集群配置
Redis主从复制和集群配置 redis主从复制概述1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。2、...
2018-07-26 14:06:41
111
原创 史上最全的maven的pom.xml文件详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_...
2018-07-18 11:34:41
136
转载 Spring Boot 2.0 新特性和发展方向
以Java 8 为基准Spring Boot 2.0 要求Java 版本必须8以上, Java 6 和 7 不再支持。内嵌容器包结构调整为了支持reactive使用场景,内嵌的容器包结构被重构了的幅度有点大。EmbeddedServletContainer被重命名为WebServer,并且org.springframework.boot.context.embedded 包被重定向到了org.sp...
2018-07-12 09:22:39
335
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人