自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker搭建Jekins

将 url 内容修改为 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json(清华大学官方镜像)因为网络原因,需要将插件源设置为国内的,这样才可以安装插件。进入宿主机目录 /home/jenkins_home/,编辑文件 hudson.model.UpdateCenter.xml。这个文件中,注意这个路径是Docker容器中的,所以我们通过如下命令获取一下。输入上面获取的密码,即可解锁。别忘了我们映射了本地数据卷。

2024-04-24 22:27:18 202

原创 搭建Maven的Nexus3私服

下载地址:https://help.sonatype.com/repomanager3/product-information/download。文件,文件中内容就是admin用户的登陆密码。登陆进去之后会提示修改密码,修改完成之后会移除密码文件。登录http://localhost:8081/阿里云Maven仓库配置指南(选择maven2(proxy)保存文件,至此就全部配置好了。,可以按需替换成其他的版本。选择maven-public。

2024-04-12 23:36:13 1135

原创 ruoyi的一些gateway传token的一些问题

是一个很简单的信息。去授权信息,用这个token做验证。然后封装一个user在内部传递。这个是不会暴露在最外面的请求中的。还会放一下attribute属性,不放在header上。

2024-04-12 16:41:20 687

原创 ruoyi cloud 退出的问题项目配置

需要修改这里,才可以退出。

2024-04-12 15:52:04 405

原创 docker完美安装分布式任务调度平台XXL-JOB

自己看。

2024-04-11 22:59:19 946

原创 Caused by: java.time.zone.ZoneRulesException: Unknown time-zone ID: CTT 问题记录

5.x 版本可以用ctt。8.0版本就报错了。

2024-04-11 16:41:13 138 1

原创 springcloud项目中,nacos远程的坑

2.实现EnvironmentPostProcessor并设置值,并在META-INF中注入我们的类。我将允许重写放在了远程nacos的注册中心,还是无法启动。这个bug,想想确实也可以解决。1.配置到bootstrap.yml或者application.yml中。

2024-04-10 23:22:18 202 1

原创 云的docker的mysql数据丢失,被黑客攻击的解决方法

mysqlbinlog --start-position=起始位置 --stop-position=结束位置 binlog.000007 | mysql -u 用户名 -p。

2024-04-10 15:25:39 385

原创 gateway的授权思考

鉴权:gateway是处理,check从oauth通过rpc接口鉴权,然后获取userId,或者其他的需要的重要信息放入header上作为业务的传递。业务:业务系统,不需要做任何鉴权,只需要做业务操作,其他的userId信息可以用userHolder类处理。登录:是传将authoration 这个token和当前用户绑定,然后放在redis.1、看了一下若依的cloud项目。

2024-04-10 11:41:38 469

原创 redis的三大模式的演化及集群模式思考和总结

这个推出,是为了解决上面的主从复制的时候,如何master挂了,系统自己不会选新的master,所以需要这个哨兵模式,相当于找了个监考老师,但是这个监考老师不做事务的处理。(只有当前一个集群,有1个master,多个slave,哨兵模式)(三个集群,每个集群都是有1个master,多个slave,哨兵模式)。所以弄了将这个大数据进行拆分,16384 数据分片/取模,就是按照合适的比例,将数据合理分配到不同的集群中。这个呢,还是基于单个集群来讲,也就是1个master,多个slave.

2024-04-09 23:39:49 280 2

原创 nacos的配置属性问题allowOverride和overrideNone

allowOverride决定是否允许本地配置覆盖远程配置,而overrideNone则进一步控制远程配置在优先级上的行为。当overrideNone设置为true时,外部的配置(即远程配置中心中的配置)的优先级会变得更低,且不能覆盖任何已经存在的属性源,包括本地配置文件中的属性。当allowOverride设置为true时,本地配置中的属性可以覆盖远程配置中心中相同的属性。这意味着,如果本地配置和远程配置中心存在相同的配置项,并且allowOverride为true,那么本地配置的值将优先被使用。

2024-04-09 20:03:17 143

原创 docker安装mysql和nacos集群加nginx代理

