自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(215)
  • 资源 (1)
  • 收藏
  • 关注

原创 阿里云大模型应用ACP速记

2_7: 通过微调提升模型的准确度与效率。2_6 用插件扩展答疑机器人的能力边界。2_7 大模型RAG内容安全合规检查。2_9 部署模型生产环境中。2_6 优化rag应用。

2025-07-14 10:12:46 811

原创 MCP汇总笔记

mcp是一套协议,其中定义的一些组件,需要承担特定的作用其中mcp的优势mcp的链路中,会不断去获取tool list,如果参数什么的发生变化,会被立刻感知到,而不像原来那样如果tool发生了参数变化,会导致调用报错通过prompt和tool对协议的遵守,来指定一套tool api标准的接口协议,当大模型返回planing的结果之后,直接拿去做调用,而不是有不同的api格式,去对接不同的厂商,这也是为什么说mcp协议是转接口两个协议,http+sse,根据tools的情况可以来回切换。

2025-07-14 10:12:38 627

原创 SpringAi笔记

Spring AI 解决了 AI 集成的根本难题:将企业数据和 API 与 AI 模型连接起来。

2025-07-14 10:12:30 352

原创 Java源码-核心笔记

概述 AQS中有两个队列,同步队列和条件队列,而aqs本身算是一套框架,定义了获得锁和释放锁的代码结构类注释(重要的)提供了一个框架,定义了先进先出的同步队列,获取不到锁的进程就先进去排队有个状态字段,通过它来判断是否能获得锁子类 可以通过cas来对上面的 状态字段进行赋值,来判断什么值 可以拿到锁子类可以新建非 public 的内部类,用内部类来继承 AQS,从而实现锁的功能;AQS 提供了排它模式和共享模式两种锁模式。

2025-07-14 10:12:11 724

原创 SpringBoot&微服组件

token=qlyX7pFpOkClrFRn&source=doc_collaborator# 《SpringBoot&微服组件》

2025-07-14 10:11:40 661

原创 笔记-极客-DDD实战-基于DDD的微服务拆分与设计

是什么:在事件⻛暴过程中,通过团队交流达成共识的,能够简单、清晰、准确描述 业务涵义和规则的语⾔就是通⽤语⾔什么价值:不同角色的人员之间无交流障碍,确保业务需求的正确表达哪里用:通用语言中的术语和一些用例 要在代码或者领域设计中能直接找到,这样开发出的代码可读性也就更好从事件风暴中建立通用语言到代码落地的过程示例:用表格来记录事件风暴和微服设计过程中产生的领域对象和其从属。

2025-07-13 18:22:33 676

原创 代码精进之路

主要内容技艺部分编程技巧方法论优化代码质量思想部分抽象能力分治思想基本素养实战部分常见应用架构COLA整洁面向对象分层架构(Clean Object-oriented and Layered Architecture)

2025-07-13 18:22:01 899

原创 redis汇总笔记

token=sLcLnqz5Rv8hOKEB&source=doc_collaborator# 《Redis笔记》

2025-07-13 18:20:42 813

原创 Elasticsearch笔记

概述主要是为了全文搜索es和solor他俩都是基于 Lucene后者更易使用 且是分布式的,在日志、监控系统中用的比较多前者更成熟。

2025-07-13 18:18:54 638

原创 消息中间件优化高手笔记

性能上的下降:使用事务消息 因为请求次数增多 性能下降采用 同步刷盘 ,写OsCache只需要0.1ms,同步则需要10ms集群 之间通信也会很耗时怎么去找 在mq中的消息消息零丢失方案的补充: 尤其是对于金融项目,如果mq崩溃了 最好把消息存入数据库,做好备份 容灾。

2025-07-13 18:15:38 765

原创 MySQL优化高手笔记

表是逻辑概念,对应物理层面就是表空间先找到表空间,Extent组,extent,然后找到数据页,最后就可以加载到缓存池中了。很多数据库部署时都采用他,它是一个磁盘冗余阵列,在实际生产中,如果服务器磁盘不够用就会加磁盘,而RAID就是管理机器中的多块磁盘的一种磁盘阵列技术,它可以告诉你该向那块磁盘进行读写。将数据在另一块磁盘中做冗余备份,如果一块磁盘挂掉,则还可以使用另一块磁盘,RAID技术则可以自动进行管理。而整体上RAID既有硬件层面也有软件层面。

2025-07-13 18:14:43 835

原创 Jvm优化高手-笔记

