自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixin_55010563的博客

希望可以帮到你

  • 博客(2138)
  • 收藏
  • 关注

原创 HTTPS 的通信加解密过程,证书为什么更安全?

证书中包含了服务器的公钥和其他身份信息。6.客户端和服务器使用对称密钥进行加密通信:客户端和服务器通过协商好的对称密钥进行加密和解密,这意味着数据传输过程中使用相同的密钥进行加密和解密,保证了数据传输的机密性和完整性。证书的使用能够确保服务器的身份和通信的安全性,增加了整个通信过程的安全性和可信度。4.客户端生成密钥:如果证书有效,客户端会生成一个用于对称加密通信的随机密钥,并使用服务器的公钥进行加密。5.服务器解密消息:服务器收到客户端发来的加密密钥后,使用自己的私钥对其进行解密,获取对称加密的密钥。

2023-12-13 14:02:52 516

原创 SQL语句(一)—— DDL

char 表示定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关,例如char(10)。通过这条指令,主要是用来查看建表语句的,而有部分参数我们在创建表的时候,并未指定也会查询到,因为这部分是数据库的默认值,如:存储引擎、字符集等。在上述的建表语句中,我们在指定字段的数据类型时,用到了int,varchar,那么在MySQL中除了以上的数据类型,还有哪些常见的数据类型呢?我们要操作某一个数据库下的表时,就需要通过该指令,切换到对应的数据库下,否则是不能操作的。用来对数据库表中的数据进行增删改。

2025-04-04 07:05:32 63

原创 探秘Transformer系列之(22)--- LoRA

探秘Transformer系列之(22)--- LoRA 从零开始解析Transformer,目标是:(1) 解析Transformer如何运作,以及为何如此运作,让新同学可以入门;(2) 力争融入一些比较新的或者有特色的论文或者理念,让老鸟也可以有所收获。 探秘Transformer系列之(22)--- LoRA目录探秘Transformer系列之(22)--- LoRA0x00 概述0x01 背景知识1.1 微调1.2 PEFT1.3 秩1.4 SVD分解0x02 LoRA2.1 定义2.1.1 训练2

2025-04-04 07:04:59 540

原创 Dify开发必备:分享8个官方文档不曾解释的关键技巧

通过跟踪dify的源代码,看到dify是通过读取docker/.env.example文件中的dify_config.FILES_URL配置来拼接这个前缀,全局搜索FILES_URL,看到在docker/.env文件中这个配置项默认是空,于是将其修改为我dify的访问地址:http://192.168.10.14(如果你的dify使用的不是80端口,记得在ip后面加上':端口号')。返回字典列表:{"result":[{"a":"aa"},{"b":123}]}→选择Array[Object]类型。

2025-04-04 07:03:50 165

原创 ShadowSql之功能简介

从概念上讲TableView分为6种,分别为Table、AliasTable、MultiTable(及JoinTable)、GroupByTable、GroupByAliasTable、GroupByMulti6种。以上功能还包含子功能,有Table、AliasTable、DB、TableView、Column(Field)、Query(SqlQuery)、Cursor、SelectField和SubQuery等。AliasTable很重要,在联表和子查询的时候都需要用到,用来区分不同表的不同字段。

2025-04-04 07:03:17 99

原创 zk基础—4.zk实现分布式功能

如果有大量的客户端在等待锁的释放,那么不仅会出现大量的Watcher通知,还会出现大量的获取"/shared_lock"的子节点列表的请求,但最后大部分客户端都会判断出自己并非是序号最小的节点。方法三:基于zk的临时子节点来实现心跳检测,让不同的机器都在zk的一个指定节点下创建临时子节点,不同机器间可以根据这个临时子节点来判断对应的客户端是否存活。同时其他没有成功创建节点的机器会在"/master"节点上注册Watcher监听,一旦当前Master机器挂了,那么其他机器就会重新往zk上创建临时节点。

2025-04-04 07:02:45 83

原创 感觉程序员要被 AI 淘汰了?学什么才有机会?

有了 AI 后,很多图例不用自己手绘了,我可以直接把作图的信息提供给豆包或者其他 AI,让它生成 Mermaid 文本作图语法,接下来就可以直接下载图片、或者把生成的代码放到 Mermaid 渲染工具中,就搞定了,非常方便。打个比方,我们有多个 AI 智能体,分别负责生成文字、生成图片、组合文字和图片,那么 LangGraph 像是负责人,可以安排这些智能体的工作顺序,一起搞大事。由于 AI 的脑容量不大,能接受的上下文是有限的,随着你的项目信息量不断增大,它有可能忘记之前的信息,导致生成的代码错误。

2025-04-04 07:02:10 387

原创 「硬核实战」回调函数到底是个啥?一文带你从原理到实战彻底掌握C/C++回调函数

作为一个在生产环境中与回调函数打了多年交道的开发者,今天我想分享一些真正实用的经验,带你揭开回调函数的神秘面纱,从理论到实战全方位掌握这个强大而常见的编程技巧。就像我们今天讲的回调函数,表面上只是"函数指针作为参数"这么简单,深入了解却发现它涉及控制反转、异步编程等高级概念,实战中还有各种坑需要避开。std::cout << "Lambda被调用,值是: " << value << std::endl;std::cout << "捕获到异常: " << e.what() << std::endl;

2025-04-04 07:01:37 103

原创 AI团队比单打独斗强!CrewAI多智能体协作系统开发踩坑全解析

对于这种工作流的鲁棒性问题,我调研到有一个同类agent框架smolagents的处理方法是把tool执行阶段的结果(包括报错)都记录到日志中,LLM读完日志再决定是否重试或者循环执行,直到final_answer工具(框架内置的工具,用来决定是否给出最终答案)被调用,最后agent的run()才返回它的参数,这样就能避免Agent在无法跳出程序错误的时候最后强行给出一个虚假的答案。在实际开发中,我们发现定义清晰的角色、明确的任务目标和精准的工具设计,是构建高效智能体系统的三大关键。(3)异常处理更完善;

2025-04-04 07:01:03 254

原创 线性判别分析(LDA):降维与分类的完美结合

