自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 手写SpringBoot核心功能流程

我们通过模拟了springboot的主要启动流程:核心注解、核心启动类、创建spring容器、对内嵌Tomcat的启动和注入spring的容器、使用多servlet服务器的切换、条件注解、自动配置类的解析等关键功能节点完成了一个简单版本的Springboot,使用这样的方式让我们对Springboot项目能有个更加深刻的理解。

2024-05-08 09:00:00 2180

原创 ElasticSearch之集群架构

GTM 是通过DNS将域名解析到多个IP地址,不同用户访问不同的IP地址,来实现应用服务流量的分配。而 SLB 是通过代理用户访问请求的形式将用户访问请求实时分发到不同的服务器,最终用户的访问流量必须要经过SLB。一般来说,相同Region使用SLB进行负载均衡,不同region的多个SLB地址时,则可以使用GTM进行负载均衡。在成本有限的前提下,让客户关注的实时数据和历史数据硬件隔离,最大化解决客户反应的响应时间慢的问题。不同的集群通过不同的名字来区分,默认名字“elasticsearch“

2024-06-03 17:02:49 1229 1

原创 ElasticSearch之聚合操作

Elasticsearch除搜索以外,提供了针对ES 数据进行统计分析的功能。可以让我们极其方便的实现对数据的统计、分析、运算。

2024-05-28 17:39:24 1253

原创 Elasticsearch之文本分析

官网称为文本分析,这是对文本进行一直分析处理的方式,基本处理逻辑是为按照预先制定的分词规则,把原本的文档进行分割成多个小颗粒度的词项,颗粒度的大小取决于分词器的配置规则。

2024-05-27 16:23:06 958

原创 Elasticsearch之深度分页问题

分页方式性能优点缺点适用场景低灵活性好,实现简单,支持随机翻页受制于设置,不能无限制翻页;存在深度分页问题,越往后分页越慢。数据量比较小,能容忍深度分页问题scroll中解决了深度分页问题scroll 查询的相应数据是非实时的,如果遍历过程中插入新的数据,查询不到;保留上下文需要足够的堆内存空间。海量数据的导出,需要查询海量结果集的数据高性能最好,不存在深度分页问题,能够反映数据的实时变更实现复杂。

2024-05-17 09:00:00 1306

原创 ElasticSearch之快速入门

Elasticsearch:官方分布式搜索和分析引擎 | ElasticElasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,Elasticsearch 会集中存储您的数据,让您飞快完成搜索,微调相关性,进行强大的分析,并轻松缩放规模。

2024-05-16 15:10:28 2405 1

原创 开源监控系统Prometheus和Grafana应用

中文名普罗米修斯,Prometheus是一个开源系统监控和警报工具包最初在SoundCloud构建。自 2012 年成立以来,许多公司和组织都采用了 Prometheus,该项目有一个非常活跃的开发人员和用户社区。它现在是一个独立的开源项目 并独立于任何公司进行维护。强调这一点,并澄清 该项目的治理架构,Prometheus 于 2016 年加入云原生计算基金会作为继Kubernetes之后的第二个托管项目。

2024-05-12 10:58:17 1277

原创 微服务架构拆分介绍

“you build, you run it”

2024-05-11 11:21:53 1109 1

原创 SpringBoot自动配置源码解析+自定义Spring Boot Starter

Spring Boot应用标注 @SpringBootApplication 注解的类说明该类是Spring Boot 的主配置类,需要运行该类的main方法进行启动 Spring Boot 应用。

2024-05-09 17:17:27 766 1

原创 SpringBoot启动流程源码解析

SpringBoot启动流程源码解析

2024-05-08 21:09:15 781 1

原创 Netty常用组件

BootStrap的意思是引导程序,BootStrap作为Netty框架的启动类和主入口类,主要作用是配置Netty框架中事件循环组、通道类型、处理器以及端口等设置。分为服务端ServerBootstrap和客户端BootStrap。

2024-04-29 22:38:01 983

原创 IDEA 智能AI编码工具插件

阿里清华大学+智谱AI科大讯飞百度亚马逊。

2024-04-27 15:45:22 643

原创 Harbor私服镜像库安装教程(超详细)