年轻代的回收Full GC/Old GC : 前者是 老年代满了触发的gc,Full GC会回收所有内存空间 老年代、新生代、永久代,后者就是老年代GC。Mojor GC:不常用,需要问对方到底指的是 old gc 还是 full gcMixedGC:G1收集器中 老年代占比达到45%收集可以metaSpace 、java 虚拟机栈、堆内存。

2025-07-13 18:13:48 775

原创 DevOps

DevOps 是开发 (Dev) 和运营 (Ops) 的复合词,它将人、流程和技术结合起来,不断地为客户提供价值。DevOps 对团队意味着什么?DevOps 使以前孤立的角色(开发、IT 运营、质量工程和安全)可以协调和协作,以生产更好、更可靠的产品。通过采用 DevOps 文化、做法和工具,团队能够更好地响应客户需求,增强对所构建应用程序的信心,更快地实现业务目标。

2025-07-13 18:12:10 445

原创 Kubernetes 笔记

Kubernetes借鉴了Borg的设计理念,比如Pod、Service、Labels和单Pod单IP等。

2025-07-13 18:10:07 588

原创 基于Java日志平台的访问链路追踪实战

token=vyXkXgZ7PHOQhTI5&source=doc_collaborator# 《基于Java日志平台的访问链路追踪实战》

2025-07-13 18:04:20 955

原创 设置线程池参数

token=z9IAMyUrfNKYissk&source=doc_collaborator# 《设置线程池参数》

2025-07-13 18:02:12 337

原创 部分场景与项目实战

token=GWbvRHnmcZardDoZ&source=doc_collaborator# 《项目实战》

2025-07-13 18:00:24 399

原创 lambda&stream深入剖析

【代码】lambda&stream深入剖析。

2025-07-13 17:58:27 413

原创 技术成长背后的思考力-笔记

2025-07-13 17:56:24 238

原创 晋升指南-笔记

2025-07-13 17:54:54 560

原创 阿里云OSS搭建图床并配置Typora自动上传

因为有使用typora写笔记的习惯,而且发现除从网络上复制的图片外 图片存储的位置都为本地,有可能丢失或移动,所以要上传到Oss上让其更保险。创建一个Bucket,要注意读写权限设置为功能读,鉴于图片的访问不会太频繁存储类型选择成了低频访问存储,这块不懂的同学可以花一会儿时间参考oss的官方文档入个门下载PicGo : 项目地址,根据Typora文档的说明大致了解到中文版用户可以下载app版本,就是带UI的版本,这是我的下载链接,运行并配置Oss。To use with Typora, we

2021-02-16 21:53:23 675

原创 无意间发现的Idea舒心小功能:复制代码到包下自动创建类

之前无意间触发过这一功能,本以为是什么快捷键,后来发现直接在一个包下粘贴就行了,貌似2019的部分版本和20版的才能这样玩,发现应该是idea识别出了class 和interface然后就自动创建了文件,比起之前先创建类再粘贴代码要舒服的多...

2021-01-28 12:17:12 1349 3

原创 记一次开发中遇到的问题:限制线程执行的数量

现有一个接口,每次请求后他会单独开启一个线程去处理业务,这个线程执行完大概要耗时1小时以上,并会在执行的过程中消耗一定的硬件资源,如果10秒钟内有10个请求过来就将有10个线程同时执行,这无疑会对服务器造成一定压力,所以现在要进行限制。实现方式这里首先想到的就是使用是否可以使用CountDownLatch 进行解决,初始化为零,然后A线程开始执行的时候把值设成1,执行完了就设置成0,在A还没结束的时候来了线程B就要进行等待。但是会有两种意外情况,第一种是两个线程同时获得CountDownLatch 的

2021-01-14 11:15:37 497

原创 使用navicat模型功能 快速理清表间关系

在看某个项目的数据库的时候发现表比较多,且都是和用户相关的,又涉及到租户、站点等,表关系有点小复杂,而且都是虚拟外键,于是自己来创建模型来方便缕清表之间关系。使用的工具为NavicatPremium15 ,12应该也差不了太多

2020-11-05 16:29:34 20586 2

原创 oauth2授权码登录:无法跳转到授权页面

浏览器访问下面的连接进行授权码登陆,注意此时的ip是192.168.43.183http://192.168.43.183:8301/auth/oauth/authorize?response_type=code&client_id=code&redirect_uri=http://www.baidu.com跳转到登陆页面后 发现,ip变成了网关地址如下:然后因域名不同就会导致session丢失 , 故不能跳转到授权页面,具体原因可参考:踩坑并且我尝试用代码 获取ip地址pub