简单来说,线性判别分析(LDA)旨在找到一个线性组合,将数据投影到低维空间,使得不同类别的数据尽可能地分开,同一类别的数据尽可能地紧凑。首先选择scikit-learn库中经典的鸢尾花数据集,这个数据集中每个数据有4个维度:花瓣的长度和宽度,花萼的长度和宽度。LDA在处理高维数据时具有显著优势,它通过将数据投影到低维空间,同时保持类别之间的分离度,来实现降维。但是,通过可视化降维后的数据,可以看到不同类别的数据点在新的二维空间中仍然保持了良好的分离度。

2025-04-03 07:05:28 161

原创 SearXNG私有化部署与Dify集成

SearXNG 是一个免费的互联网元搜索引擎,它聚合了来自各种搜索服务和数据库的结果,但摆脱了隐私追踪 —— 用户行为既不会被引擎跟踪也不会被分析。- json,扩展数据返回格式,增加json,否则设置SearXNG插件,添加访问search接口会报错403。limiter: false,禁用请求限制器,否则可能触发 too many requests 的问题。简单来说,如果你的AI模型没有联网功能,可以通过这个插件,来实现联网功能。使用结构化语言,逐步思考。登录到dify,点击工具,搜索SearXNG。

2025-04-03 07:04:55 247

原创 Web前端入门第 24 问:CSS 单位

相对于当前元素的字体大小,1em等于当前元素的字体大小。如果父元素有font-size属性,则子元素的em值是根据父元素的字体大小计算的。相对于根元素(html元素)的字体大小,1rem等于根元素的字体大小。css 单位根据其作用分为几大类:绝对单位、相对单位、视口单位、角度单位、时间单位、网格单位、频率单位、分辨率单位。相对于当前元素的字体宽度,1ch = 当前字体中 "0" 字符的宽度,适合文本排版对齐。相对于父元素的尺寸,例如width: 50%表示元素宽度为父元素宽度的50%。

2025-04-03 07:04:22 213

原创 当职场成战场:降职、阴谋与一场硬碰硬的抗争

商场如战场,同理,职场也如战场。在这个事情中,他曾经以为关系还不错(至少别人也都这么觉得,而且这个人是他自己面试进来的)的同事,在被领导针对的时候会帮帮他,但是,这个人是第一个出来“指证”他能力不行、态度不行、上班只知道玩手机的人。不过没想到的是,公司那边的几个人几乎全程半低着头没说啥话,只是委婉的说出公司确实某些行为不太合理,某些领导处理事情的方式有问题,公司已经针对你这个是组织了多次的复盘、总结,甚至某些人写了检讨等,能不能看在公司的面子,看在仲裁员的面子,这个事情就调解了,到此为止了。

2025-04-03 07:03:50 141

原创 Graph4Stream:基于图的流计算加速

可以看到在一跳、两跳场景中,Flink的性能要好于GeaFlow,这是因为在一跳、两跳场景中参与join计算的数据量比较小,join需要遍历的左表和右表都很小,遍历本身耗时短,而且Flink的计算框架可以缓存join的历史计算结果。流图是图在流场景中的应用,他依据数据流对图的更新将图分成历史图和增量图两个部分。通过结合图计算与流计算,蚂蚁图计算开源的GeaFlow引擎解决了传统流计算引擎在大数据关联关系计算中的性能瓶颈,尤其在多跳场景下性能显著优于Flink,对于实时知识图谱的构建,提供了基础技术底座。

2025-04-03 07:03:17 425

原创 vue3第二次传递数据方法无法获取到最新的值

更改数据</button><button type="button" @click="updateHandler">更改数据</button><button type="button" @click="updateHandler">更改数据

2025-04-03 07:02:44 290

原创 帮客户解决基于surging的物流速运网关内存泄漏问题

还有多协议适配(TCP,MQTT,UDP,CoAP,HTTP,Grpc,websocket,rtmp,httpflv,webservice,等),通过灵活多样的配置适配能够接入不同厂家不同协议等设备。有surging企业客户找到我,系统已经在线上环境运行,在使用过程中碰到内存不能释放的问题,每次都要和客户打招呼进行重启造成很坏的影响,问能不能彻底解决掉,然后我打包票可以解决,解决不了不收钱,通过以上分析就可以得出网关在处理Rpc远程调用的时候,未收到及时的返回,造成消息积。二、dump文件分析。

2025-04-03 07:02:11 181

原创 ShadowSql之.net sql拼写神器

跨平台、可扩展、支持多种数据库,可以自定义数据库方言,支持net7.0;Sql模式也支持逻辑对象,从这个层面上说sql模式功能更全,sql模式查询对象就是包含一个复合逻辑对象+Sql查询对象。以上功能逻辑模式大多都支持,逻辑模式是按And、Or来查询的。sql操作用的最多也是最复杂的就是查询,本工具包含两套查询模式:sql模式和逻辑模式。本工具很小、不依赖第三方包,不使用反射,应该支持AOT原生编译,不过我还没测试。逻辑模式不支持按原生sql查询,当然封装为逻辑对象就可以了,但不推荐这么做。

2025-04-03 07:01:38 197

原创 【解决方案】多租户技术架构设计入门(二)

作为入门系列的第二篇,本文主要分享的是**在业务系统的应用内部如何对多数据源进行切换**,而底层的数据库硬件资源管理这部分会简单带过(一般由运维团队来负责搭建)。对于整个多租户技术架构的设计而言,笔者认为最关键的就是 3 点:底层数据隔离模式(策略) + 统一的用户&权限体系(认证鉴权) + 业务层调用时的行为隔离(请求拦截)。在单租户的时候,每个系统只为一个客户服务,我们只需要在每个业务系统的配置文件上写一个数据库连接,就可以确保该系统的数据会进到这个对应的库表里。

2025-04-03 07:01:05 152

原创 langchain0.3教程:聊天机器人进阶之方法调用

最后将message列表一起发送给大模型,让大模型给出答案。当大模型遇到用户提出的问题时,会先思考是否应该调用工具解决问题,如果需要调用工具,和普通消息不同,这种情况下会返回“function_call”类型的消息,请求方根据返回结果调用对应的工具得到工具输出,然后将之前的信息加上工具输出的信息一起发送给大模型,让大模型整合起来综合判断给出结果。简单来说,Function calling让大语言模型拥有了调用外部接口的能力,使用这种能力,大模型能做一些比如实时获取天气信息、发送邮件等和现实世界交互的事情。