在/home/mysql目录下新建两个文件夹,一个叫data另一个叫conf删除10.0.0.0 到 10.255.255.255(CIDR 表示法:10.0.0.0/8)172.16.0.0 到 172.31.255.255(CIDR 表示法:172.16.0.0/12)192.168.0.0 到 192.168.255.255(CIDR 表示法:192.168.0.0/16)这些地址范围被保留用于内部网络,并且不会被分配给公共互联网上的设备。

2024-04-07 23:39:36 770

原创 docker中的mysql使用jeecg-boot碰到大小写敏感

直接运行容器加上 --lower-case-table-names=1。使用挂载修改本地文件,无效。

2024-04-06 14:43:48 91

原创 人工智能上手 Pytorch

2015年, caffe,优势配置简单,缺点安装麻烦,且不更新维护2016年,tensorflow 1.x,定义太严格,很复杂。开发成本高。简单的任务,也很麻烦。2017年,keras,封装了tensorflow 1.x,非常简洁的api,深受同学和老师的喜爱2018年,tensorflow 2.x,收购了keras,tf2.0版本。2019年,torch的python版本,pytorch。19年初比不过tf2.0. 简单。pytorch,学习成本极低。很少很短时间就能掌握torch。

2024-04-03 21:35:49 605

原创 java的包装类型问题

类型占用 4 个字节(32 位)。数组元素:在某些情况下,特别是在大规模数据处理或图像处理等领域,使用。Java 基本数据类型的包装类型的大部分都用到了缓存机制来提升性能。类型的取值范围(-32,768 到 32,767),可以使用。类型的数组元素可以显著减少内存占用,并提高性能。存储特定范围的数值:如果明确知道数值范围不会超过。类型小,只占用 2 个字节(16 位),而。java的基本类型大家都知道。类型来减少内存占用,并提高数据存储效率。的相应类型的缓存数据,类型占用的内存空间比。类型来降低内存占用。

2024-04-02 10:52:36 140

原创 FastThreadLocal和ThreadLocal

本节课我们对比介绍了 ThreadLocal 和 FastThreadLocal,简单总结下 FastThreadLocal 的优势。高效查找。FastThreadLocal 在定位数据的时候可以直接根据数组下标 index 获取,时间复杂度 O(1)。而 JDK 原生的 ThreadLocal 在数据较多时哈希表很容易发生 Hash 冲突,线性探测法在解决 Hash 冲突时需要不停地向下寻找,效率较低。

2024-03-31 12:14:50 1002

原创 探究ThreadLocal的魔数0x61c88647和Entry数组

下面有一个很重要的,他的值是0x61c886470x是十六进制。将61c88647放入进制转换器中:二进制:1100001110010001000011001000111十进制:1640531527这个数字表示黄金比例乘以2的31次方 ((sqrt(5)-1) * (2^31))。结果是一个黄金数,即2654435769或-1640531527。此外,在ThreadLocalMap的哈希处理方式中,我们可以看到HASH_INCREMENT与使用黄金比率的斐波那契哈希有关。

2024-03-31 12:02:26 371

原创 Netty核心原理剖析与RPC实践26-30

服务注册和发现是 RPC 框架中非常重要的一环,本节课我们设计了通用的注册中心接口,并给出了 Zookeeper 场景下的默认实现。在服务发现中需要使用到负载均衡算法,其中一致性 Hash 算法在很多场景中被广泛使用,它可以保证每个服务节点分摊的流量尽可能均匀,而且能够把服务节点扩缩容带来的影响降到最低。关于一致性 Hash 算法的实现原理务必掌握,这也是面试中的高频问题。如果你对 Eureka 或者其他类型的注册中心比较熟悉,你可以尝试扩展 RegistryService 接口并实现它。

2024-03-29 11:40:52 1213

原创 Netty核心原理剖析与RPC实践21-25

HashedWheelTimer 实现了接口 io.netty.util.Timer,Timer 接口是我们研究 HashedWheelTimer 一个很好的切入口。Timer 接口提供了两个方法,分别是创建任务 newTimeout() 和停止所有未执行任务 stop()。从方法的定义可以看出,Timer 可以认为是上层的时间轮调度器,通过 newTimeout() 方法可以提交一个任务 TimerTask,并返回一个 Timeout。

2024-03-29 11:29:37 946