2020-10-12 11:38:57 6660 4

原创 redisTemplate工具类分享

import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.stereotype.Component;import org.springframework.util.CollectionUtils;import java.util.Collection;import

2020-09-14 09:01:28 274

原创 SpeedMent入门&集成SpringBoot&Stream常见操作

当您熟悉 Streams 的操作时,您可能已经注意到与 SQL 构造的相似之处。 它们中的一些或多或少直接映射到 Stream 操作,例如 LIMIT 和 COUNT。开源项目 Speedment 利用这种相似性,使用纯 Java 对任何关系数据库提供类型安全的访问。

2020-09-08 14:24:57 1246

原创 NIO实现服务器和客户端简单通讯与群聊系统

参考相关API汇总public abstract class Buffer { //JDK1.4时,引入的api public final int capacity( )//返回此缓冲区的容量 public final int position( )//返回此缓冲区的位置 public final Buffer position (int newPositio)//设置此缓冲区的位置 public final int limit( )//返回此缓冲区的限制 pub

2020-09-06 15:47:18 287

原创 坑,使用Powershell运行Jar包出错:找不到或无法加载主类

要运行的命令带了一些参数,百思不得姐的是会报如下的错误使用cmd则不会出现上述情况发现了下面这篇文章 【坑】【maven】在PowerShell窗口下执行maven命令行报错:Unknown lifecycle phase “.test.skip=true”.于是在这条命令上也加了单引号 命令变成了问题成功解决...

2020-08-23 16:48:35 2191

原创 Zookeeper应用实例:配置中心&生成分布式唯一Id&分布式锁

配置中心案例工作中有这样的一个场景: 数据库用户名和密码信息放在一个配置文件中,应用读取该配置文件,配置文件信息放入缓存。​若数据库的用户名和密码改变时候,还需要重新加载缓存,比较麻烦,通过ZooKeeper可以轻松完成,当数据库发生变化时自动完成缓存同步。设计思路:连接zookeeper服务器读取zookeeper中的配置信息,注册watcher监听器,存入本地变量当zookeeper中的配置信息发生变化时,通过watcher的回调方法捕获数据变化事件重新获取配置信息在zookee

2020-08-04 18:13:50 457

原创 Redis笔记(四)初识Redis Cluster & 深入Redis Cluster & 缓存设计与优化

第9章 初识Redis ClusterRedis Cluster是Redis 3提供的分布式解决方案,有效解决了Redis分布式方面的需求,同时它也是学习分布式存储的绝佳案例。本章将针对Redis Cluster的数据分布,搭建集群进行分析说明。9-1 本章目录9-2 呼唤集群9-3 数据分布概论9-4 节点取余分区9-5 一致性哈希分区9-6 虚拟槽哈希分布9-7 基本架构9-8 原生安装9-9 原生安装-1.准备节点9-10 原生安装-2.节点握手9-11 原生安装-3.分配槽

2020-07-05 16:27:12 603

原创 Redis笔记(四)实验部分:redisCluster的原生安装与官方工具安装

原生安装通过原生安装虽然步骤繁琐但可以 达到理解架构的目的,安装主要分为以下四个步骤:配置开启节点cluster-enabled yes cluster-config-file nodes-${port}.conf使用六个配置启动:redis-server redis-7000.confredis-server redis-7001.confredis-server redis-7002.confredis-server redis-7003.confredis-server r

2020-07-05 16:26:46 276

原创 Redis笔记(三)常见的持久化开发运维问题 & Redis复制的原理与优化 & Redis Sentinel

第6章 常见的持久化开发运维问题本章探讨了常见的持久化问题进行定位和优化,最后结合Redis常见的单机多实例部署场景进行优化6-1 常见问题目录fork操作进程外开销AOF追加阻塞单机多实例部署6-2 fork同步操作与内存量息息相关:内存越大,耗时越长(与机器类型有关)info:latest_fork usec #查询 上一次持久化所消耗的时间改善fork优先使用物理机或者高效支持fork操作的虚拟化技术控制Redis实例最大可用内存:maxmemory合理配置Lin

2020-06-28 22:19:25 319

原创 day16飞机大战项目

飞机大战项目pygame.sprite.Sprite在游戏开发中通常把显示图片的对象叫做精灵可以 创建子类继承 Sprite类 四个游戏精灵共同属性image 我们加载的图片对象rect 图像显示的初始位置update()刷新游戏精灵的位置pygame.sprite.Groupupdate()调用精灵组中所有精灵的update()方法draw()将精灵组中所有精灵绘制到屏幕上add()将游戏精灵添加到精灵组当中游戏框架的搭建一个文件写游戏精灵的子类一个文件作为游戏的

2020-06-28 22:10:48 235

原创 游戏编程与基础day15

面向对象特性封装 继承 多态 抽象封装1. 任何对象都有明确的边界,将属性保护在边界之内 -- 可以将数据进行隐藏2. 封装的粒度 粒度过小: 对象过于简单,过程过于复杂 粒度过大: 对象过于复杂,不利于各司其职分门别类封装的好处 简化了编程模型,更容易记忆,调用封装的内容。 体现了代码可重用性继承性1. 类与类之间的关系2. 父类(更加抽象的类) 与 子类(相对具象的类)3. 语法规范 class 子类类名(父类的类名): pass 继承的特点:

2020-06-28 22:09:43 186 1

原创 游戏编程基础day13-14

编程思想面向对象 以对象为核心,根据需求 实现一个个对象面向过程 以动作为核心 根据需求 以流水账的形式进行书写类与对象的关系抽象的概念类就是对象的模板 图纸对象就是客观事物在人脑中的主观反应 小孩--动物园类是对象共性的抽象 猫 狗 马 -- 动物的特点 会动,会跑,会叫类的创建class 类名(首字母大写): pass class A: name = A: tedian1 = huijiao tedian2 = huipao tedian3 = huidong

2020-06-28 22:09:12 185

原创 游戏编程基础day12贪吃蛇进阶版

贪吃蛇进阶版1. 增加音效 开场背景音乐 得分音效。 游戏结束音效。2. 增加游戏玩法 加速 1. 通过时间来对游戏进行加速 2. 通过分数(通过蛇的长度) 3. 通过用户控制进行加速(事件) 增加障碍物 增加什么形状的障碍物,以及障碍物碰撞检测 人机对战 特殊道具 总得分 3. 增加游戏模式 事件挑战 闯关模式 皮肤选择 双人游戏...

2020-06-28 22:08:41 262

原创 游戏编程基础day11贪吃蛇

贪吃蛇思路1. 主角 矩形绘制 三个矩形2. 蛇的食物 随机生成, 避免食物出现的位置与主角重合3. 通过键盘事件 控制主角蛇移动 注意 贪吃蛇无法直接向反方向移动 移动时 蛇身体的矩形同时向移动方向偏移 移动时 头部先动 当 吃掉一个食物时 蛇的尾部要增加一个矩形 头部不能碰到蛇的身体 头不能超出游戏窗口4. 蛇一直自己移动 朝蛇头的方向移动代码# pygame游戏库,sys操控python运行的环境import pygame ,sys ,random# 这

2020-06-28 22:08:10 391

原创 游戏编程基础day10

键盘事件pygame.KEYUP 按键抬起event.keyevent.modpygame.KEYDOWN 按键按下键盘事件对象 只有属性没有方法event.key event.modevent.unicode生成事件pygame .event .post(一个事件类型)uevent = pygame.event.Event(pygame.QUIT)...

2020-06-28 22:07:38 157

原创 游戏编程基础day9

事件事件的概念用户与游戏进行的交互事件的类型MOUSEBUTTONDOWN 鼠标按下​ pos 属性 记录鼠标当前的坐标​ button属性 记录鼠标按键状态​ 鼠标按键 一般是有5个(左键,右键,滚轮按键,向上滚轮键,向下滚轮键,有侧键)MOUSEMOTION 鼠标移动​ rel 属性 鼠标相对运动距离 相对于上一次鼠标移动事件​ pos 属性 记录鼠标当前的坐标MOUSEBUTTONUP 鼠标弹起​ pos 属性 记录鼠标当前的坐标​ button属性 记录鼠标按键抬

2020-06-28 22:07:02 196

JAVA核心知识点整理.pdf

文档包含知识点较为全面,包括 java基础,集合,线程,jvm,spring,微服务,netty,各种分布式工具,设计模式,数据库,算法与数据结构,hadoop,spark等知识汇总,各部分内容表达简洁而不失重点,适合复习和检索查阅,pdf约280页,高清可复制,无加密

2020-03-18

空空如也

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

TA关注的人

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