- 博客(897)
- 收藏
- 关注
原创 MQTT-保留消息和遗嘱消息
我们可以在发送PUBLISH的时候把Retain设置为1或者True,表示当前消息是保留消息,保留消息进入服务端,会像普通消息一样转发给当前的订阅者,还会被保留在MQTT的服务端中,每当有新的订阅建立,MQTT服务端都会检索是否存在与这个订阅匹配的保留消息,然后把匹配的保留消息下发给订阅者,由于订阅的时候可以使用主题通配符,所以可能匹配到多个保留消息,这些消息将依次下发给订阅者。
2023-08-24 22:38:09
79
7
原创 MySQL 中读写分离数据延迟
MySQL 中读写分离是经常用到了的架构了,通过读写分离实现横向扩展的能力,写入和更新操作在源服务器上进行,从服务器中进行数据的读取操作,通过增大从服务器的个数,能够极大的增强数据库的读取能力。MySQL 中的高可用架构越已经呈现出越来越复杂的趋势,但是都是才能够最基本的一主一从演化而来的,所以这里来弄明白主从的基本原理。首先来弄明白主从和主备,以及双主模式之间的区别双主有两个主库,每个主库都能进行读写,并且两个主库之间都能进行数据的同步操作。主从。
2023-08-24 22:37:12
36
原创 近源渗透学习
下面将介绍破解WPA/WPA2无线网络的方法。 BadUSB是利用了USB协议上的漏洞,通过更改USB的内部固件,在正常的USB接口接入后,模拟外置鼠标、键盘的功能,以此来使目标主机执行已经精心构造好的命令。想象一下,你可以走到一台计算机上,插入看似无害的USB驱动器,然后安装后门,窃听文档,窃取密码...(用法很多,全靠想象)。 BadUSB也是社会工程学的一个典型示例,它极大地利用了人们的好奇心,在路边捡到的USB,估计九成以上的人们都想看看里面有什么东西,而当你插入U盘,攻击就很难再停止下来了。
2023-08-24 22:35:27
43
原创 Java设计模式-原型模式
原型模式是一种创建型设计模式,它允许在运行时通过复制现有对象来创建新对象,而不是通过构造函数创建。这个模式的核心思想是基于一个现有的对象克隆一个新的对象,这个过程对外部世界是透明的,就像对象从未被克隆过一样。原型模式的一个关键优点是可以避免在创建对象时重复性地执行复杂的初始化操作,从而提高了程序的性能和可维护性。与其他创建型模式相比,原型模式的一个显著特点是允许使用原型对象来生成多个具有不同状态的克隆对象。
2023-08-24 22:34:06
18
原创 1分钟了解C语言正确使用字节对齐及#pragma pack的方法
1、数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员的对齐按照#pragma pack指定的数值和这个数据成员自身长度中,比较小的那个进行。2、结构(或联合)的整体对齐规则:在数据成员完成各自对齐之后,结构(或联合)本身也要进行对齐,对齐将按照#pragma pack指定的数值和结构(或联合)最大数据成员长度中,比较小的那个进行。编译器缺省的结构整体的自然对界条件为:该结构所有成员中要求的最大自然对界条件。
2023-08-24 22:32:22
14
原创 基于Net开发的数据库导入导出的开源项目
这些基于.Net Core开发的、导入导出的通用库,支持格式:Html、PDF、Word、Excel,可以让我们只需编写少量代码,就能快速实现导入导出的需求。比如导入的Excel格式问题、Excetl中图片导入问题,导出的需求为了方便客户查看,会面临更多个性化的需求,为了满足这些需求,开发还是比较繁琐的。2、数据格式:数据的校验、数据处理、类型映射、数据筛选、数据拆分等;1、支持格式:Html、PDF、Word、Excel;3、自定义:自定义表头、单元格的格式;
2023-08-24 22:31:17
14
原创 Apache hudi 核心功能点分析
初始的需求是Uber公司会有很多记录级别的更新场景,Hudi 在Uber 内部主要的一个场景,就是乘客打车下单和司机接单的匹配,乘客和司机分别是两条数据流,通过 Hudi 的 Upsert 能力和增量读取功能,可以分钟级地将这两条数据流进行拼接,得到乘客-司机的匹配数据。我认为事务支持是hudi中最核心的部分,因为数据的更新删除都强依赖事务的能力,传统数仓中只提供insert语义并且文件只能追加,对事务保障的需求会弱很多,最多就是读到了不完整的数据(写入分区数据后还发生append)。
2023-08-24 22:30:30
20
原创 StringBuilder类用法解析
(5)它是一个线程不安全的,但是速度上有:StringBuilder(可变,线程不安全) > StringBuffer(可变,线程安全) > String(不可变,安全)。public StringBuilder append(boolean b) { // 这里的入参还可以替换为char,int,float,long,double。(6)具有天然的增删改查方法如append(),insert(),deletecharAt(),delete(),reverse(),replace()等。
2023-08-24 22:29:36
24
原创 模板方法中的线程安全问题
业务数据和excel 逻辑 解耦让data 可以 在service 层之间set进来这样excel的相关类不用添加到 spring 容器中/*** 写入数据*//*** 获取当前类的sheet对象* @return sheet对象*//*** 设置sheet对象* @param sheet sheet对象*//*** 获取所属的excel对象* @return excel对象*//*** 设置excel对象。
2023-08-24 22:28:58
12
原创 背包问题基础模型全解
我们发现两个式子很像,不过,f[i][j−v[i]] 多了一项 f[i−1][j−(s[i]+1)w[i]]+s[i]×w[i]) ,我们不可以通过前 n 个数的最大值和最后一个数,求出前 n−1 个数的最大值,所以这样的方法是不可行的。于是我们就可以将 f[i][j−v[i]] 加上 w[i] 转化成 f[i−1][j−v[i]]+w[i],f[i−1][j−2×v[i]]+2×w[i],...由于下标不能是负数,所以上述转移方程要求 j≥w[i]当 j
2023-08-16 19:17:46
31
1
原创 背包问题变式总结
我们可以发现可以同时解决两个问题,那么想要这个特性运用的最划算,那么肯定是需要左脑和右脑处理的时间的差值最小,那么这个问题就转换成了平分子集问题,不过需要注意的是,这里求的是总时间,因为左脑和右脑只能处理同一科,所以如果左脑处理完了,左脑还得等右脑,所以需要取一个最大值,最后将每次取得的结果累加就行了。而在负数中,j
2023-08-16 19:17:02
18
原创 从Element日期组件源码中学到的两个工具方法
最近翻到 ElementUI 的日期组件源码,看到一些处理日期的工具方法,挺有意思,平常没有注意到,特此记录下来。
2023-08-16 19:16:07
19
原创 go语言vscode集成开发环境搭建
在go语言1.13时代之后官方语言服务器gopls已经逐步替代了许多其他的go语言工具,另外我觉得Visual Studio Code是目前免费go语言集成开发工具做的最好的,由于它对官方语言服务器的支持,为此Visual Studio Code在go语言编程时支持go mod依赖,代码补全,语义检查等等方面支持都很好。搭建go语言环境,除了要搭建go语言的编译环境,还要搭建go语言的集成开发环境,为此需要选择go语言的集成开发环境的工具,这就是“工于善其事,必先利其器”,可以大大加快自己的开发进度。
2023-08-16 19:13:47
22
原创 Redis 持久化及集群架构
Redis 持久化及集群架构是构建可靠高效的数据存储解决方案的重要组成部分。通过持久化机制,我们可以将内存中的数据写入磁盘,实现数据的长期存储和恢复。而通过集群架构,我们可以搭建高可用性、故障自动转移的系统,提高系统的稳定性和扩展能力。在应用中,根据实际需求选择合适的持久化方式和集群架构非常重要。同时,我们也要注意性能优化和安全方面的考虑,避免单点故障和数据丢失等问题。以 Redis 为基础,利用持久化和集群架构,我们能够构建出高效、可靠的数据存储解决方案。
2023-08-16 19:12:24
7
原创 Luckysheet:一个纯前端的excel在线表格
最近因为项目要求,需要在页面上添加一个在线编辑excel的功能,因此只能在网上找有没有直接用的插件,最后很幸运的是幸好找到了一个 ----luckysheet.这个是从luckysheet官网上找的图片,先看下能用插件做那些效果。官方文档很详细,具体使用很简单,差不多跟Echarts 一样,配置数据结构,然后插件初始化即可。
2023-08-16 19:11:42
240
原创 形象谈JVM-第二章-认识编译器
一个高级的翻译将英文作品翻译成中文作品时,绝不会逐字死板的去翻译,而是会在不影响原意的前提下加以文采的修饰,以达到读者更好更快的理解,编译器的优化类似,在编译期,在不影响代码逻辑的前提下,会将复杂优化成简洁的,将缓慢的优化成快速的等等,为了程序更好更快(非绝对)的执行。JDK 5之后,Java语言提供了对注解的支持,注解在设计上原本是与普通的Java代码一样,都只会在程序运行期间发挥作用的,因此在这个阶段会对注解进行分析,根据注解的作用将其还原成具体的指令集。(在后面的章节中我们会讲解更多的优化策略)
2023-08-16 19:10:07
7
原创 形象谈JVM-第一章-认识JVM
比如在linux系统,java文件被javac编译器翻译成字节码文件(class文件),jvm将字节码文件翻译成linux能够识别并执行的机器码文件,这样java程序便能够被运行起来了。若是在windows系统,JRuby代码被jrubyc编译器翻译成字节码文件,jvm将字节码文件翻译成windows能够识别并执行的机器码文件,这样JRuby程序便能够被运行起来了。虚拟机的职责是将字节码翻译成对应系统能够识别并执行的机器码,对jvm的历史不做过多介绍,感兴趣的同学可以去自行搜索。
2023-08-16 19:09:28
8
原创 Java基础实现加油站圈存机系统
已经了解了圈存业务大致内容。现在使用Java基础课程所学习的知识,模拟开发一下这个圈存系统的功能。因为是模拟开发,所以有些细节会相应的做些调整。
2023-08-16 19:08:44
18
原创 python 单例模式
无论是创建了新的实例还是直接返回已存在的实例,都会将实例返回。self在实例方法中使用,用于引用实例的属性或调用实例的方法。cls 在类方法中使用,用于引用类的属性或调用类的方法。它通常用于在类方法内部访问类级别的属性或创建新的类实例。方法的作用是创建并返回一个类的实例。单例模式是一种设计模式,目的是确保一个类只有一个实例,并提供一个全局访问点来获取该实例。是一个类变量,所以它在类的所有实例之间是共享的,保证了只有一个实例被创建和返回。静态实例变量:在类中定义一个静态变量,用来保存类的唯一实例。
2023-08-15 11:18:27
23
原创 从内置功能中获取最高性能
有很多工具和库可以帮助我们编写更高效的Python。但是,在我们深入研究提高性能的所有外部选项之前,让我们先仔细看看如何编写在计算和IO性能方面都更高效的纯 Python代码。事实上,许多Python性能问题(当然不是全部)都可以通过更加注意Python的限制和能力来解决。为了展示Python自身用于提高性能的工具,让我们将它们用于一个假设但现实的问题。假设您是一名数据工程师,负责准备对全球气候数据进行分析。这些数据将基于美国国家海洋和大气管理局的综合地表数据库。
2023-08-15 09:38:36
19
1
原创 python多进程编程常用到的方法
def run(self): #start()时,run自动调用,而且此处只能定义为run。print("%s曾经是好人"%self.name)p.start() #将Process当作父类,并且自定义一个函数。
2023-08-15 09:35:04
18
原创 简单的用Python获取一下视频弹幕,新手练手实战项目,非常简单!
昨天看到个视频,弹幕挺有意思的,于是想着用Python给他全部扒下来。代码非常简单,接下来我们看看 具体操作。
2023-08-15 09:33:17
20
原创 python带参数装饰器的两种写法
装饰器是 Python 中非常有用的语法特性,可以用于包装或者修改函数的行为。有时候我们希望给装饰器添加参数,以便于在装饰器内部使用,那么这时候就需要使用带参数的装饰器。
2023-08-15 09:31:07
9
原创 使用PEfile分析PE文件
PeFile模块是Python中一个强大的便携式第三方PE格式分析工具,用于解析和处理Windows可执行文件。该模块提供了一系列的API接口,使得用户可以通过Python脚本来读取和分析PE文件的结构,包括文件头、节表、导入表、导出表、资源表、重定位表等等。此外,PEfile模块还可以帮助用户进行一些恶意代码分析,比如提取样本中的字符串、获取函数列表、重构导入表、反混淆等等。PEfile模块是Python中处理PE文件的重要工具之一,广泛应用于二进制分析、安全研究和软件逆向工程等领域。
2023-08-15 09:28:36
57
原创 在Python中使用LooseVersion进行软件版本号比对
在软件版本快速迭代的过程中,经常会遇到一些接口变化问题。而如果需要兼容旧版本的话,就需要使用到版本判断的方法。判断清楚版本号属于哪一个区间,再对不同的版本号区间采取不同的算法或者执行策略。Python中预先内置的LooseVersion就是一个很好的版本号比对工具,不仅仅可以对相同位数或者相同类型的版本号进行比对,还可以进行错位的版本号比对。
2023-08-15 09:24:47
20
原创 3.0 Python 迭代器与生成器
当我们需要处理一个大量的数据集合时,一次性将其全部读入内存并处理可能会导致内存溢出。此时,我们可以采用迭代器Iterator和生成器Generator的方法,逐个地处理数据,从而避免内存溢出的问题。迭代器是一个可以逐个访问元素的对象,它实现了python的迭代协议,即实现了__iter__()和__next__()方法。通过调用__next__()方法,我们可以逐个访问迭代器中的元素,直到所有元素都被访问完毕,此时再次调用__next__()方法会引发异常。
2023-08-15 09:22:01
11
原创 Python模块学习:subprocess模块详解
args: 要执行的shell命令,默认应该是一个字符串序列,如[‘df’, ‘-Th’]或(‘df’, ‘-Th’),也可以是一个字符串,如’df -Th’,但是此时需要把shell参数的值置为True。shell: 如果shell为True,那么指定的命令将通过shell执行。如果我们需要访问某些shell的特性,如管道、文件名通配符、环境变量扩展功能,这将是非常有用的。
2023-08-15 09:17:17
32
原创 「学习笔记」随机数据
虽然比较慢,但已经足够用了,它会随机生成一个范围在 [0,231−1][0,231−1] 中的一个数。其优点是随机数质量高(一个表现为,出现循环的周期更长;其他方面也都至少不逊于。来设置、更改随机种子,当然,不初始化也是可以的,只是同一个程序用相同的。、相同的机器、相同的编译器下,随机的结果将会是一样的。是一个随机数生成器类,效用同。我们日常用的随机函数为。
2023-08-12 14:07:02
26
1
原创 .NET对象的内存布局
在.NET中,理解对象的内存布局是非常重要的,这将帮助我们更好地理解.NET的运行机制和优化代码,本文将介绍.NET中的对象内存布局。.NET中的数据类型主要分为两类,值类型和引用类型。值类型包括了基本类型(如int、bool、double、char等)、枚举类型(enum)、结构体类型(struct),它们直接存储值。引用类型则包括了类(class)、接口(interface)、委托(delegate)、数组(array)等,它们存储的是值的引用(数据在内存中的地址)。
2023-08-12 14:06:25
19
原创 pentaho(keetle)数据同步实践
pentaho是一款开源ETL工具,纯java编写的C/S模式的工具,可绿色免安装,开箱即用。支持Windows、macOS、Linux平台。pentaho有2个核心设计,即转换和作业。转换是一个包含输入、逻辑处理、输出的完整过程,即ETL。作业是一个提供定时执行转换的机制,即定时服务调度。pentahopentaho由主要四部分组成。
2023-08-12 14:05:17
33
原创 在Python中使用LooseVersion进行软件版本号比对
在软件版本快速迭代的过程中,经常会遇到一些接口变化问题。而如果需要兼容旧版本的话,就需要使用到版本判断的方法。判断清楚版本号属于哪一个区间,再对不同的版本号区间采取不同的算法或者执行策略。Python中预先内置的LooseVersion就是一个很好的版本号比对工具,不仅仅可以对相同位数或者相同类型的版本号进行比对,还可以进行错位的版本号比对。
2023-08-12 13:29:46
28
原创 从源码角度了解Vue生命周期
挂载的意思是指Vue.js将其实例挂载到DOM元素上,也就是用编译后的模板代码替换指定DOM元素的内部内容,实现模板内容的渲染。new Vue()到created的阶段是初始化阶段,该阶段会初始化属性props、事件events和响应式数据data,还有computed、watch、provide和inject。data选项的值是对象类型,它的property会被Vue实例所代理,成为响应式数据,拥有双向改变的特性。//合并构造函数的选项和用户传入的选项并挂载到Vue实例vm的$options选项上。
2023-08-12 13:28:32
3
原创 OpenCVSharp图像入门_给绿幕图片视频加背景
现在网上关于openCV的教程基本都是c++和python,如果是C#方向,可以跟着这两个语言的步骤自己写demo。if (max == p.Item1 && p.Item1 > 30) //BGR,当G最大时且大于30时,可以根据实际调节这个阈值。效果展示:(我是跟着杨神的思路写的这个程序,素材就直接用杨神了,这篇是入门级别,可以看完我这篇再去观摩杨神的)1)识别绿幕函数(一般操作图片是使用指针的,为了更好理解,我们这里先At执行,后面会讲使用指针改进)效果展示:(这是视频的一张截图)
2023-08-12 13:27:47
27
原创 SpringBoot3进阶用法
在这篇内容中再来看看进阶功能的用法;调度任务:在应用中提供一定的轻量级的调度能力,比如方法按指定的定时规则执行,或者异步执行,从而完成相应的代码逻辑;邮件发送:邮件作为消息体系中的渠道,是常用的功能;应用监控:实时或定期监控应用的健康状态,以及各种关键的指标信息;切面编程:通过预编译方式和运行期动态代理实现程序中部分功能统一维护的技术,可以将业务流程中的部分逻辑解耦处理,提升可复用性;定义一个方法级的注解;/*** 模块描述*//*** 其他信息*/
2023-08-11 22:01:19
21
原创 微服务项目使用RabbitMQ
很久未用RabbitMQ了,根据网上的Demo,大多数是一个服务包含所有的生产者和消费者和配置,当自己去搭建服务的时候,还需要一些思考各种包的划分.无法无脑CV大法,所以,下文,我根据实际项目抽离出一个比较完整的小Demo演示微服务项目使用RabbitMQ.注意:这个小Demo并没有做消息的可靠性相关操作!
2023-08-11 21:54:03
22
原创 银河麒麟等 Linux系统 安装 .net 5,net 6及更高版本的方法
第二步下载对应的SDK, .net sdk 下载地址 https://dotnet.microsoft.com/zh-cn/download/dotnet。可以编辑 shell 配置文件来永久添加命令。存在多个不同的 shell 可用于 Linux,并且每个 shell 都有不同的配置文件。进入下载页面,这里版本一定要选对。我第一次选了32 位的安装后报错。第三步:下载完成后,再linux 服务器 上进入到文件所在目录,建议全英文路径。编辑 shell 的相应源文件,并将。然后依次输入以下命令。
2023-08-11 21:53:16
338
原创 编织人工智能:机器学习发展历史与关键技术全解析
机器学习是一门研究计算机如何利用经验改善性能的科学。它的主要目的是通过从数据中学习模式并作出预测或决策。在技术层面上,机器学习可以分为监督学习、无监督学习、半监督学习和强化学习等。机器学习作为人工智能的关键部分,在过去的几十年中取得了显著的进展。从最初的简单算法,到复杂的深度学习模型,再到当前的跨学科整合和伦理考虑,机器学习不断推动科技的前沿,影响着我们的生活方式和工作方式。
2023-08-11 21:52:38
14
用于存放整体大模型业务所有的共享材料.rar
2023-09-02
一份有态度的AI学习资料.rar
2023-09-02
关注AI模型上线、模型部署.rar
2023-09-02
大模型系统论文与教程.rar
2023-09-02
大模型基础技术资料集合.rar
2023-09-02
大模型安全研究进展,包括调研数据集、论文、算法、 每日进展等等.rar
2023-09-02
AI大语言模型架构图.rar
2023-09-02
ai大模型学习和实践.rar
2023-09-02
这是为2023年电赛信号题所做的一些准备.rar
2023-08-24
电赛做题记录大全.rar
2023-08-24
电赛资料分享,20年21年题目和电源板,rt1064主控板.rar
2023-08-24
电赛资料保姆级别.rar
2023-08-24
电赛视觉识别相关代码.rar
2023-08-24
2023电赛红色激光e题只用了一天写的比较粗糙.rar
2023-08-24
2022年电赛WIFI及蓝牙准备.rar
2023-08-24
2019年Ti杯电赛D题.rar
2023-08-24
专业选修课(人工智能)作业.rar
2023-08-08
互联网Java面试训练营.rar
2023-08-07
这是一个使用 java 实现俄罗斯方块的小项目.rar
2023-08-07
用于存放java源码和Thinking of Java的资源.rar
2023-08-07
一个小的java Demo , 非常适合Java初学者阅读.rar
2023-08-07
学习Java基本语法的仓库 存放学习Java的md文件和Java代码.rar
2023-08-07
新一代Java开发工具 可视化编辑 测试运维自动化.rar
2023-08-07
小而全的Java工具类库.rar
2023-08-07
小白学习Java,记录Java基础.rar
2023-08-07
微软翻译api的java实现.rar
2023-08-07
通过学习Java系列的技术完成应用软件的开发,.rar
2023-08-07
神州数码认证客户端java版本 基于libpcap jpcap 基于吉首大学校园网认证.rar
2023-08-07
全能第三方支付对接Java开发工具包.rar
2023-08-07
强力 Java 爬虫,列表分页、详细页分页、ajax、微内核高扩展、配置灵活.rar
2023-08-07
励志做Java届最好用的文档工具.rar
2023-08-07
快速、简洁、解决大文件内存溢出的java处理Excel工具 .rar
2023-08-07
记录所有有关java的学习笔记.rar
2023-08-07
基于Spring Boot 和 WxJava 实现的Java后端.rar
2023-08-07
基于Java实现的Dijkstra最短路径寻径的实现.rar
2023-08-07
基础的java学习,学习过程的蜗牛,不断前行.rar
2023-08-07
互联网 Java 工程师进阶知识完全扫盲.rar
2023-08-07
该仓库为Java进阶部分课堂同步代码.rar
2023-08-07
深度学习人脸识别引擎JAVA.rar
2023-08-06
存放一些收集的 Java 面试八股文.rar
2023-08-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人