Harbor是一个开源注册表,它使用策略和基于角色的访问控制来确保工件的安全性,确保镜像经过扫描且没有漏洞,并签署镜像作为可信图像。Harbor是CNCF的一个毕业项目,它提供合规性、性能和互操作性,帮助您一致且安全地管理跨和等云原生计算平台的工件。

2024-04-26 09:30:00 2326 1

原创 MySQL迁移OceanBase问题记录

Mysql SQLNonTransientConnectionException 异常处理;数据库针对慢SQL或者未提交的事务,Oracle、MySQL、OceanBase选择了不同的策略去处理。OceanBase是分布式数据库,业务场景并发压力可能非常大,所以OceanBase选择了超时释放资源的策略。应用从Oracle或MySQL迁移到OceanBase时,需要根据业务需求动态调整上面所说的参数配置。

2024-04-25 09:29:44 2630 4

原创 Netty使用与线程模型

Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。Netty是NIO的客户端服务器框架,可以快速轻松地开发网络应用程序,例如协议服务器和客户端。它大大简化和简化了网络编程,例如 TCP 和 UDP 套接字服务器。“快速和简单”并不意味着生成的应用程序会遇到可维护性或性能问题。Netty 经过精心设计,积累了从许多协议(如 FTP、SMTP、HTTP 以及各种二进制和基于文本的遗留协议)的实施中获得的经验。

2024-04-24 09:41:59 1050

原创 BIO、NIO、AIO线程模型理解

NIO调用流程是通过操作系统内核函数来实现的。Java创建Socket后,获取该Socket的文件描述符,然后创建一个Selector对象。该Selector对象对应于操作系统中的Epoll描述符。接着,将Socket的文件描述符与Selector中的Epoll描述符关联,允许系统内核异步通知事件。这样,一条线程就可以高效地处理多个事件,而无需无效遍历。事件处理交由操作系统内核来管理,大大提高了效率。

2024-04-23 09:58:00 967

原创 数据集检索常用网站

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● 1. 检索关键词2. 数据集格式。

2024-04-22 18:17:34 366

原创 SpringBoot+Netty+WebSocket实战

从spring容器中获取具体的业务bean,上面的LiveStreamProcessingHandler继承AbstractLiveStreamProcess抽象类,各自的具体业务可以自定义实现。多个ChannelInboundHandler的调度器:目前就一种数据格式的处理Handler,后续可按需添加。application.yml配置文件中配置netty关键信息:如netty服务器端口号、需要连接的设备SN。注册ServerBootstrap中的自定义 ChannelInitializer。

2024-04-22 17:27:39 670

原创 docker 常用命令

【代码】docker 基本命令。

2024-04-21 22:52:00 121 1

原创 xxl-job 2.4.0 源码解析

xxl-job 源码解析

2024-04-21 22:32:51 343 1

原创 MYSQL SQL语句定义和执行顺序

定义要查询的列,包括是否使用DISTINCT去除重复行。: 定义查询的主表,即数据的主要来源。: 定义与主表的连接操作,包括连接类型和连接条件。: 定义筛选条件,只返回符合条件的行。: 对结果集进行分组。: 对分组结果进行多维数据汇总,产生超立方体或上卷数据。: 对分组后的结果进行过滤。: 对结果集进行排序。: 限制返回的行数。

2024-04-19 22:12:45 258 1

原创 OceanBase 数据库相关配置版本

升级druid和mybatis-plus版本之后导致druid和Localdatetime不兼容。druid 连接池:1.1.21后新版本DbType增加jdbc:oceanbase 类型。在prepareStatement时会将Localdatetime类型的参数丢失。mybatis-plus 分页插件 3.4.0才支持oceanbase。可添加相关依赖或者配置Druid和mybatis对应的版本。

2024-04-16 15:49:40 526

原创 docker-compose从harbor仓库拉取项目镜像进行私有化部署

下载 Docker Compose 至 /usr/local/bin 目录并赋予执行权限。**使用docker version 查看dockers是否启动**# 修改 Docker 配置文件,允许 http 登录。# 重启 Docker 以应用 Docker 配置变更。# 修改 /etc/hosts 文件,添加映射关系。生成私钥,会让你输入一个 4~2048 位的密码。基础代理镜像作为代理到harbor地址。#启动docker-compose。docker-compose启动。# 进入部署的工作目录。

2024-03-22 15:12:17 849

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除