2025-04-02 07:05:36 557

原创 想让你多爱自己一些的开源计时器

他精心设计了底层实现,既确保了轻量级的特性,又提供了丰富的视觉效果和良好的交互体验。最初,作者只是想找到一种方式,来对抗自己“停不下来”的工作节奏,提醒自己定时离开电脑,稍作休息,以实现工作和健康的平衡。Catime 是一款轻巧易用的 Windows 计时工具,集时钟、倒计时和番茄时钟于一体,支持透明界面和丰富的自定义选项,让你的时间管理更简单、更高效。Catime 作者(vladelaina)是一名普通的大二学生,因为热爱开源,他牺牲了玩耍的时间开发 Catime 开源计时器,并为此倾注了全部热爱。

2025-04-02 07:05:03 406

原创 Cursor预测程序员行业倒计时:CTO应做好50%裁员计划

例如,在 Cursor ⽣成 UI 代码时,可能会遗漏复杂交互的细节,导致实际使⽤时需要⼤量修改;不出所料,大家一致认为是Cursor,原因很简单:开源生态的繁荣为代码领域的AI突破提供了关键燃料,而程序员群体对开源的“狂热”在客观上创造了大量高质量语料库。上图是Cursor完成后⽣成的readme⽂件,项⽬可以正常启动,我阅读了⼤部分代码,都是正常可运⾏,但是测试⽤例并没有⽣成。综上所述,在完整的前端开发流程中,Cursor 能真正带来显著提效的环节主要是业务逻辑编码实现,在其他环节的作⽤⾮常受限。

2025-04-02 07:04:30 300

原创 虚拟电商-话费充值业务(二)话费充值对接供应商模块开发

步骤1:在chongba_recharge_supplier模块下创建包:com.chongba.supplier.inf,在该包下创建充吧系统对接供应商接口:SupplierService,接口中定义一个对接方法:void recharge(RechargeRequest rechargeRequest);chongba_recharge_supplier监听到支付成功消息之后,接收到的消息:RechargeRequest,具体对接的不直接写在监听类中,单独定义一个对接供应商服务接口。

2025-04-02 07:03:57 727

原创 C# 窗口过程消息处理 WndProc

需要附加消息处理过程的窗口句柄</param>/// <param name="handle">需要移除消息处理过程的窗口句柄附加消息处理过程到窗口

2025-04-02 07:03:24 799

原创 HttpClient使用方法总结及工具类封装

params.add(new BasicNameValuePair("name", "新名字"));params.add(new BasicNameValuePair("name", "新名字"));String jsonBody = "{\"id\":\"1\",\"name\":新名字}";String jsonBody = "{\"id\":\"1\",\"name\":新名字}";GET请求、PUT请求、DELETE请求添加请求头的方法同上。* @param response HTTP响应对象。

2025-04-02 07:02:51 495

原创 MCP (Model Context Protocol)初体验:企业数据与大模型融合初探

从记录可以看到,大模型非常聪明的根据已有的工具,做了系统性的探索,首先执行初步查询,发现查询名称可能不准确,使用list_tables命令查看可用表,识别可能包含"customer"信息的表,检查其他可能包含客户信息的表,并最终发现"CrmDemo"数据库中的"Customers"表,并识别CustomerType可能用于识别VIP客户。模型的知识通常止于训练数据的截止日期,对于企业内部的数据库、文档仓库等信息孤岛则完全不了解​,即使模型具备一定的上下文窗口,也无法直接访问动态更新的业务数据。

2025-04-02 07:02:18 414

原创 小了 60,500 倍,但更强;AI 的“深度诅咒”