原创 Netty核心原理剖析与RPC实践16-20

Netty核心原理剖析与RPC实践16-2016 IO 加速:与众不同的 Netty 零拷贝技术今天的课程我们继续讨论 Netty 实现高性能的另一个高阶特性——零拷贝。零拷贝是一个耳熟能详的词语,在 Linux、Kafka、RocketMQ 等知名的产品中都有使用,通常用于提升 I/O 性能。而且零拷贝也是面试过程中的高频问题,那么你知道零拷贝体现在哪些地方吗?Netty 的零拷贝技术又是如何实现的呢?接下来我们就针对 Netty 零拷贝特性进行详细地分析。传统 Linux 中的零拷贝技术在介绍

2024-03-29 11:22:51 1215

原创 Netty核心原理剖析与RPC实践11-15

本节课我们介绍了 Netty 强大的数据容器 ByteBuf,它不仅解决了 JDK NIO 中 ByteBuffer 的缺陷,而且提供了易用性更强的接口。很多开发者已经使用 ByteBuf 代替 ByteBuffer,即便他没有在写一个网络应用,也会单独使用 ByteBuf。ByteBuf 作为 Netty 中最基础的数据结构,你必须熟练掌握它,这是你精通 Netty 的必经之路,接下来的课程我们会围绕 ByteBuf 介绍关于 Netty 内存管理的相关设计。

2024-03-29 11:04:12 1241

原创 Netty核心原理剖析与RPC实践6-10

本节课我们详细讨论了 TCP 中的拆包/粘包问题,以及如何通过应用层的通信协议来解决拆包/粘包问题。其中基于消息长度 + 消息内容的变长协议是项目开发中最常用的一种方法,需要我们重点掌握,例如开源中间件 Dubbo、RocketMQ 等都基于该方法自定义了自己的通信协议,下节课我们将一起学习如何设计高效、可扩展、易维护的自定义网络通信协议。既然是网络编程,自然离不开通信协议,应用层之间通信需要实现各种各样的网络协议。在项目开发的过程中,我们就需要去构建满足自己业务场景的应用层协议。

2024-03-29 10:54:44 980

原创 学Netty

Netty 的高性能表现在哪些方面?对你平时的项目开发有何启发?Netty 中有哪些重要组件,它们之间有什么联系?Netty 的内存池、对象池是如何设计的?针对 Netty 你有哪些印象比较深刻的系统调优案例?我对于netty的基本应用,就是用这个+百度搜索,做了个一些聊天用的,比较熟悉的就是wss/ws,相当于spring服务躲开了一个端口线程,专门监听相关的服务消息。使用的就是bootstrap,eventloop,解码什么的,还有就是channel,问我干啥的?我也不理解。

2024-03-29 09:25:11 603

原创 I/O 多路复用是什么

综上所述,将Nacos的注册中心与I/O多路复用进行类比时,可以将注册中心看作是多个服务实例的集合,而I/O多路复用则类比为程序利用Nacos的事件通知机制同时监视和处理多个服务实例的状态变化。在Nacos中,类似地,程序可以根据Nacos的事件通知,及时发现和处理已注册或注销的服务实例,从而实现高效的服务发现和管理。总体而言,IO多路复用的关键思想是利用操作系统提供的事件通知机制,允许程序同时监视和处理多个I/O事件,以减少阻塞等待和轮询的开销,提高系统的效率和性能。结构,指示哪些fd上发生了哪些事件。

2024-03-25 15:53:30 202

原创 Reactor设计模式和Reactor模型

Reactor:负责监听和分发事件。Handlers:处理器,用于处理各种不同的事件。应用程序将需要处理的事件(如:读/写/超时等)及其对应的处理器注册到Reactor中。Reactor监听所有注册的事件。当某个事件源发生事件时,Reactor将事件分发给对应的处理器。处理器处理事件。Reactor模型适用于高并发、事件驱动的程序设计,如网络服务器等。高并发处理:在需要处理大量并发连接的场景中,如网络服务器,Reactor模型可以有效地管理和控制这些连接,提高服务器的性能。

2024-03-25 11:54:05 1263

原创 使用Vscode连接云进行前端开发

