- 博客(119)
- 收藏
- 关注
原创 HTTPS 的通信加解密过程,证书为什么更安全?
证书中包含了服务器的公钥和其他身份信息。6.客户端和服务器使用对称密钥进行加密通信:客户端和服务器通过协商好的对称密钥进行加密和解密,这意味着数据传输过程中使用相同的密钥进行加密和解密,保证了数据传输的机密性和完整性。证书的使用能够确保服务器的身份和通信的安全性,增加了整个通信过程的安全性和可信度。4.客户端生成密钥:如果证书有效,客户端会生成一个用于对称加密通信的随机密钥,并使用服务器的公钥进行加密。5.服务器解密消息:服务器收到客户端发来的加密密钥后,使用自己的私钥对其进行解密,获取对称加密的密钥。
2023-12-13 14:02:52 471
原创 ambari+ bigtop 编译、打包、部署步骤总览
而现在,可以在稍微知晓概念之后,直接找AI要Demo先跑起来,应用到代码中去,然后反向结合代码去问AI每一步实现的逻辑与理论,再消化成自己技能,也就是概念-》应用-》理论知识-》技能。启动之后,会在终端显示密码,还有加入集群的Token,待会在启动kibana时要用,如果不小心关掉了,可以在docker desktop中,找到es的容器日志找到。.Enrich.FromLogContext():添加从日志上下文中丰富日志事件的能力,例如,可以自动地将关联的 HTTP 请求信息添加到日志中。
2024-08-07 00:30:00 1003
原创 ComfyUI插件:ComfyUI layer style 节点(一)
通过使用LayerColor: Color of Shadow & HighLight节点,可以在图像处理工作流程中实现高效的阴影和高光颜色调整,提升图像的色彩表现和整体视觉效果。通过使用LayerColor: Brightness & Contrast节点,可以在图像处理工作流程中实现高效的亮度和对比度调整,优化图像的视觉效果,使图像更加清晰和吸引人。通过使用LayerColor: Gamma节点,可以在图像处理工作流程中实现高效的伽马校正,优化图像的亮度和对比度,提升图像的整体视觉效果。
2024-08-07 00:15:00 1223
原创 Blazor Web 应用如何实现Auto模式
添加拦截器HttpClientInterceptor.cs类文件,继承Castle.DynamicProxy.IAsyncInterceptor,实现Http动态代理。//程序启动时,框架自动查找Assembly中的接口,根据接口定义WebApi路由。//SSR时,就是后端实现ITestService的实现类的实例。//IService为框架定义的Api服务接口,用于标识该接口为前后端交互接口。//CSR时,就是Castle代理生成器创建的代理类的实例。//该示例路由为:/Test/GetMessage。
2024-08-06 08:35:49 577
原创 OpenCV计算机视觉学习(16)——仿射变换学习笔记
仿射变换是一种线性变换,正如上面所提到的,它包含旋转,缩放,错切和平移。最近邻插值(Nearest Neighbor Interpolation):其选择最接近变换后坐标的原始像素值,它是最简单的插值方法,为每个目标像素分配最接近源像素的颜色值,这种方法计算效率高,但可能会导致变换后的图像出现明显的锯齿状边缘。cv2.getAffineTransform()是 OpenCV 中的一个函数,用于计算一个仿射变换矩阵,该矩阵可以将源图像中的一个三角形区域映射到目标图像中的另一个三角形区域。下面说一个使用示例。
2024-08-06 08:34:32 434
原创 FFmpeg在游戏视频录制中的应用:画质与文件大小的综合比较
如果使用相同的编码器和比特率,那么AVI和MP4格式的视频画质应该是相同的。但是,由于MP4格式通常使用更先进的视频编码器,因此在相同比特率下,MP4格式的视频可能会更清晰。测试场景:视频尺寸固定大小为: 1904x1002,avi使用mpeg4,mp4使用h264,比特率(bit rate /码率)20Mb/s,录制出来的视频文件大小。天下3现在默认的码率:20000000,录制20秒50fps的视频文件大小为46.23MB,改为藏宝阁要求的码率,20秒视频50FPS文件大小降为24MB。
2024-08-06 08:33:13 144
原创 实现一个终端文本编辑器来学习golang语言:第二章Raw模式下的输入输出
该库是跨平台的,既有*nix操作系统上的基于终端的实现,也有Windows操作系统上基于winapi控制台的实现。在我们的文本编辑器中,我们将在编辑的文件结束后的任何行的开头绘制一个波浪符,当前你可以使用fmt.Printf来进行绘制。从第二章开始,在每个小节的最后都会有一些代码实操作业,你可以选择自己完成(比较推荐),再对照我的实现方式,当然也可以直接看我的代码实现。不过,之后的各个功能实现,我都会基于我先前的代码实现版本,在它的基础上进行扩展。这里不在展开,可以看对应库函数的注释来了解用途。
2024-08-06 08:31:56 686
原创 [rCore学习笔记 021]多道程序与分时任务
操作系统可进一步利用某种以固定时长为时间间隔的外设中断(比如时钟中断)来强制打断一个程序的执行,这样一个程序只能运行一段时间(可以简称为一个时间片, Time Slice)就一定会让出处理器,且操作系统可以在处理外设的 I/O 响应后,让不同应用程序分时占用处理器执行,并可通过统计程序占用处理器的总执行时间,来评估运行的程序对处理器资源的消耗。本章所介绍的多道程序和分时多任务系统都有一些共同的特点:在内存中同一时间可以驻留多个应用,而且所有的应用都是在系统启动的时候分别加载到内存的不同区域中。
2024-08-06 08:30:39 358
原创 [rCore学习笔记 021]多道程序与分时任务
操作系统可进一步利用某种以固定时长为时间间隔的外设中断(比如时钟中断)来强制打断一个程序的执行,这样一个程序只能运行一段时间(可以简称为一个时间片, Time Slice)就一定会让出处理器,且操作系统可以在处理外设的 I/O 响应后,让不同应用程序分时占用处理器执行,并可通过统计程序占用处理器的总执行时间,来评估运行的程序对处理器资源的消耗。本章所介绍的多道程序和分时多任务系统都有一些共同的特点:在内存中同一时间可以驻留多个应用,而且所有的应用都是在系统启动的时候分别加载到内存的不同区域中。
2024-08-06 08:29:41 540
原创 EF Core性能优化技巧
另一方面,返回的行数越多,缓冲查询需要的内存越多。严格意义上来讲这是一个意识问题,大多数情况下,为了节省代码量,可以直接使用DataSet 定义的对象来直接进行查询,或者使用Include加载关联表数据,但是在遇到大量数据查询或大量的表连接查询的时候,精准的属性投影对性能就会起到很大的影响。注意事项:虽然拆分查询可以通过避免笛尔卡爆炸带来的性能问题,但是也需要根据实际的查询场景来决定是否使用,例如,需要对数据进行排序,分页,分组等操作的时候,为了保证查询结果的正确性,就需要考虑是否要使用拆分查询。
2024-08-04 14:41:57 780
原创 .NET 8 通用权限框架 前后端分离,开箱即用
集成多租户、缓存、数据校验、鉴权、事件总线、动态API、通讯、远程请求、任务调度、gRPC等众多黑科技。完美适配国产化软硬件环境,支持国产中间件、国产数据库、麒麟操作系统、Windows、Linux部署使用;代码简洁、易扩展、注释详细、易于上手、二次开发,即便是复杂业务逻辑也能迅速实现,真正实现"开箱即用"。2、租户管理: 包括租户套餐配置、过期管理、用户数量控制及企业信息维护。12、服务监控: 监测服务器运行状态,包括CPU、内存和网络信息。5、用户管理: 进行用户创建、部门分配、角色设定和岗位指派。
2024-08-04 08:59:29 448
原创 用了组合式 (Composition) API 后代码变得更乱了,怎么办?
并且同一种组合式API的代码全部写在一个地方,比如所有的props放在一块、所有的emits放在一块、所有的computed放在一块。因为computed1和increment1函数分别在文件的computed和methods的代码块处,computed1和increment1之间隔了几十行代码,看完computed1的代码再跳转去看increment1的代码就很痛苦。比如一个组件开始的时候还是规规矩矩的写,所有的ref响应式变量放在一块,所有的方法放在一块,所有的computed计算属性放在一块。
2024-08-03 16:21:00 310
原创 Vue Hook 封装通用型表格
定义loadData、changePage、changePageSize和changeSort函数来处理数据加载和分页、排序变化。首先,需要设计一个基础的表格组件,它接受列配置、数据和分页信息等参数。使用onMounted生命周期钩子在组件挂载时加载数据。使用 Vue 的ref和reactive定义表格状态。使用useTableHook 获取表格数据和操作函数。1. 创建ExampleTable.vue组件。渲染表格头部、主体和分页组件,并绑定相关事件。一、创建通用型表格的需求。
2024-08-03 11:39:00 995
原创 SQL连续查询问题拓展—记上海拼多多非技术岗面试真题
比如题目中,需要时间连续的某人最大的支付失败数量,那么就需要按照时间排序了,那么如何判断时间连续,题目中并没有规定时间的出现频次,所以直接和时间来做比较判断连续并不是一个好的解决办法。2.筛选掉支付订单成功的,再根据用户编号开窗,按照时间排序,增加行号,这样就得到了每个用户按照时间排序的失败的订单的序号。就像我昨天写的一样,连续问题,创造一个连续列来和目标判断是否连续的列相比较是比较简单的一种办法。4.按照用户和得到的数字分组,或者最大的组,就是最大的连续支付失败的订单数量。
2024-08-03 10:08:44 176
原创 SQL实战从在职到离职(1) 如何处理连续查询
书接上回,最近离职在家了实在无聊,除了看看考研的书,打打dnf手游,也就只能写写代码,结果昨晚挂在某平台的一个技术出售有人下单了,大概业务是需要帮忙辅导一些面试需要用到的SQL。比如场景二,需要找连续的日期,那么就要再找一个连续的变量,让两个变量进行相减或者其他操作,得到不变的数据,然后通过分组或者分区查询即可。回想了下,在该平台接单SQL也超过3w元了,考察的也就是那几大类,我准备开一个新的专题,把我遇到的题目做一些示例和总结,欢迎大家指正。场景二:查询连续人流量超过2w的日期,某游乐场的业务管理系统。
2024-08-02 13:16:41 253
原创 【杂谈】JPA乐观锁改悲观锁遇到的一些问题与思考
如果这个"Compare And Set"操作放在应用层,则无法保证原子性,即可能version比较成功了,但等到实际更新的时候,数据库的version已被修改。如果在获得锁之前就将对象捞了出来,等获得锁之后重新捞还会得到缓存内的数据,而非数据库最新数据。正常在获得锁之后,需要重新加载最新的数据,这样修改的时候才不会冲突。在悲观锁范围内,首次加载entity数据的时候,使用refresh方法,强制从DB捞取最新数据。此项目采用乐观锁+悲观锁混合方式,用悲观锁限制并发修改,用乐观锁做最基本的一致性保护。
2024-08-02 13:11:24 928
原创 nacos配置&gateway配置服务发现一直报500
这里面尤其要注意的是StripPrefix这个参数,之前没有太注意,还弄出个404,看了些讲解才知道这个就是去掉我一开始请求的路径上的字符,如:StripPrefix=1,那么请求到服务就是backend/user/detail?因为发现项目使用的配置文件过多,有application、application-test.yml、bootstrap.yml、远程nacos配置,我想不能搞得简单些就尽量把所有配置都放到线上,本地只是做区分么,然后自己恶补了下application和bootstrap区别。
2024-08-02 13:06:06 477
原创 结合拦截器描述mybatis启动流程
Mapper接口定义了数据库操作的方法,而SqlSession通过加载Mapper接口和XML映射文件,将Mapper接口与实际的SQL语句绑定在一起,从而可以执行Mapper接口中定义的方法对数据库进行操作。在MyBatis框架中,SqlSession对象是核心的数据库会话管理器,它提供了执行持久化操作的方法和管理持久化操作的生命周期。资源管理:SqlSession在创建时会获取到数据库连接,在关闭时释放连接,确保资源得到合理的管理和释放,避免资源泄漏。三、SqlSession对象;
2024-08-02 13:00:49 132
原创 汇编+qemu玩转控制台打印
可以发现都是将一系列的参数放到不同的寄存器,然后再触发中断,这个中断里面值得注意的是AH这个寄存器,前面说到了它是AX寄存器的高8位,需要将服务号放置到这个AH寄存器里面,先来看看int 0x10下的服务号(需要可以查手册)有段时间开始对汇编感兴趣,也因此在写各种不同的demo,现在分享之前学习的成果,需要下载的东西有nasm和qemu-system-i386,看看枯燥的汇编能产生多大的能量。AL 寄存器包含要打印的字符,BL 寄存器包含颜色属性,CX 寄存器包含重复次数。
2024-08-02 08:53:06 388
原创 ClickHouse的向量处理能力
Spring AOP 提供了强大的功能来增强 Bean 的行为,使得切面逻辑与核心业务逻辑分离,提升了代码的模块化和可维护性。在 Spring 中,AOP 的主要功能是为 Bean 增强功能,如添加额外的行为。在 JDK 动态代理中,InvocationHandler的invoke()方法包含了拦截器链的逻辑。代理对象的创建是在调用getProxy()方法时动态生成的,并且在这个方法中处理了所有的 AOP 增强逻辑。CGLIB 动态代理通过生成目标类的子类来实现代理,因此可以代理没有接口的类。
2024-08-02 08:47:48 234
原创 Spring AOP概念及原理
Spring AOP 提供了强大的功能来增强 Bean 的行为,使得切面逻辑与核心业务逻辑分离,提升了代码的模块化和可维护性。在 Spring 中,AOP 的主要功能是为 Bean 增强功能,如添加额外的行为。在 JDK 动态代理中,InvocationHandler的invoke()方法包含了拦截器链的逻辑。代理对象的创建是在调用getProxy()方法时动态生成的,并且在这个方法中处理了所有的 AOP 增强逻辑。CGLIB 动态代理通过生成目标类的子类来实现代理,因此可以代理没有接口的类。
2024-08-02 08:42:31 441
原创 FP分数规划在无线通信中的应用
forall k\in\mathcal{K}_{i}\).对于约束\(\sum_{m=1}^{M}\Vert\mathbf{v}_{im}\Vert_{2}^{2}\leq P_{\max}\),可写为\(\sum_{m=1}^{M}\mathbf{v}_{im}^{\dagger}\mathbf{v}_{im}-P_{\max}\leq0\),即\(\mathrm{tr}\{\mathbf{V}_{i}^{\dagger}\mathbf{V}_{i}\}-P_{\max}\leq0\),
2024-08-02 08:37:14 242
原创 认识netty的基本组件
最后,也是最重要的,配置处理网络事件的类,这里我们定义了 NettyServerHandler 作为处理 SocketChannel 上的网络事件的类。另外,事件驱动的思想也有很好的体现,在 Handler 类里有许多表示事件的方法,比如表示读事件的方法 channelRead(),表示 Channel 连接活跃的方法 channelActive()。首先,可以看到,负责通信模块的启动类和负责处理网络事件的 Handler 类是分开的,这样的好处是 Handler 类的业务逻辑功能和启动类的通信功能分离。
2024-08-02 08:31:55 548
原创 .NET 开源快捷的数据库文档查询和生成工具
.NET 开源快捷的数据库文档查询和生成工具前言在实际项目开发中,需求变更和项目迭代是常态。要求我们能够迅速响应,对数据库结构进行相应的调整,如添加新表、更新现有表结构或增加字段等。为了确保团队成员之间的信息同步,实时更新和维护数据库文档变得至关重要。这不仅提升了数据库的可读性,也极大提高了开发效率和团队协作的流畅性。SmartSQL,一款专为.NET平台设计的开源数据库文档工具,它通过简化数据库文档的查询、生成和管理流程,大大减少了手动文档维护的负担,方便信息同步。本文将深入探讨Sma
2024-08-01 21:19:56 219
原创 一文带你了解CAP的全部特性,你学会了吗?
事务消息是CAP的第一大特性,在构建 SOA 或者 微服务系统的过程中,通常需要使用事件来对各个服务进行集成,在这过程中简单的使用消息队列并不能保证数据的最终一致性, CAP 采用的是和当前数据库集成的本地消息表的方案来解决在分布式系统互相调用的各个环节可能出现的异常,它能够保证任何情况下事件消息都是不会丢失的。消息发送或消费的吞吐量除和用户的代码有关系外,还和当前的硬件负载及处理能力有关,缓冲区的设计在一定程度上能够最大化消息处理的吞吐能力及资源利用能力,但这并非万能的解药。
2024-08-01 21:19:26 393
原创 FP分数规划在无线通信中的应用
forall k\in\mathcal{K}_{i}\).对于约束\(\sum_{m=1}^{M}\Vert\mathbf{v}_{im}\Vert_{2}^{2}\leq P_{\max}\),可写为\(\sum_{m=1}^{M}\mathbf{v}_{im}^{\dagger}\mathbf{v}_{im}-P_{\max}\leq0\),即\(\mathrm{tr}\{\mathbf{V}_{i}^{\dagger}\mathbf{V}_{i}\}-P_{\max}\leq0\),
2024-08-01 21:19:04 785
原创 Spring AOP概念及原理
Spring AOP 提供了强大的功能来增强 Bean 的行为,使得切面逻辑与核心业务逻辑分离,提升了代码的模块化和可维护性。在 Spring 中,AOP 的主要功能是为 Bean 增强功能,如添加额外的行为。在 JDK 动态代理中,InvocationHandler的invoke()方法包含了拦截器链的逻辑。代理对象的创建是在调用getProxy()方法时动态生成的,并且在这个方法中处理了所有的 AOP 增强逻辑。CGLIB 动态代理通过生成目标类的子类来实现代理,因此可以代理没有接口的类。
2024-08-01 21:16:33 358
原创 Spring AOP概念及原理
Spring AOP 提供了强大的功能来增强 Bean 的行为,使得切面逻辑与核心业务逻辑分离,提升了代码的模块化和可维护性。在 Spring 中,AOP 的主要功能是为 Bean 增强功能,如添加额外的行为。在 JDK 动态代理中,InvocationHandler的invoke()方法包含了拦截器链的逻辑。代理对象的创建是在调用getProxy()方法时动态生成的,并且在这个方法中处理了所有的 AOP 增强逻辑。CGLIB 动态代理通过生成目标类的子类来实现代理,因此可以代理没有接口的类。
2024-08-01 21:09:33 624
原创 【杂谈】JPA乐观锁改悲观锁遇到的一些问题与思考
如果这个"Compare And Set"操作放在应用层,则无法保证原子性,即可能version比较成功了,但等到实际更新的时候,数据库的version已被修改。如果在获得锁之前就将对象捞了出来,等获得锁之后重新捞还会得到缓存内的数据,而非数据库最新数据。正常在获得锁之后,需要重新加载最新的数据,这样修改的时候才不会冲突。在悲观锁范围内,首次加载entity数据的时候,使用refresh方法,强制从DB捞取最新数据。此项目采用乐观锁+悲观锁混合方式,用悲观锁限制并发修改,用乐观锁做最基本的一致性保护。
2024-08-01 21:07:26 324
原创 我的编程经历,从天桥地摊Basic到西藏阿里的.Net AOT。(一,从井到Sharp)
我的编程经历,从天桥地摊Basic到西藏阿里的.Net AOT。(一,从井到Sharp)小霸王学习机附带有basic语言, 我想当然的打了一个 print "what's your name?" ,它却没有给我期望的答案,直到16年后才由 siri 给出了回答。1995年,《电子游戏软件》做了三期连载,叫《世嘉五代与超级任天堂的对比报告》撇清一层歧义:标题中的阿里不是指阿里巴巴集团,喜马拉雅也不是指那个做音频频道的公司,文中所及内容以及我本人都与他们没有任何关联。依照地理正式名称:阿里指的是西藏西部
2024-08-01 21:05:12 708
原创 SQL实战从在职到离职(1) 如何处理连续查询
书接上回,最近离职在家了实在无聊,除了看看考研的书,打打dnf手游,也就只能写写代码,结果昨晚挂在某平台的一个技术出售有人下单了,大概业务是需要帮忙辅导一些面试需要用到的SQL。比如场景二,需要找连续的日期,那么就要再找一个连续的变量,让两个变量进行相减或者其他操作,得到不变的数据,然后通过分组或者分区查询即可。回想了下,在该平台接单SQL也超过3w元了,考察的也就是那几大类,我准备开一个新的专题,把我遇到的题目做一些示例和总结,欢迎大家指正。场景二:查询连续人流量超过2w的日期,某游乐场的业务管理系统。
2024-08-01 20:52:21 372
原创 【杂谈】JPA乐观锁改悲观锁遇到的一些问题与思考
如果这个"Compare And Set"操作放在应用层,则无法保证原子性,即可能version比较成功了,但等到实际更新的时候,数据库的version已被修改。如果在获得锁之前就将对象捞了出来,等获得锁之后重新捞还会得到缓存内的数据,而非数据库最新数据。正常在获得锁之后,需要重新加载最新的数据,这样修改的时候才不会冲突。在悲观锁范围内,首次加载entity数据的时候,使用refresh方法,强制从DB捞取最新数据。此项目采用乐观锁+悲观锁混合方式,用悲观锁限制并发修改,用乐观锁做最基本的一致性保护。
2024-08-01 20:48:13 239
原创 【杂谈】JPA乐观锁改悲观锁遇到的一些问题与思考
如果这个"Compare And Set"操作放在应用层,则无法保证原子性,即可能version比较成功了,但等到实际更新的时候,数据库的version已被修改。如果在获得锁之前就将对象捞了出来,等获得锁之后重新捞还会得到缓存内的数据,而非数据库最新数据。正常在获得锁之后,需要重新加载最新的数据,这样修改的时候才不会冲突。在悲观锁范围内,首次加载entity数据的时候,使用refresh方法,强制从DB捞取最新数据。此项目采用乐观锁+悲观锁混合方式,用悲观锁限制并发修改,用乐观锁做最基本的一致性保护。
2024-08-01 20:35:12 341
原创 SQL实战从在职到离职(1) 如何处理连续查询
书接上回,最近离职在家了实在无聊,除了看看考研的书,打打dnf手游,也就只能写写代码,结果昨晚挂在某平台的一个技术出售有人下单了,大概业务是需要帮忙辅导一些面试需要用到的SQL。比如场景二,需要找连续的日期,那么就要再找一个连续的变量,让两个变量进行相减或者其他操作,得到不变的数据,然后通过分组或者分区查询即可。回想了下,在该平台接单SQL也超过3w元了,考察的也就是那几大类,我准备开一个新的专题,把我遇到的题目做一些示例和总结,欢迎大家指正。场景二:查询连续人流量超过2w的日期,某游乐场的业务管理系统。
2024-08-01 20:33:07 353
原创 爬虫是什么?
parse`方法是用于解析响应的,它使用XPath表达式从HTML中提取热搜标题和链接,并创建一个`WeibohotItem`对象来存储这些信息。导入了`datetime`模块用于获取当前时间,`feapder`模块用于创建爬虫,以及自定义的`WeibohotItem`类。普通爬虫是最常见的爬虫类型,它们从一个或多个种子URL开始,递归地访问页面并跟踪链接,直到达到预设的深度或找到特定的信息为止。- **社交网络分析**:爬虫可以用于收集社交媒体上的信息,例如用户的社交关系和发布的内容。
2024-05-31 11:38:12 1282
原创 微博热搜信息使用Python抓取网页数据并写入文件
本文介绍了如何使用 Python 中的 Requests 和 BeautifulSoup 库来抓取网页数据,并将抓取到的数据写入文件。我们将详细说明代码实现步骤,并提供实用的示例
2024-02-14 12:26:57 505
【STM32单片机】贪吃蛇游戏设计
2023-12-13
自动化文件夹脚本程序,批量创建文件夹
2023-12-13
Typora是一款Markdown编辑器和查看器
2023-12-12
微博信息爬虫exe文件,下载打开双击运行即可
2023-12-05
java基础的注解和反射的相关知识点总结
2023-09-06
基于java的功能记事本程序
2023-08-15
javaweb前端相关入门关于变量的简单知识
2023-08-10
软件测试笔试理论知识点
2023-07-11
linux常用命令以及服务器工作中常用命令
2023-07-10
基于神经网络的外汇预测
2023-07-10
NAvicat用到的工具
2023-07-10
Windows使用记录查看工具
2023-07-10
数据恢复工具大家可以下载试试
2023-07-10
python基础学习+基础pdf文件
2023-06-08
分区助手,诸位c盘很小的C盘杀手,这个很好用免费的快下载
2023-05-26
混凝土强度预测 python 简单小项目
2023-05-26
数据库音乐管理系统很简单很low
2023-05-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人