在 LLM 的情况下,这个训练过程叫做“预训练”,模型会被暴露在互联网级别的大数据集上,它要学会如何模仿这些内容(当然我们也会加些小技巧,让模型在推理阶段生成相似的内容,而不是一模一样的句子;再者,前面说过了,我们不希望 AI 是模仿,我们希望它“跳出框框”,或者更准确地说,在记忆不起作用的时候,探索出不同的解决方式。基本上我在讲的就是为什么普通的非推理类 LLM 在推理任务上很拉胯——它们不是被训练来“推理”的,而是训练来“复读”的,所以它们只能“执行”它们记住的任务,本质上就是死记硬背而不是逻辑思考。

2025-04-02 07:01:43 344

原创 抽离BlazorWebview中的.Net与Javascript的互操作库

做这个的目的是想使用 Blazor 中的 Javascript 与 C#中的互操作,但是又不需要加载 Blazor 整个类库,另外 BlazorWebView 组件没有支持直接通过 Http 协议加载 web 页面,调试的时候需要先把后端接口写好,然后前端打包,然后一起调试,感觉很麻烦,因此想能不能把互操作这部分功能单独抽离出来。开门见山,借助 Microsoft.JSInterop 和前端的@microsoft/dotnet-js-interop 包,便可实现 Javascript和C#的互操作。

2025-04-02 07:01:11 574

原创 【Guava】BiMap&Multimap&Multiset

Map 可以实现 key -> value 的映射,如果想要 value -> key 的映射,就需要定义两个 Map,并且同步更新,很不优雅。// BiEntry是HashBiMap中为的Map.Entry接口的实现类,这里定义了两个BiEntry,一个是实现使用Key找到value的,另一个是实现使用value找到key的。HashMap做的是唯一key值对应的value可以不唯一,而Bimap做的是唯一key值,value值也要唯一,方便从key找到value,从value找到key。

2025-04-02 07:00:39 675

原创 golang的条件编译

有这些后缀的文件只会在为特定的硬件平台编译程序时才会生效并加入编译过程。所以第一种方案只适合那种平台间差异巨大的代码,一个典型的例子是go自己的runtime的代码,因为协程调度需要很多操作系统甚至硬件平台的功能做辅助,因此runtime在每个操作系统上出了自己的api之外差异很大,因此使用文件名后缀的形式分成多个文件维护是比较合适的。写c/c++或者rust的开发者应该对条件编译不陌生,条件编译顾名思义就是在编译时让代码中的一部分生效或者失效,从而控制编译时的代码执行路径,进而影响编译出来的程序的行为。

2025-04-01 07:05:26 722

原创 SQL SERVER日常运维巡检系列之-实例级参数

带有工作负荷的第一个实例通常分配所有的内存。2.并行开销的阀值(cost threshold for parallelism) 仅当运行同一查询的串行计划的估计开销高于在“并行的开销阈值”中设置的值时,SQL Server 才创建和运行该查询的并行计划。这种方法的缺点是:当启动新的实例(或任何其他进程)时,运行的实例可能会花费一些时间来释放内存,如果实例必须将修改后的页写回到数据库中来释放内存,则花费的时间可能会更长。在某些情况下,即使查询的开销计划小于当前“并行的开销阈值”的值,也有可能选择并行计划。

2025-04-01 07:04:53 399

原创 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析

现在小编已经脱离了一线开发岗位,在带领团队的过程中,发现了很多的问题,究其原因,更多的是开发思维的问题。的,所以需要把变化的部分划分出来,使之可以在继承框架下既能重用也能独立变化,而不引发较大的影响,这就是继承的真正价值 —— 它帮助开发者在抽象与细节之间找到平衡,通过自下而上和自下而上的设计方法,引导我们从在局部与整体之间逐步完善对问题的认识。比如看到狗、猫、鸟,然后观察它们的行为,随后,我们总结它们有一些共同点,比如都会吃和睡觉,于是抽象出“动物”这个概念,也知道了动物都需要吃和睡。

2025-04-01 07:04:20 786

原创 tesseract引擎RVV代码学习笔记

1这里表示进入了循环,用RVV的好处就是循环过程中步长会自动调整,比如说长度为18,如果每次步长为8,传统的SIMD需要8+8+3,8是可以用向量指令集去实现,但是3这里就需要采用普通for循环手写,但是RVV会自动忽略掉这个过程,不用担心越界,只需关注循环内部本身即可,因为硬件会根据情况自动调整为向量步长为3。另外,这里vsetvli加载了num操作数到t0寄存器,寄存器存的是向量步长,e8代表元素大小,相当于int8类型,因为函数参数传入的也是int8 *的指针。

2025-04-01 07:03:47 349

原创 上周热点回顾(3.24-3.30)

用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp智能体框架开发语音交互 (绿荫阿广)· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想 (AI·NET极客圈)· 编程神器Trae:当我用上后,才知道自己的创造力被低估了多少 (AI粉嫩特攻队)· ThreeJs-16智慧城市项目(重磅以及未来发展ai) (Heymar-10)· Vite CVE-2025-30208 安全漏洞 (日升_rs)· 开发的设计和重构,为开发效率服务 (伍华聪)

2025-04-01 07:03:15 147

原创 Spring AI与DeepSeek实战三:打造企业知识库

5. {"type":"api","name":"收益明细2025","topic":"综合政务","industry":"信息传输、软件和信息技术服务业","remark":"2025年的收益明细信息表"}1. {"type":"api","name":"测试api服务01","topic":"综合政务","industry":"采矿业","remark":"获取采矿明细的API服务"}您是一个数据产品的智能搜索引擎,负责根据用户输入的内容进行精准匹配、模糊匹配和近义词匹配,以搜索相关的数据记录。

2025-04-01 07:02:09 300

原创 面试题:Linux 系统基础 (二)

3、永久设置环境变量: 将 export 命令添加到用户的 ~/.bashrc 或 ~/.profile 文件中,或者对于所有用户到 /etc/environment 或 /etc/profile 文件中。3、文件权限: 包括读(r)、写(w)和执行(x)权限。5、模块依赖关系: 使用modprobe命令自动处理模块依赖关系,例如加载一个模块时自动加载其所依赖的模块。4、使用环境变量: 在脚本或程序中可以通过引用环境变量(如 $VARIABLE_NAME)来使用它们的值。

2025-04-01 07:01:36 699

原创 [SDR] 蓝牙专项教程 —— 从 0 到 1 教小白基于 SDR 编写蓝牙协议栈

https git clone --branch ble_course_1 https://github.com/nbtool/auto_test_tool.git 小白懂 git 但不懂 ssh。[4]. SDR 教程实战(四) —— 利用 GNU Radio + HackRF 手把手深入了解蓝牙协议栈(从电磁波 -> 01数据流 -> 蓝牙数据包)[17]. GNU Radio 系列教程(十七)—— GNU Radio PDU TX 利用三个块实现最小的数据包(帧头+数据+校验)

2025-04-01 07:01:03 205

原创 OpenEuler RISC-V 上跑bitcoin(实战版)

编译出来的 bitcoin 主要有几个命令,bitcoin-cli、bitcoind、bitcoin-util、bitcoin-wallet、bitcoin-tx和test_bitcoin。bitcoin-cli getblockchaininfo(获取当前的区块链信息,每次输出可能不一样,因为区块链信息可能还没有同步完成到本地,另一方面,区块是不断生成的)bitcoind-util 包含了一系列比特币相关的实用工具函数和命令,主要用于处理比特币的基础数据,如地址编码、密钥生成、哈希计算等。

2025-03-31 07:05:44 394

原创 Java的IO模型、Netty原理详解

内核缓冲区到 Socket 缓冲区之间并没有做数据的拷贝,只是一个地址的映射,底层的网卡驱动程序要读取数据并发送到网络上的时候,看似读取的是 Socket 的缓冲区中的数据,其实直接读的是内核缓冲区中的数据。epoll_wait高效体现在它返回的是已经发生事件的文件描述符,而不是遍历所有注册的文件描述符。Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等。少了一次内存的拷贝,CPU 效率就得到的提升。

2025-03-31 07:05:11 733

原创 Netty源码—10.Netty工具之时间轮

通过指针移动来获得每个时间格中的任务列表,然后遍历这个时间格内的双向链表的每个任务并执行,依此循环。Netty的HashedWheelTimer是一个粗略的定时器实现,之所以称为粗略的实现是因为该时间轮并没有严格准时地执行定时任务,而是在每隔一个时间间隔之后的时间节点执行,并执行当前时间节点之前到期的定时任务。//到期一共需要走多少时间格(tick次数),deadline表示当前任务的延迟时间(从时间轮启动时计算),tickDuration表示时间格的时间间隔。

2025-03-31 07:04:39 848

原创 Go语言实现1024终端游戏-不到400行代码

我们使用的数字是 ANSI 转义序列中的颜色代码。在终端中,我们使用 \033[ 开头的转义序列来控制文本的显示效果。使用 go 语言实现的 1024 终端游戏,不到400行代码,代码简洁,以便理解和学习和掌握 go 语言开发.使用当前时间的纳秒数作为种子,可以确保每次运行游戏时都会得到不同的随机序列,使游戏更有趣和不可预测性。所以当我们使用 color = 90 时,就会显示亮灰色文字,这在游戏中用来表示空位(值为0的格子)。0m文本\033[0m")基于 go 语言的跨平台、可移植的终端游戏、包管理。

2025-03-31 07:04:00 230

骚神插件8.5版本,助理元素快速定位,脚本开发

骚神插件8.5版本,助理元素快速定位,脚本开发

2025-04-02

抖音视频关键词采集、视频评论采集

抖音视频关键词采集、视频评论采集

2025-03-28

关键词采集抖音视频信息,根据视频id采集对应视频评论信息支持导出csv.xlsx

关键词采集抖音视频信息,根据视频id采集对应视频评论信息支持导出csv.xlsx

2025-03-27

数据集-途家民宿评论信息

数据集-途家民宿评论信息-数据分析-景点分析等

2025-03-11

心血管预测分析-网站-flask-速随机森林-mysql

管理员:用户管理、操作日志管理、数据集管理与分析、模型监控; 用户:健康数据管理与分析、健康评估、风险预测

2025-02-23

python 大数据分析 招聘历史数据集

采集了多年来各大平台各个时间段多行业多岗位的就业数据

2025-02-02

windows计划任务python脚本调度器工具

## 计划任务调度器工具介绍 **概述:** 计划任务调度器是一款功能强大且易于使用的工具,旨在帮助用户自动化重复性任务。通过该工具,用户可以轻松设置和管理计划任务,例如定时执行脚本、备份数据或发送电子邮件等。 **主要功能:** * **任务设置:** * **脚本文件选择:** 用户可以选择需要执行的脚本文件。 * **任务类型:** 支持多种任务类型,包括每天、每周、每月或自定义间隔执行。 * **执行时间:** 用户可以指定任务的具体执行时间。 * **自定义间隔:** 对于需要频繁执行的任务,用户可以设置自定义间隔时间(以秒为单位)。 * **任务管理:** * **添加任务:** 用户可以添加新的计划任务。 * **启动/停止任务:** 用户可以随时启动或停止已添加的任务。 * **导出日志:** 工具提供日志导出功能,方便用户查看任务执行情况。 * **任务监控:** * **任务名称:** 显示所有已添加任务的名称。 * **执行时间:** 显示每个任务的最近执行时间。

2025-01-15

python打包工具-windows一键打包运行

Python打包工具,支持将Python脚本打包成独立的可执行文件

2025-01-15

游览器插件!快速便捷!!助理数据采集

游览器插件

2024-12-02

python安装包!!快速下载!!!

python安装包!!快速下载!!!

2024-12-02

基于电商平台的订单数据进行深入分析,旨在通过数据挖掘和可视化手段,洞察电商业务的运营状况,识别市场趋势,优化产品策略,并提出针对性的营销策略建议 报告涵盖数据预处理、财务分析、产品分析、市场分析

电商数据分析报告 概述 本报告基于电商平台的订单数据进行深入分析,旨在通过数据挖掘和可视化手段,洞察电商业务的运营状况,识别市场趋势,优化产品策略,并提出针对性的营销策略建议。报告涵盖数据预处理、财务分析、产品分析、市场分析和客户分析五个部分。 数据预处理 本模块旨在对电商订单数据进行预处理,以确保数据的质量和一致性,为后续的分析工作打下坚实的基础。预处理步骤包括数据验证、日期格式处理、缺失值处理、异常值处理、数据标准化以及时间特征的添加。 相关代码: def preprocess_data(data):     # 添加数据验证     assert 'Order Date' in data.columns, "缺少订单日期列"     assert 'Total Amount' in data.columns, "缺少总金额列"     # 处理日期格式     data['Order Date'] = pd.to_datetime(data['Order Date'])     # 处理缺失值     data.fillna({'Shipping Status': '未知

2024-12-02

Java开发腾讯面试重点解析-关键字与语法

内容概要:本文详细解析了 Java 开发中常见的面试题,涵盖了 static 关键字、transient 和 volatile 关键字以及 synchronized 的原理和应用。针对每个关键字,文章不仅介绍了其基本概念,还通过具体代码示例进行了详细说明,包括静态变量、静态方法和静态代码块的使用场景,以及 volatile 保证多线程可见性的机制。最后,讨论了 memory leak(内存泄漏)的原因和解决方法,以及如何实现一个不可变类。 适合人群:具备一定 Java 编程基础的开发人员,尤其是准备腾讯或其他大型互联网公司面试的技术人员。 使用场景及目标:帮助求职者更好地理解和掌握 Java 中重要关键字和机制,提高面试成功率。同时也适用于已经在职但希望巩固基础和优化代码质量的 Java 开发者。 其他说明:本文内容丰富且实用,既有理论讲解也有代码实战,建议读者在阅读过程中动手实践,以便更好地理解和掌握知识点。

2024-11-27

大厂面试必备-深入剖析Java基础之面向对象特性

内容概要:本文深入讲解了Java基础中的面向对象特性,包括封装、继承、多态、抽象等四个核心特性。每个特性都有详细的理论解释和示例代码,帮助读者理解和应用这些概念。此外,文章还比较了Java和C++的主要区别,介绍了final、finally和finalize的区别,重载与重写的区别,反射机制,以及Java的泛型机制及其实现原理。最后,文章详细阐述了Java中值传递与引用传递的区别。 适合人群:初级和中级Java开发者,准备大厂面试的技术人员。 使用场景及目标:① 深入理解Java面向对象的核心特性,提升编程能力和代码质量;② 掌握Java与C++的主要区别,选择合适的语言进行开发;③ 区分final、finally和finalize的作用,理解重载与重写的区别,熟练运用反射和泛型机制;④ 清楚理解Java中值传递与引用传递的差别。 其他说明:本文内容丰富,涵盖多个知识点,建议读者逐个章节学习,结合示例代码实践,以达到更好的学习效果。

2024-11-27

咸鱼关键词多价格采集数据

用于从二手电商平台(如闲鱼)上自动采集商品数据的工具。它能通过输入关键词、设置价格区间等参数,快速获取指定商品的相关信息。这类工具常用于市场分析、价格趋势研究或辅助电商运营。

2024-11-27

在虚拟机中模拟DDoS攻击,并配置相应防御策略 考试题目如下: 模拟SYN 洪水攻击及防御,模拟Smurf攻击及防御,模拟do

一、实验背景目的及原理 1. 模拟SYN洪水攻击及防御 实验背景: SYN洪水攻击(SYN Flood)是一种广为人知的拒绝服务(DoS)攻击,其利用TCP协议的三次握手过程中的缺陷。在正常的TCP连接建立过程中,客户端发送一个SYN报文给服务器端,服务器回应SYN+ACK报文,然后客户端再发送ACK报文进行确认,三次握手完成后连接建立。然而,如果客户端发送大量SYN报文却不回应服务器的SYN+ACK报文,服务器会为了这些未完成的连接不断分配资源,最终耗尽资源而无法处理正常的客户端连接请求。 实验目的: 模拟SYN洪水攻击,通过发送大量伪造的TCP连接请求(SYN报文)来消耗目标系统的资源。 测试和验证防御措施的有效性,如修改TCP连接参数(如tcp_synack_retries和tcp_syncookies)、使用防火墙和入侵检测系统(IDS)等。 实验原理: SYN洪水攻击的原理在于利用TCP协议三次握手机制的缺陷。攻击者通过伪造IP地址和端口号,向目标服务器发送大量SYN请求报文,但不响应服务器的SYN+ACK报文。服务器在等待客户端的ACK报文时,会保持这些未完成的连接状态,并

2024-10-18

【STM32单片机】贪吃蛇游戏设计

【STM32单片机】贪吃蛇游戏设计 本项目支持STM32F103/STM32F407控制器,使用TFTLCD触摸屏、按键、LED等。 项目功能:系统运行后,TFTLCD触摸屏显示游戏界面,通过按键任意键进入游戏界面,然后通过按键KEY_UP、KEY1、KEY2和KEY0键控住上下左右方向。每当蛇吃到3个食物,速度就会提升一个等级,并且显示得分和等级,最高位5级。当游戏结束后可按任意键重新回到主界面开始。

2023-12-13

自动化文件夹脚本程序,批量创建文件夹

当你需要在计算机上批量创建文件夹时,可以使用脚本来自动化这个过程。下面是一个简单的Python脚本示例,它能够根据指定的文件夹名和数量,批量创建文件夹。

2023-12-13

Typora是一款Markdown编辑器和查看器

Typora是一款Markdown编辑器和查看器,为用户提供了清晰直观的界面,用于编写和编辑Markdown文档。Markdown是一种轻量级的标记语言,常用于书写文档、笔记和网页内容。 以下是Typora的一些主要特点和特性: 1.所见即所得编辑(WYSIWYG):Typora提供所见即所得的编辑体验,即用户在输入时可以看到文档的格式化效果。这对于不熟悉Markdown语法的用户来说更加直观。 2.专注模式:Typora包含专注模式,允许用户集中注意力在当前段落或标题上,减少干扰。 3.语法高亮:支持代码块的语法高亮,使其成为那些在文档中使用代码的作者和开发人员的理想选择。 4.主题和样式:软件支持各种主题和样式,允许用户自定义文档的外观,包括颜色方案、字体和间距选项。 5.导出选项:您可以将Markdown文档导出为各种格式,如PDF、HTML甚至Word文档。这种灵活性在分享或发布工作时非常有用。 6.跨平台兼容性:Typora可在Windows、macOS和Linux上使用,使其适用于广泛的用户群。 7.文件管理:支持多文件管理,并具有侧边栏,方便用户在文档之间导航。

2023-12-12

微博信息爬虫exe文件,下载打开双击运行即可

微博信息爬虫exe文件,下载打开双击运行即可!! 程序采用爬虫技术,多线程技术实现,利用多线程构造进度条信息,最后将相关微博信息的发布者、信息发布的时间、信息的内容、以及对应微博的点赞数、评论数、转发数存储到excel表!!!!

2023-12-05

java基础的注解和反射的相关知识点总结

,注解与注释是有一定区别的,可以把注解理解为代码里的特殊标记 反射和反射机制 反射(Reflection): Java的反射是指程序在运行期可以拿到一个对象的所有信息。 反射的优点和缺点: 优点:可以实现动态创建对象和编译,灵活性大 缺点:对性能有影响,反射操作总是慢于直接执行相同操作 反射机制: Java的反射机制是指在程序的运行状态中,**可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用,操作任意一个对象的属性和方法。**这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动态语言(在程序运行的时候可以改变其结构)的关键。

2023-09-06

基于java的功能记事本程序

1、具有新建,打开,关闭,保存,另存等文件操作功能; 2、在记事本用户界面某个特定位置(附加信息显示区)显示当前日期时间,日期时间在保存时也被保存下来; 3、系统具备良好的可扩展性,可以在附加信息显示区显示更多的信息,例如天气情况等,并且这些信息也可以保存到存盘文件中。

2023-08-15

javaweb前端相关入门关于变量的简单知识

在JavaWeb前端开发中,变量是非常重要的概念。它们用于存储和操作数据,帮助我们在程序中临时保存和使用值。下面是一些关于变量的简单知识: 1. 变量声明:在使用变量之前,需要先声明它们。声明变量包括指定变量的类型和名称。例如,可以声明一个整数类型的变量如下: ```java int number; ``` 2. 变量赋值:在声明变量后,可以将一个值赋给变量。例如,将值5赋给之前声明的整数变量可以这样写: ```java number = 5; ``` 也可以在声明变量的同时进行赋值: ```java int number = 5; ``` 3. 变量类型:Java中有多种数据类型,用于存储不同种类的值。常见的数据类型包括整数类型(如int)、浮点数类型(如float)、布尔类型(如boolean)和字符串类型(如String)。根据需要选择合适的数据类型来声明变量。 1. 变量命名:变量名称是用来标识变量的唯一标识符。命名变量时应遵循一些规则:变量名只能包含字母、数字和下划线,不能以数字开头,不能使用Java关键字作为变量名。 1. 变量作用域:变量的作用域指的是变

2023-08-10

软件测试笔试理论知识点

软件测试是评估和验证软件系统是否符合要求和预期的过程。它是软件开发生命周期中的一个重要环节,旨在发现和识别软件系统中的缺陷和问题,以提高软件质量和稳定性。软件测试一般包括以下几个方面: 1. 功能测试:用于测试软件系统的各个功能是否符合要求和预期,包括输入验证、输出验证、界面测试、数据验证、业务逻辑测试等。 2. 性能测试:用于测试软件系统在特定负载下的性能和稳定性,包括负载测试、压力测试、容量测试和稳定性测试等。 3. 安全测试:用于测试软件系统在安全方面的强度和稳定性,包括渗透测试、漏洞扫描、授权测试和认证测试等。 4. 兼容性测试:用于测试软件系统在不同操作系统、浏览器、设备等环境下的兼容性,包括浏览器兼容性测试、操作系统兼容性测试、设备兼容性测试等。 5. 可靠性测试:用于评估软件系统在长时间使用中的可靠性和稳定性,包括稳定性测试、故障恢复测试、容错测试等。 6. 自动化测试:用于自动化测试用例的执行和结果分析,以提高测试效率和准确性,常用的自动化测试工具包括Selenium、Appium、JMeter等。 综上所述,软件测试是软件开发过程中不可或缺的一部分,它可

2023-07-11

linux常用命令以及服务器工作中常用命令

本文介绍了一些常用的Linux命令以及服务器工作中常用命令的例子和使用方法。其中,涉及到文件和目录相关的命令,包括ls、cd、mkdir、touch、rm、cp和mv;网络命令,包括ping、ifconfig、netstat、nslookup和traceroute;用户和权限管理命令,包括useradd、passwd、su、chmod和chown;系统状态相关命令,包括top、free、df、du和ps;以及服务器工作中常用的SSH连接命令、系统管理命令、网络管理命令和Web服务器相关命令。通过本文的介绍和示例,读者可以更好地了解和掌握这些常用命令,以便在Linux系统中进行更高效的操作和管理。

2023-07-10

基于神经网络的外汇预测

外汇预测在金融领域具有重要的意义,可以帮助投资者制定更好的投资策略,企业降低汇率风险,政府制定更合适的经济政策,同时也对国际贸易关系产生影响。 本实验旨在通过实现线性回归模型,对时间序列数据(欧元和美元的兑换率)进行预测,并通过评价指标对模型进行评估。在实验中,我们使用Python编程语言,主要使用了pandas、numpy、scikit-learn、tabulate、matplotlib和torch等库。实验步骤包括数据准备、数据预处理、模型训练和评估等。通过不同的评价指标和MSE损失曲线,我们可以看出该模型的预测性能非常好,在测试集上取得了很好的效果。该实验为使用线性回归模型进行时间序列数据预测提供了一个简单的示例,并介绍了一些常用的评价指标和预处理技术。

2023-07-10

NAvicat用到的工具

Navicat是一款功能强大的数据库管理工具,支持多种数据库如MySQL、PostgreSQL、Oracle、SQLite和SQL Server等。它提供了直观易用的用户界面,使得用户可以轻松地管理和维护数据库。以下是一些Navicat的主要特点和功能: 1. 支持多种数据库:Navicat支持多种数据库,包括MySQL、PostgreSQL、Oracle、SQLite和SQL Server等,用户可以在一个界面下管理多个数据库。 2. 直观易用的用户界面:Navicat的用户界面友好直观,使得用户可以快速找到所需的功能和选项。 3. 数据库备份和恢复:Navicat提供了数据库备份和恢复功能,可以轻松地备份和还原数据库,保证数据的安全性。 4. 数据库同步:Navicat可以对多个数据库进行同步,确保数据的一致性和完整性。 5. 数据库导入和导出:Navicat可以将数据库导出为多种格式,如CSV、Excel、XML和SQL等,也可以从其他格式导入数据到数据库中。 6. 数据库查询和编辑:Navicat提供了强大的查询和编辑功能,支持多种查询方式和SQL语句编辑器,可以轻

2023-07-10

Windows使用记录查看工具

Windows使用记录查看工具实现功能的方式可能有所不同,但通常会使用以下方法: 1. 监控操作记录:Windows使用记录查看工具会监控用户的电脑操作记录,包括打开文件、安装程序、切换用户、创建文件夹等等,这些记录会被保存在电脑的日志文件中。 2. 分类记录数据:工具会将监控到的操作记录数据进行分类,以便用户更好地理解和分析记录数据。例如,将记录数据按照应用程序、安全、系统和应用程序服务等分类,或者按照操作类型、时间、用户等进行分类。 3. 提供操作记录查看界面:工具会提供一个操作记录查看界面,让用户可以方便地查看和分析记录数据。通常,这个界面会包括记录数据的列表,以及过滤、排序、搜索和导出等操作。 4. 提供警报功能:一些高级的Windows使用记录查看工具还会提供警报功能,当发现特定的操作记录时,可以发送警报通知管理员或用户。这有助于及时发现和处理异常操作。 需要注意的是,Windows使用记录查看工具可能需要较高的权限才能够访问和监控电脑上的操作记录,因此在使用这些工具时,需要相应的权限才能够使用全部功能。

2023-07-10

数据恢复工具大家可以下载试试

易我数据恢复软件是一款专业的数据恢复工具,可以帮助用户从各种存储介质上恢复被删除、格式化、病毒感染、系统崩溃等原因造成的丢失的文件。以下是该软件的主要特点和功能: 1. 多种数据恢复模式:易我数据恢复软件提供多种数据恢复模式,包括快速恢复、深度恢复、分区恢复、格式化恢复和RAW恢复模式等,可以根据不同的情况进行选择。 2. 支持多种存储介质:该软件支持从各种存储介质上恢复数据,包括硬盘、U盘、SD卡、手机、相机、MP3/MP4等。 3. 支持多种文件类型:易我数据恢复软件可以恢复各种文件类型,包括照片、视频、音频、文档、压缩文件等,支持的文件格式非常广泛。 4. 简单易用的操作界面:该软件的操作界面简单直观,易于操作,即使是没有专业知识的用户也可以轻松使用。 5. 快速扫描和深度扫描:该软件提供快速扫描和深度扫描两种扫描模式,快速扫描速度快,深度扫描可以深入磁盘进行扫描,可以找到更多的丢失文件。 6. 预览和恢复:该软件可以预览恢复的文件,以确定文件是否完整,然后可以选择恢复文件到指定的位置。

2023-07-10

python基础学习+基础pdf文件

Python是一种高级编程语言,具有简单易学、易读易写、可扩展性强等优点,被广泛应用于Web开发、数据分析、人工智能、科学计算、游戏开发等领域。 以下是Python基础知识的介绍: 1. 变量和数据类型:Python中的变量不需要事先声明类型,可以直接赋值使用。Python支持多种数据类型,包括数字、字符串、列表、元组、字典等。 2. 控制流语句:Python中常用的控制流语句包括if语句、while语句、for语句等。 3. 函数和模块:Python中可以定义函数,可以将函数封装成模块进行重复使用。 4. 输入输出:Python中可以使用input函数获取用户输入,使用print函数输出信息。 5. 异常处理:Python中可以使用try...except语句进行异常处理。 6. 文件操作:Python中可以使用open函数打开文件,使用read函数读取文件内容,使用write函数向文件写入内容。 7. 面向对象编程:Python支持面向对象编程,可以定义类和对象,进行封装、继承、多态等操作。 8. 第三方库:Python拥有丰富的第三方库,可以方便地进行各种开发任

2023-06-08

分区助手,诸位c盘很小的C盘杀手,这个很好用免费的快下载

分区助手是一款磁盘分区管理工具,它可以帮助用户对硬盘进行分区、调整分区大小、合并分区、拆分分区、移动分区等操作。以下是分区助手的主要功能介绍: 1. 硬盘分区:分区助手可以帮助用户对硬盘进行分区,将硬盘分成多个逻辑分区,每个分区可以独立管理和使用。用户可以根据需要自由分配每个分区的大小和名称等。 2. 调整分区大小:分区助手可以帮助用户调整分区的大小,将一个分区扩大或缩小到合适的大小。用户可以通过分区助手调整分区大小,来满足不同的需求。 3. 合并分区:分区助手可以帮助用户将两个相邻的分区合并成一个分区,以便更好地管理和使用空间。 4. 拆分分区:分区助手可以帮助用户将一个分区拆分成两个或多个分区,以便更好地管理和使用空间。用户可以根据需要将分区进行拆分,以便更好地组织和管理数据。 5. 移动分区:分区助手可以帮助用户移动分区,将一个分区移动到另一个位置。用户可以通过分区助手移动分区,以便更好地组织和管理数据。 6. 备份和还原分区:分区助手可以帮助用户备份和还原分区数据。用户可以通过分区助手备份分区数据,以防数据丢失或损坏。如果数据丢失或损坏,用户可以通过分区助手恢复备份

2023-05-26

混凝土强度预测 python 简单小项目

适用于大学生期末课程设计: 混凝土强度是指混凝土在特定条件下的抗压强度,通常用来评估混凝土的质量和可靠性。在工程建设中,混凝土强度的预测非常重要,可以帮助工程师和建筑师更好地评估结构的稳定性和安全性。 Python是一种流行的编程语言,可以用于开发各种类型的应用程序,包括科学计算、数据分析和机器学习等。在本项目中,我们将使用Python开发一个混凝土强度预测工具,以帮助工程师和建筑师更好地评估结构的稳定性和安全性。 本项目的基本思路是:首先,我们需要收集一些混凝土强度数据,包括混凝土的配比、龄期、强度等信息。其次,我们将使用Python的数据分析库来分析和处理这些数据,以便更好地理解和预测混凝土强度。最后,我们将使用Python的机器学习库来建立一个混凝土强度预测模型,以便更好地进行预测和评估。 以下是本项目的主要步骤: 1. 数据收集:首先,我们需要收集一些混凝土强度数据,包括混凝土的配比、龄期、强度等信息。可以从相关文献、数据库或实验室中获取这些数据。 2. 数据处理:接下来,我们将使用Python的数据分析库(例如Pandas)来处理这些数据,包括数据清洗、数据转换、数

2023-05-26

数据库音乐管理系统很简单很low

数据库音乐管理系统是一种基于数据库技术的音乐管理软件,它可以帮助用户管理自己的音乐库,包括音乐文件的存储、分类、搜索、播放等功能。以下是数据库音乐管理系统的介绍: 1. 数据库设计:数据库音乐管理系统通常使用关系型数据库,如MySQL、Oracle等。在设计数据库时,需要定义音乐文件的属性,如歌曲名称、歌手、专辑、时长、文件路径等。同时还需要定义用户信息、播放列表等相关表结构。 2. 音乐文件的存储:在数据库音乐管理系统中,音乐文件通常以文件形式存储在本地或者网络存储设备中。系统会将音乐文件的相关信息保存在数据库中,以便用户管理和查询。 3. 音乐文件的分类:用户可以通过数据库音乐管理系统对音乐文件进行分类,如根据歌手、专辑、风格、年份等进行分类。分类可以通过数据库查询实现,方便用户查找和管理音乐文件。 4. 搜索功能:数据库音乐管理系统可以提供搜索功能,让用户可以根据关键字(如歌曲名称、歌手、专辑等)来搜索音乐文件,快速找到所需音乐。 5. 播放功能:数据库音乐管理系统还可以提供音乐播放功能,让用户可以直接在软件中播放音乐文件。用户可以创建播放列表,将不同歌曲加入到不同的列

2023-05-26

文件加密器可以使你的文件更加安全

免费下载,好用就完事了

2023-05-26

神经网络预测混凝土强度

python代码编写

2023-05-26

空空如也

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

TA关注的人

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