本人使用的是腾讯云。然后vscode,用最新版,插件选择remote ssh,或者remote xxx下载过来。然后点击远程资源管理器,选择SSH通道然后输入命令如下。然后输入密码腾讯云应该默认开放22.所以不用管。这个时候应该就是连接上了。

2024-03-19 21:36:36 1495

原创 Netty核心原理剖析与RPC实践0--5

作为正式学习专栏前的开胃餐,今天我主要向你介绍了 Netty 的优势与特色,同时提到了 I/O 多路复用、Reactor 设计模式、零拷贝等必备的知识点,帮助你对 Netty 有了基本的认识。相信你一定意犹未尽,在后续的章节中我们将逐步走进 Netty 的世界。最后,我也想给你留一个思考题:Netty 的内部结构大概如何?为什么 Netty 能够成为如此优秀的工具?下节课我将为你解答这个问题。

2024-03-19 15:19:09 783

原创 分布式-一致性问题

在一致性哈希算法中,引入虚拟节点其实和固定哈希槽有异曲同工之妙,都是将最终存储的节点和数据的 Key 之间多做一层转换,避免节点总数的变动影响太多映射关系,虽然固定哈希槽不如一致性哈希加虚拟节点灵活,但是考虑到 redis 的存储的数据量级与多数分布式数据库相比差距很大, 固定哈希槽策略对于 redis 已经完全够用了。槽分配到哪个节点是人为配置的,只要配置的槽均匀,最终节点上的 Key 就会均匀分布到物理节点,扩容缩容时也只需要迁移部分槽的数据。为了解决这个问题,一致哈希算法引入了虚拟节点。

2024-03-19 11:30:03 953

原创 Eureka的数据同步和Nacos的Distro的区别

去中心化。的模式。使用了版本号,作为的机制。每个机器都能读取数据,写入数据和增量数据,是经过路由处理好的节点来处理。//就是p2p啊。分发写的路由。六个机制,在我看来就是个p2p平等机制异步复制健康检查机制本地读机制新节点同步机制路由转发机制。

2024-03-18 09:25:22 606

原创 Zookeeper的ZAB协议原理详解

如何保证数据一致性。Paxos,吸收了主从。zk = 数据模型+Watch机制zab zookeeper原子广播协议。

2024-03-17 21:51:45 1252

原创 p2p原理

P2P 原理的核心概念是平等性(peer equality),即所有节点在网络中都具有相同的功能和能力,既可以作为资源的提供者,也可以作为资源的请求者。当一个节点想要连接到其他节点时,它可以通过查询DHT来获取目标节点的位置信息,然后直接连接到该节点。这些算法可以根据节点的标识或其他特征来确定节点之间的通信路径,使节点能够有效地发现和连接到其他节点。这种分布式的数据存储方式可以提高数据的可靠性和可用性,因为即使某些节点离线或失效,其他节点仍然可以提供相同的数据块。第二步:做种者将不同的片传输给不同的用户,

2024-03-17 16:58:15 1264

原创 沉下心来,分布式事务初读

目前在看,《深入理解分布式事务/原理与实战》一共365页,一天准备看个10页。知识通过大数据的推送,网页,视频还是太浅了。今年年初刚完婚,和同龄人落后太多了。先说一下,分布式事务的来源把。焦虑和急迫感催促着我。最近还是觉得书更踏实。

2024-03-16 21:46:11 97

原创 ShardingSphere-Proxy介绍

这样我们插叙tt中的分数的时候就不会扫描题目和回答了。ShardingSphere-Proxy 隐藏了后端实际数据库,对于客户端来说就是在使用一个数据库,不需要关心 ShardingSphere 如何协调背后的数据库,对于使用非 Java 语言的开发者或 DBA 更友好。用户登录的时候,可以将用户的id%100,那么会得到0-99的数,查询表的时候,将表名qq跟取模的数连接起来,就构建了表名。垂直分割指的是:表的记录并不多,但是字段却很长,表占用空间很大,检索表的时候需要执行大量的IO,严重降低了性能。

2024-03-16 21:44:05 851

原创 Paxos算法

Proposer:这种角色的职责是提出提案,例如美国总统选举,拜登和特朗普,提出提案,号召群众给他投票Acceptor: 它的职责是对提案进行表决,同意或者拒绝,或者同步选举的结果,如同美国大选中的民众Learner: 它不参与选举过程,只获取选举的最终结果。Paxos的nodes,可以扮演多种角色,甚至全部角色,就是演员。Paxos的nodes,可以扮演多种角色,甚至全部角色,就是演员。Paxos的nodes,必须持久性的:他们不能忘记他们接受的。paxos是一系列用于达成共识的分布式算法。

2024-03-16 21:29:36 207

原创 拜占庭将军问题相关问题

区块链共识本身是在有一定比例的恶意节点的情况下,在区块链系统当中的节点要达成一致的过程。本身就是一个拜占庭容错问题。在一个部分异步的网络模型当中,网络当中传送的消息的延迟小于某一个值,但是这个值的是参与分布式系统的节点所不知道。在一个同步网络的模型中,网络当中的传送消息的延迟小于某个确定的值,这个值可以被参与这个分布式系统的节点所知道。6)节点通过使用这个区块的哈希值作为上一个区块在链中创建下一个区块的方式表示对于这个区块的接受。5)节点在区块中所有的交易都是有效的且之前没有被支付的情况下接收这个区块。

2024-03-16 19:40:13 717

原创 Spring Boot Actuator介绍

Spring Boot Actuator 模块提供了生产级别的功能,比如健康检查,审计,指标收集,HTTP 跟踪等,帮助我们监控和管理Spring Boot 应用。这个模块是一个采集应用内部信息暴露给外部的模块,上述的功能都可以通过HTTP 和 JMX 访问。因为暴露内部信息的特性,Actuator 也可以和一些外部的应用监控系统整合(Prometheus, Graphite, DataDog, Influx, Wavefront, New Relic等)。

2024-03-15 21:56:49 981

原创 熔断降级的方案实现

熔断降级的方案实现Spring Cloud Netflix Hystrix 提供线程隔离、服务降级、请求缓存、请求合并等功能可与Spring Cloud其他组件无缝集成官方已宣布停止维护,推荐使用Resilience4j代替Spring Cloud Resilience4j 轻量级服务熔断库 提供类似于Hystrix的功能 具有更好的性能和更简洁的API 可与Spring Cloud:其他组件无 缝集成。

2024-03-15 21:30:07 255

原创 Hystrix怎么实现服务容错?

当错误率或响 应时间超过预设的阈值时,熔断器将会打开,后续的请求将不再发送到实际的服务提供方,而是返回预 设的默认值或错误信息。开发者可以定义降级逻辑,例如返回缓存数据、执行简化的逻辑或调用其他可 靠的服务,以提供有限但可用的功能。:Hystrix将个依赖服的请求都放在独立的线程池中执行, 避免因其个服争的故障导致整个系统的线程资源耗尽。:Hystrix可以缓存对同一请求的响应结果,当下次请求相同的数据 时,直接从缓存中获取,避免重复的网络请求,提高系统的性能和响应速度。

2024-03-15 21:27:40 297

原创 服务雪崩,熔断,降级,限流之理解

服务熔断,是因为大量请求大多数失败或者超时,服务直接过载崩溃的情况,触发熔断机制。屏蔽这个服务,带来会有一些降级(处理异常)的措施。(这不是降级的意义,而是处理熔断的异常)而大多数服务降级,是指比如双11,流量大,很多服务比较重要,主动停掉一些,比如退货退款的服务(而这个服务是能用的,但是降级屏蔽)而熔断中触发的降级(是异常情况,当前服务不可用才降级),只是单个服务质量返回的降级。服务限流,主要是为了保护服务的正常运行,大量请求过来,忙不过来,起码服务还能用。通过限流,熔断,降级等方式可以处理雪崩的问题。

2024-03-15 21:24:30 485

原创 Nacos一致性协议:Distro协议

Distro 协议是 Nacos 对于临时实例数据开发的⼀致性协议。其数据存储在缓存中,并且会在启动时进行全量数据同步,并定期进行数据校验。冗余备份,保证AP。版本号,乐观锁的设计。写有负责,读都随意!

2024-03-15 17:53:45 319

空空如也

空空如也

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

TA关注的人

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