自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

前端学习博客

CSS,JS,Vue,Nodejs,webpack,CS,算法

  • 博客(391)
  • 资源 (6)
  • 收藏
  • 关注

原创 【github actions】部署前端项目

对于前端,部署一个网站,当我们对网站内容进行修改后再次进行部署时,仍然需要手动将打包后的文件上传到服务器,这个过程比较繁琐,那么我们可以使用github actions实现持续集成,我们只需要负责修改代码即可,当代码被push到远程仓库时,这个push行为会被监听到,会自动发布到服务器上。【vue项目部署】Linux+Nginx实现项目部署及跨域。

2022-09-21 10:21:56 714

原创 【docker】入门指南(高级篇)

然后,只要一个命令,就能同时启动/关闭这些容器。Docker镜像,在用Dockerfile定义一个文件之后,docker build时会产生一个Docker镜像,当运行 Docker镜像时会真正开始提供服务;在基础篇中,介绍了如何发布我们自己的镜像,但是如果我们需要在原本发布的镜像上继续添加新功能,那就需要重新在基础镜像上继续添加新功能,反复commit。Dockerfile面向开发,Docker镜像成为交付标准,Docker容器则涉及部署与运维,三者缺一不可,合力充当Docker体系的基石。

2022-09-17 21:18:52 245

原创 【Docker】入门指南(基础篇)

为什么会有docker出现?假定您在开发一个尚硅谷的谷粒商城,您使用的是一台笔记本电脑而且您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。此外,您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。您希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销。请问?您要如何确保应用能够在这些环境中运行和通过质量检测?并且在部署过程中不出现令人头疼的版本、配置问题,也无需重新编写代码和进行故障修复?

2022-09-17 21:15:52 845

原创 【vue项目部署】Linux+Nginx实现项目部署及跨域

我们可以使用epel源(EPEL : Extra Packages for Enterprise Linux是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.)。Centos 7下安装nginx,使用yum install nginx,报错提示没有可用的软件包。在浏览器输入你的公网IP,无需端口号(默认80),如果看到。之类的界面,就是Nginx安装并启动成功了。一般,我们的项目都会放在。目录下,如果没有,创建。

2022-09-16 19:04:46 2409 4

原创 【Linux】学习指南(七)进程管理(重点)

ps 命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数.若是某个进程执行一半需要停止时,或是已消了很大的系统资源时,此时可以考虑停止该进程。使用kill 命令来完成此项任务。服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld, sshd防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。14.5.2 service 管理指令。

2022-09-14 10:58:20 224

原创 【Linux】学习指南(六)网络配置

说明:登陆后,通过界面的来设置自动获取 ip,特点:linux 启动后会自动获取 IP,缺点是每次自动获取的ip地址可能不一样。在 C:\Windows\System32\drivers\etc\hosts 文件指定即可。要求:将 ip 地址配置的静态的,比如: ip 地址为 192.168.200.130。为了方便记忆,可以给 linux 系统设置主机名, 也可以根据需要修改主机名。ping 目的主机 (功能描述:测试当前服务器是否可以连接目的主机)修改文件在 /etc/hostname 指定。

2022-09-14 10:53:09 220

原创 【Linux】学习指南(五)磁盘分区、挂载度

在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,至到完成。说明: 开始分区后输入 n,新增分区,然后选择 p ,分区类型为主分区。需求是给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk。例如: umount /dev/sdb1 或者 umount /newdisk。例如: mount /dev/sdb1 /newdisk。分区命令:mkfs -t ext4 /dev/sdb1。开始对/sdb 分区。

2022-09-14 10:49:19 312

原创 【Linux】学习指南(四)组管理和权限管理

Linux中每个用户属于一个组,不能独立于组以外。所以在Linux中每个文件存在组的概念:所有者所在组其他组改变用户所在组。

2022-09-12 21:25:55 227

原创 【Linux】学习指南(三)实用指令

案例 1: 压缩多个文件,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz。解压到指定目录:tar -zxvf (要解压的文件) -C (指定目录),指定解压到的目录要存在。案例4: 将myhome.tar.gz 解压到 /opt/tmp2目录下。zip [选项] (压缩后文件xxx.zip) (将要压缩的文件)压缩:tar -zcvf (压缩后文件名) (要压缩的文件)tar:打包指令,最后打包后的文件是.tar.gz的文件。zip/unzip:压缩文件/解压。

2022-09-12 20:53:45 209

原创 【Linux】学习指南(二)用户管理

由于/etc/passwd文件是所有用户都可读的,如果用户的密码太简单或规律比较明显的话,一台普通的计算机就能够很容易地将它破解,因此对安全性要求较高的Linux系统都把加密后的口令字分离出来,单独存放在一个文件中,这个文件是/etc/shadow文件。当一个用户同时是多个组中的成员时,在/etc/passwd文件中记录的是用户所属的主组,也就是登录时所属的默认组,而其他组称为附加组。Linux系统中的每个用户都在/etc/passwd文件中有一个对应的记录行,它记录了这个用户的一些基本属性。

2022-09-12 17:18:27 201

原创 【Linux】学习指南(一)基本操作

是Binary的缩写,这个目录存放着最经常使用的命令。/sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。该目录为系统管理员,也称作超级权限者的用户主目录。/lib:系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

2022-09-12 16:51:38 272

原创 【LeetCode】回溯题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-09-11 19:42:32 939 2

原创 【LeetCode】二叉搜索树相关题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-09-07 17:56:10 1295 1

原创 【LeetCode】二叉树相关题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-09-06 15:44:52 325

原创 【LeetCode】栈与单调栈题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-25 18:56:07 1125

原创 图解kmp算法

但是对于kmp算法,如果遇到了不同字符,其实此次你已经知道了前面比较过的字符是什么,那么就设法利用这个已知信息,不要把"搜索位置"移回已经比较过的位置(注意,这里的比较过的位置指的是文本串中已经进行比较过的位置),继续把它向后移,这样就提高了效率。可以看到,当比较到 f 时,比较错误,然后找到指针左边(不包括该指针)的最长公共前后缀的长度为2,那么指针就移动到下标为2的地方继续向后比较,这个过程就相当于将前缀的位置移动到后缀上。),从next数组中可以发现,f 左边的长度为2,所以要移动到下标为2的地方。.

2022-08-15 16:25:39 1682

原创 【LeetCode】哈希表题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-14 10:25:38 341

原创 【vue3项目】解决 “TypeError: Cannot read properties of undefined (reading ‘xxx‘)“

定义一个 getUserList 函数,并且在 onMounted 函数中挂载它,在加载页面时,先通过我自定义的已全局挂载的。结果发现:ctx.$api 为 undefined,并且 ctx 身上并没有我们绑定的 $api。首先这个报错的意思大概是:无法找到 undefined 的 属性。所以就验证了bug 的原因是:vue3的全局绑定没有生效。逻辑上没有问题,同时也没有出现上述的三种情况。所以,我猜测是 $api 全局绑定没有生效。但是上述方法都无法解决我的bug,那在我的代码中的意思就是:找不到。...

2022-08-12 12:09:14 43857

原创 【LeetCode】41. 缺失的第一个正数

给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。

2022-08-12 10:46:19 1264 1

原创 【LeetCode】链表题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-10 12:24:21 269 1

原创 vue项目配置环境变量与代理服务器

代理服务器的主要思想是通过建立一个端口号和前端相同的代理服务器进行中转,从而解决跨域问题。而且代理服务器与服务器之间的通信是后端之间的通信,不会产生跨域问题。浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都会导致跨域问题。3、工作方式:若按照上述配置代理,当请求了不存在的资源时,那么该请求就会转发给服务器(有限匹配前端资源)1、优点:可以配置多个代理,并且可以灵活的控制请求是否走代理。2、缺点:不能配置多个代理,不能灵活的控制请求是否走代理。-- 用vue-cli来实现。...

2022-08-09 19:09:22 1270 1

原创 【Eslint + Prettier + Husky + Commitlint】前端项目代码规范的搭建

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇博客收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉变更这里采用自己定义的规范,将会覆盖上面那个,所以上面那个可以不用安装增加 .cz-config.jsvalue : '✨新增' , name : '新增: 新的内容' } , {value : '🐛修复' , name : '修复: 修复一个Bug' } , {value : '📝文档' , name : '文档: 变更的只有文档' } , {...

2022-08-09 18:41:04 1087

原创 【LeetCode】矩阵模拟相关题目汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-04 19:54:08 449

原创 【LeetCode】滑动窗口题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-04 12:47:09 1300

原创 【LeetCode】图解 904. 水果成篮

此时,我们已经更新了map中两种水果的最后出现位置,也更新了存储的水果最大数量(计算水果的最大数量可以使用:i - j + 1),接下来当我们继续向后移动指针时,出现了第三种水果,此时需要我们取出一种水果,根据下标,我们要取出的水果是1号水果,并且更新j指针的位置为下标为 6+1 的地方。此时,i指向的是1号水果,j指针指向的是我们的第一种水果,在map中,3号水果的最后出现位置为下标为2的地方,1号水果出现的位置在下标为3的位置,并且记录当前的采摘的最大数量为4。采摘的水果应当符合篮子中的水果类型。...

2022-08-03 18:52:16 1016

原创 【LeetCode】双指针题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉。

2022-08-03 15:27:23 844 2

原创 【LeetCode】二分查找题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-20 16:35:13 475

原创 【LeetCode】每一轮都要把输入数组看一遍的二分

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-20 16:18:46 192

原创 【LeetCode】在范围内二分查找一个整数

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-20 16:17:35 214

原创 【LeetCode】在非有序数组中使用二分

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-20 16:14:16 288

原创 【LeetCode】二分基本问题题解汇总

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https对于力扣上常见的二分查找的题目在这里进行分类总结。这里是第一种类型的题目汇总。主要是使用基本的二分模板。对于二分的基本知识,点击这里👉【LeetCode】二分基础模板,查找左右边界34.在排序数组中查找元素的第一个和最后一个位置给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。...

2022-07-20 16:11:16 1212 1

原创 【LeetCode】二分基础模板,查找左右边界

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-19 21:55:35 797

原创 cookie,localstorage封装

cookie,localstorage封装

2022-07-17 20:47:43 221

原创 jwt对称与非对称加密的项目实践

jwt对称与非对称加密的项目实践

2022-07-17 10:59:03 357

原创 cookie和session在实际项目中的使用

session本质上也是一个cookie,只不过是存储在浏览器上的session一般存在于cookie中,并且是一个sessionId,sessionId通过要保存的信息加上签名来加密生成,所以在客户端查看的session是一个字符串。当我们把cookie传递到服务器端时,里面的sessionId也会被传过去,然后服务器端拿出sessionId,利用加密算法进行解密,拿到信息进行验证。...

2022-07-17 01:11:19 287 1

原创 cookie在前后端项目中的简单实践

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https。

2022-07-16 13:40:35 1881 2

原创 【前端精进之路】JS篇:第14期 Event Loop(事件循环机制)

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!前端精进之路同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉httpsJS所谓的“单线程”只是指主线程只有一个,并不是整个运行环境都是单线程JS的异步靠底层的多线程实现异步线程与主线程通讯靠的是EventLoop异步线程完成任务后将其放入任务队列主线程不断轮询任务队列,拿出任务执行不在EventLoop的任何阶段,他是一个特殊API,他会立即执行,然后才会继续执行EventLoop参考文章。...

2022-07-16 07:50:38 1027 16

原创 【前端精进之路】JS篇:第13期 函数式编程

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章收录于我的专栏:前端精进之路同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https://github.com/mengqiuleo/myNote函数式编程是一种编程范式,是一种构建计算机程序结构和元素的风格,主要是利用函数把运算过程封装起来,通过组合各种函数来计算结果。函数式编程意味着你可以在更短的时间内编写具有更少错误的代码。指调用函数时不会修改外部状态,即一个函数调用 n 次后依然返回同样的结果。透明引用..

2022-07-14 00:00:16 680 18

原创 【前端精进之路】JS篇:第12期 对象继承的6种方式

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇文章收录于我的专栏:前端精进之路同时收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https://github.com/mengqiuleo/myNote关键子类型的原型为父类型的一个实例对象优点:缺点:如果要给子类的原型上新增属性和方法,就必须放在这样的语句后面无法实现多继承(因为已经指定了原型对象了)来自原型对象的所有属性都被共享了,这样如果不小心修改了原型对象中的引用类型属性,那么所有子类创建的实例对象都会受到影响..

2022-07-13 09:05:34 362 11

原创 【mysql】外键与多表查询

这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!!本篇博客收录于我的github前端笔记仓库中,持续更新中,欢迎star~👉https://github.com/mengqiuleo/myNote我们可以使用外键将两个表连接起来比如现在有两张表,一张是products一张是brand:此时我们使用外键将两个表连接起来语法:然后我们现在给新增的外键赋值此时我们的products表中的外键就有了值我们来思考一个问题:我们来进行一个更新操作:比如将华为的id更新为100这个时候执行代码是报错的。如..

2022-07-12 14:18:54 4682 1

提供一套基于Spring Boot-Shiro-Vue的权限管理思路.前后端都加以控制,做到按钮/接口级别的权限 (当前新版本已

提供一套基于Spring Boot-Shiro-Vue的权限管理思路.前后端都加以控制,做到按钮/接口级别的权限。(当前新版本已移除shiro依赖,简化了配置) 核心 每个登录用户拥有各自的N条权限,比如 文章:查看/编辑/发布/删除 后端 基于 RBAC新解 . 通常我们的权限设计都是 用户--角色--权限 ,其中角色是我们写代码的人没法控制的,它可以有多条权限,每个用户又可以设计为拥有多个角色.因此如果从角色着手进行权限验证,系统都必须根据用户的配置动起来,非常复杂. 所以我们后台设计的关键点就在于: 后台接口只验证权限,不看角色. 角色的作用其实只是用来管理分配权限的,真正的验证只验证权限 ,而不去管你是否是那种角色.体现在代码上就是接口上注解为 @RequiresPermissions("article:add")

2024-06-25

UU 加速插件 docker 版本(docker)

UU 加速插件 docker 版本(docker) uuplugin docker 版本 UU 加速提供了 OpenWrt 版本的插件,见 https://router.uu.163.com/app/baike/public/5f963c9304c215e129ca40e8.html。 该项目基于 OpenWrt 的 openwrtorg/rootfs 版本构完成了开启 UU 需要的配置,同时移除了一些无关服务,如 DHCP、SSH、Web luci。 你可以使用该镜像完成旁路由模式下 UU 加速服务快速部署。 因为不同的 OpenWrt 版本对路由规则配置不同(或者别的什么),导致检测不到游戏主机连入。主要表现为主机在 UU app 中出现后立即消失。 使用该 docker 镜像应当可以有效解决该问题。 环境准备 打开 IP 混杂模式 因为我没有多网口设备,如何在多网口设备下为容器提供独立 IP 你需要自行查询 Docker 相关文档。 如果你的物理设备为单网口,需要开启 IP 混杂模式,为容器提供独立 IP。 如下命令为开启方式: ip link set eth0 pro

2024-06-25

学生成绩管理系统 大一的C语言大作业(c语言)

学生成绩管理系统 大一的C语言大作业(c语言) 该程序包括以下功能: 1.录入每个学生的学号、姓名和各科考试成绩 2.计算每门课程的总分和平均分 3.计算每个学生的总分和平均分 4.按每个学生的总分由高到低排出名次表 5.按每个学生的总分由低到高排出名次表 6.按学号由小到大排出成绩表 7.按姓名的字典顺序排出成绩表 8.按学号查询学生排名及其考试成绩 9.按姓名查询学生排名及其考试成绩 10.按优秀(90-100)、良好(80-89)、中等(70-79)、及格(60-69)、不及格(0-59)5个类别,对每门课程分别统计每个类别的人数以及所占的百分比 11.输出每个学生的学号、姓名、各科考试成绩,以及每门课程的总分和平均分 12.将每个学生的纪录信息写入文件 13.从文件中读出每个学生的纪录信息并显示 注: 本程序是用单项链表来写,由于是大一上所写,代码难免会有些冗杂,敬请见谅

2024-06-25

已对接了 RT-Thread Sensor 框架的 DS18B20 驱动程序

已对接了 RT-Thread Sensor 框架的 DS18B20 驱动程序 DS18B20 数字温度传感器 软件包简介 DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。 该软件包已对接了 RT-Thread Sensor 框架的 DS18B20 驱动程序。

2024-06-25

51单片机/MSP430单片机源代码(c++)

51单片机/MSP430单片机源代码(c++) 单片机程序(51/MSP430) 单片机学习-练习代码 C51/ (51单片机程序) msp430/ (MSP430单片机程序) 如果编码有问题,打开有乱码, 可以使用iconv指令. $ iconv -f gbk -t utf-8 hello.c > hello.utf-8.c

2024-06-25

A complete and graceful API for Wechat. 微信个人号接口、微信机器人及命令行微信,三十行即

A complete and graceful API for Wechat. 微信个人号接口、微信机器人及命令行微信,三十行即可自定义个人号机器人。 安装 可以通过本命令安装itchat: pip install itchat 简单入门实例 有了itchat,如果你想要给文件传输助手发一条信息,只需要这样: import itchat itchat.auto_login() itchat.send('Hello, filehelper', toUserName='filehelper') 如果你想要回复发给自己的文本消息,只需要这样: import itchat @itchat.msg_register(itchat.content.TEXT) def text_reply(msg): return msg.text itchat.auto_login() itchat.run() 一些进阶应用可以在下面的开源机器人的源码和进阶应用中看到,或者你也可以阅览文档。 试一试 这是一个基于这一项目的开源小机器人,百闻不如一见,有兴趣可以尝试一下。 由于好友数量实在

2024-06-25

基于nodejs 的博客园爬虫项目(javascript)

基于nodejs 的博客园爬虫项目(javascript) 爬虫的流程,要完成一个爬虫,主要的步骤分为: 抓取 爬虫爬虫,最重要的步骤就是如何把想要的页面抓取回来。并且能兼顾时间效率,能够并发的同时爬取多个页面。 同时,要获取目标内容,需要我们分析页面结构,因为 ajax 的盛行,许多页面内容并非是一个url就能请求的的回来的,通常一个页面的内容是经过多次请求异步生成的。所以这就要求我们能够利用抓包工具分析页面结构。 如果深入做下去,你会发现要面对不同的网页要求,比如有认证的,不同文件格式、编码处理,各种奇怪的url合规化处理、重复抓取问题、cookies 跟随问题、多线程多进程抓取、多节点抓取、抓取调度、资源压缩等一系列问题。 所以第一步就是拉网页回来,慢慢你会发现各种问题待你优化。 存储 当把页面内容抓回来后,一般不会直接分析,而是用一定策略存下来,个人觉得更好的架构应该是把分析和抓取分离,更加松散,每个环节出了问题能够隔离另外一个环节可能出现的问题,好排查也好更新发布。 那么存文件系统、SQL or NOSQL 数据库、内存数据库,如何去存就是这个环节的重点。 分析

2024-06-25

bcloud 的安装包-rpm(shell)

请在下载到安装包之后, 先检验一下包的完整性. 有可能会下载的不完整, 最近至少 有两位朋友遇到了这类问题. 可以使用 $ md5sum bcloud-x.x.x 来计算下载的安装 包的MD5值, 与 checksum.txt 里面的文件MD5值比较, 如果匹配就 没有问题. #Debian 安装指南 Debian及基于Debian的发行版(比如ubuntu, linuxmint)请直接下载 bcloud-x.x.x.deb这个包, 然后双击deb包就能安装了; 有些用户并没有安装apt包管理器的GUI界面, 也可以在终端里面安装: $ sudo dpkg -i bcloud-x.x.x.deb $ sudo apt-get -f install #Debian 7 安装指南 Debian 7里面有一个软件包需要手动升级到较新版, # pip3 install --upgrade keyring #Ubuntu 12.04 安装指南 由于ubuntu12.04里面的包非常旧, 在把bcloud的deb包安装好之后, 并不能直接使用, 会出现类似于issue65中的错误, 需要手

2024-06-25

粒子群算法优化支持向量机(python)

粒子群算法优化支持向量机(python) pso-svm 粒子群算法优化支持向量机 1 使用方法 python pso_svm.py 2 目录结构 |-- .idea | |-- encodings.xml | |-- misc.xml | |-- modules.xml | |-- pso-svm-master.iml | `-- workspace.xml |-- LICENSE |-- README.md # 说明文档 |-- config # 数据、SVM及PSO算法参数配置 | |-- __pycache__ | | `-- config.cpython-36.pyc | `-- config.py |-- data # 数据存放 | |-- Statlog_heart_Data.csv | `-- heart.dat |-- pso_svm.py # pso_svm算法实现 |-- test.py # svm功能测试 `-- uti

2024-06-25

用matlab,matplotlib和pandas画箱形图

用matlab,matplotlib和pandas画箱形图 箱形图 一、四分位数:Q1(下四分位数)、Q2(中位数)、Q3(上四分位数),处于所有数字长度的1/4、1/2、3/4处的值。 计算四分位数: q1_loc = math.ceil(len(dataf[i]) * 0.25 + 1) q1 = dataf[i][q1_loc] # mid = np.median(dataf[i]) q3_loc = math.floor(len(dataf[i]) * 0.75 + 1) q3 = dataf[i][q3_loc] low_whisker = q1 - 1.5 * (q3 - q1) up_whisker = q3 + 1.5 * (q3 - q1) 或dataframe类型的数据,直接用data_ser.quantile(0.25)可以得到下四分位数。 二、上下限: 箱形图两端的两条线,在这两条线的范围之外的点是异常点。 计算方法: low_whisker = q1 - 1.5 * (q3 - q1)

2024-06-25

ROS通信代码实现及Gazebo仿真(Python+cmake)

ROS通信代码实现及Gazebo仿真(Python+cmake) ROS ROS communication codes and Gazebo simulation 运行环境:Ubuntu16.04 + ROS Kinetic + Gazebo8.0 运行步骤: Stanley算法: -> smartcar_description/smartcar_gazebo.launch -> waypoint_loader/waypoint_loader.launch -> waypoint_updater/waypoint_updater.launch -> stanley_persuit/stanley_persuit.launch Pure_persuit算法: -> smartcar_description/smartcar_gazebo.launch -> waypoint_loader/waypoint_loader.launch -> waypoint_updater/waypoint_updater.launch -> pure_persuit/pure_persuit.

2024-06-25

使用Docker 配置 LNMP 环境,使用compose一键部署

使用Docker 配置 LNMP 环境,使用compose一键部署 DNMP(Docker + Nginx + MySQL + PHP)是一款全功能的LNMP环境一键安装程序,可多版本 快速使用 本地安装 git Docker docker-compose 2.0.0+ clone 项目 git clone https://github.com/xiaoyu98628/dnmp.git # 或者 git clone https://gitee.com/xiaoyucc521/dnmp.git 拷贝并命名配置文件,启动 (注意:需要设置部分挂载目录的权限) # 进入项目目录 cd dnmp # 复制并改名 .env 配置文件 cp sample.env .env # 复制并改名 compose.yml 配置文件 cp compose.sample.yml compose.yml # 复制并改名 vhost文件 cp servers/panel/vhost/nginx/nginx1.21/localhost.conf.sample servers/panel/vhost/nginx/ng

2024-06-25

研究生数学建模比赛-航班登机口分配(Python)

研究生数学建模比赛-航班登机口分配 “华为杯”第十五届全国研究生数学建模比赛的航班登机口分配问题的解决方案 代码简介 Main.py 项目的主程序; 编写了乘客类、登机口类、飞机类、机场类等模拟了整个飞机落地寻找登机口的过程; 编写了计算结果的可视化函数,包括折线图、柱状图、甘特图等 GA2_params.py 一个遗传算法程序,用以优化参数 merge_table.py 数据预处理的文件,用于连接表格

2024-06-25

计算机专业课(408)思维导图和笔记:计算机组成原理(第五版 王爱英),数据结构(王道),计算机网络(第七版 谢希仁),操作系统

计算机专业课(408)思维导图和笔记:计算机组成原理(第五版 王爱英),数据结构(王道),计算机网络(第七版 谢希仁),操作系统(第四版 汤小丹) 笔记 markdown + png + xmind

2024-06-25

基于Proteus仿真的51单片机电子密码锁

基于Proteus仿真的51单片机电子密码锁 存储器的组成 AT89C51由程序存储器ROM和数据存储器RAM组成。 ROM分为片内和片外 片内ROM为4KB,地址范围0000H~0FFFH; 片外ROM可扩展到64KB。 RAM可分为片内和片外, 片内RAM由128B(00H~7FH)的片内数据寄存器和21个特殊功能寄存器(在80H~FFH中)组成; 片外RAM可扩展到64KB。 2.比较中断服务程序和子程序调用的相同点和不同点 相同: 两者都需要保护断点(即下一条指令地址)、跳至子程序或中断服务程序、保护现场、子程序或中断处理、恢复现场、恢复断点(即返回主程序)。 两者都可实现嵌套,即正在执行的子程序再调另一子程序或正在处理的中断程序又被另一新中断请求所中断,嵌套可为多级。 不同: 服务时间与服务对象不一样。 首先,调用子程序过程发生的时间是已知和固定的,即在主程序中的调用指令(CALL)执行时发生主程序调用子程序,调用指令所在位置是已知和固定的。而中断过程发生的时间一般的随机的,CPU在执行某一主程序时收到中断源提出的中断申请时,就发生中断过程,而中断

2024-06-14

基于socket API之上的跨平台MQTT客户端

基于socket API之上的跨平台MQTT客户端 优势: 具有极高的稳定性:无论是掉线重连,丢包重发,都是严格遵循MQTT协议标准执行,除此之外对大数据量的测试无论是收是发,都是非常稳定,高频测试也是非常稳定。 轻量级:整个代码工程极其简单,不使用mbedtls情况下,占用资源极少,作者曾使用esp8266模组与云端通信,整个工程代码消耗的RAM不足15k。 支持mbedtls加密传输,让网络传输更加安全,而且接口层完全不需要用户理会,无论是否加密,mqttclient对用户提供的API接口是固定的,这就很好的兼容了一套代应用层的码可以加密传输也可以不加密传输。 支持多客户端,同时兼容多个客户端运行工作,一个设备连接多个的服务器。 支持同步异步处理,应用程序无需阻塞等待浪费CPU资源。 支持拦截器配置,在某些平台中,客户端会默认自动订阅系统主题,而且每次来自服务器的主题都是变动的,此时需要使用拦截器进行拦截,分离主题与数据信息,并递交给用户,极大提高灵活性。 拥有在线代码生成工具,极其简单配置就可以生成对应的代码,地址:https://jiejietop.gitee.i

2024-06-14

分布式系统开发环境搭建极速教程(java)

分布式系统开发环境搭建极速教程(java) 本教程旨在帮助学员能够快速完整的搭建一套基于 Dubbo 通信的分布式系统开发环境(仅演示开发环境的搭建过程并不包含相关业务代码)并默认学员已经掌握下列所需知识点: 了解什么是分布式系统 了解什么是微服务架构 了解 VMWare 的基本操作 了解 Linux 常用命令语法 了解 Docker、Docker Compose 的作用及常用命令语法 了解 Maven 的作用及常用命令语法 了解什么是 Dubbo 以及和 Zookeeper 的关系 开发环境 操作系统:Windows 10 企业版 JDK 版本:1.8 IDE 工具:Intellij IDEA 2017 主要技术栈 核心框架:Spring Boot 视图框架:Spring MVC ORM 框架:MyBatis 通信框架:Dubbo 数据库连接池:Druid 模板引擎:Thymeleaf 全文搜索:Solr 数据缓存:Redis 项目构建:Maven 文件系统:FastDFS 消息队列:RabbitMQ

2024-06-14

基于 Spring Boot 编写出的统一返回数据结构处理和统一异常处理的插件

基于 Spring Boot 编写出的统一返回数据结构处理和统一异常处理的插件 使用之前,首先:不要使用Object类型返回,否则返回为null时,不会拦截到** 配置项 # 根注释 veedo: # 统一拦截配置模块 ragdoll: # 统一拦截返回数据结构处理 global-advice: # 是否启用,默认为false enabled: true # 返回统一拦截的包路径,如果没有,则全局返回 basePackages: e1.xxx.xxxx(,ex2,ex3...) # 不需要使用统一拦截的方法名,多个则用逗号链接 ignore-methods: example1(,ex2,ex3...) # 统一异常处理 exception-advice: # 是否启用,默认为false enabled: true # 返回错误时,是否显示真正的错误信息,默认为false # 当设置为true时,RuntimeException

2024-06-14

OpenCV图像处理的信用卡,卡号数字识别

OpenCV图像处理的信用卡,卡号数字识别 信用卡识别项目说明 开发思路 将模板文件与读入的图片进行匹配。 步骤: 模板图片的操作: 读入模板图片 cv2.imread() 将模板图片转换为灰度图 cv2.cvtColor() 然后转换为二值图 cv2.threshold() 做轮廓检测 外轮廓 (要使用图片副本) cv2.findContours() 画出轮廓 cv2.drawContours() 轮廓排序 思路:根据左上角的点坐标进行排序。 遍历每一个模板轮廓。依次将放入集合中。 读入图片的操作: 读入图片 cv2.imread() 重置图片大小 cv2.resize() 将图片转换为灰度图 cv2.cvtColor() 将图片进行礼帽操作,突出更明亮的区域 cv2.morphologyEx(,cv2.MORPH_TOPHAT,) Sobel算子,图像梯度计算,进行边缘检测。cv2.Sobel() 将上一步计算的图像梯度,进行归一化操作。 闭操作 将数字连在一起 cv2.morphologyEx(gradX,cv2.MORPH_CLOSE,rectKernel) 自适应阈值 c

2024-06-14

3个小项目分别是利用 Python 实现报表自动化、某连锁超市、某银行数据分析,展示了问题分解、数据清洗、数据分析与可视化的过程

3个小项目分别是利用 Python 实现报表自动化、某连锁超市、某银行数据分析,展示了问题分解、数据清洗、数据分析与可视化的过程 如下: 1.利用 Python 实现报表自动化 为什么要进行报表自动化 什么样的报表适合自动化 如何实现报表自动化 2.假如你是某连锁超市的数据分析师 哪些类别的商品比较畅销 哪些商品比较畅销 不同门店的销售额占比 哪些时间段是超市的客流高峰期 假如你是某银行的数据分析师 是不是人收入越高的坏账率越低 年龄和坏账率有什么关系 家庭人口数量和坏账率有什么关系

2024-06-12

Python和R语言应用案例,提供1年的图书馆借阅数据,并进行大数据分析

Python和R语言应用案例,提供1年的图书馆借阅数据,并进行大数据分析 在大数据环境下,图书馆及其服务也必将产生新的巨大变化,深层次的服务功能可以通过大数据技术的运用加以实现。主要体现在两个方面:   (1)提供以人为本的个性化服务。在大数据的支持下,髙细腻的个性化服务能够得到更加有效的开展。图书馆可以基于不同个体的个性特点、性格偏好提供定制式的个体服务,如个性化图书推荐。也可根据热门书籍的分析,为图书馆够提供参考信息。通过对读者整体关注的分析,为学校在在课程、教学方面提供参考信息。   (2)图书馆服务的内容将发生变化。传统的图书馆服务提供的是以文献或书籍为图书资源单元的服务,不对资源内容进行进一步处理。大数据环境下,开始向知识服务方向发展。知识服务的内容通过文本挖掘、大数据技术等,从图书资源中分析出更加细致的知识单元,并通过知识单元挖掘图书资源间的内在关系,提供高附加值的信息分析、决策咨询领域、知识问答等高级服务。   仅针对个性化服务方面,列出部分基本的图书馆大数据分析需求:   1.最热门的图书有哪些?   这是一个学生、老师、图书馆都关心的问题。学生关心“我应用学习什么”,

2024-06-12

计算机网络课程设计Lab3,小组实验 兼容CGI的多线程 Web Server

计算机网络课程设计Lab3,小组实验 兼容CGI的多线程 Web Server 简要介绍 兼容CGI的多线程静态、动态Web服务框架。 网站的所有资源放在webroot文件夹下 服务器的工作代码是主目录下的几个.py文件 web-server --源码目录 | ├─ application.py -- 服务逻辑代码 ├─ request.py -- http请求解析类 ├─ response.py -- http回包类 ├─ server.py -- 主函数 ├─ .gitignore ├─ LICENSE ├─ README.md | ├─db -- 数据库文件 │ └─ student.sql | └─webroot -- 网站根目录 ├─ 404.html -- 404默认网页 找不到对应资源 ├─ ERROR.html -- 出现错误的默认网页 ├─ index.html -- 一个网页 ├─ calculator.html -- calculator.py对应的网页 ├

2024-06-12

推荐系统基本知识,相关算法以及实现 (python)

推荐系统基本知识,相关算法以及实现。 目录规划 data 测试用数据集合 py3.x 相关实践的python 实现 spark 相关实践的spark 实现 manual 相关资料集合 paper阅读分享 基础知识分享 内容导航 python 实现(主要用于原理理解) ItemCF(使用sklearn 版本和 不使用sklearn版本) UserCF(使用sklearn 版本和 不使用sklearn版本) LFM Graph—Based Spark 实现 特征工程 ItemCF 计划项(恩 就是挖坑的意思) 推荐算实现 基于用户行为数据的推荐算法 关联规则 LFM Graph ALS 利用用户标签数据推荐算法 LDA TF-IDF TagCF 探索性研究(各个paper的实现) Markov Chain 社交网络 基于深度学习的推荐算法 .... 评价系统实现 推荐系统架构实现 外围架构

2024-06-12

A free, in-browser JSON to CSV converter

A free, in-browser JSON to CSV converter. JSON to CSV Converter A simple JSON to CSV converter that handles objects and nested documents. Conversion happens inside the browser, in straight JavaScript. It may choke on large files. Please file all bugs in the issue tracker. Read more about the converter and why I built it: "Making JSON as simple as a spreadsheet". Public domain This project makes uses of certain externally licensed works, including (but not limited to) Bootstrap, Highlight.js,

2024-06-11

树状图控件,用来展示一个树状图形,数据结构类似TreeView 在企业信息系统里经常会用到,比如公司组织架构,产品BOM"

树状图控件,用来展示一个树状图形,数据结构类似TreeView。在企业信息系统里经常会用到,比如公司组织架构,产品BOM" 特性 根节点位置可调整,整体大小可缩放,节点大小、颜色可修改、可设置进度 avatar 使用方法 TreeView treeView1 = new TreeView(); treeView1.Space = 100; treeView1.NodeWidth = 75; treeView1.NodeHeigth = 35; treeView1.NodeColor = Color.Gray; treeView1.NodeForeColor = Color.Red; TreeNode node = treeView1.InitRootNode("Root", RootNodePosition.Left);//创建根节点 TreeNode A = new T

2024-06-11

Short link 短链接服务器(Go语言开发)

Short link 短链接服务器(Go语言开发) 什么是短链接 就是把普通网址,转换成比较短的网址。比如:https://dwz.cn/XzhYJMkZ 原理解析 当我们在浏览器里输入 https://dwz.cn/XzhYJMkZ DNS首先解析获得 https://dwz.cn/ 的 IP 地址 当 DNS 获得 IP 地址以后,会向这个地址发送 HTTP请求,查询短码 XzhYJMkZ https://dwz.cn/ 服务器会通过短码 XzhYJMkZ 获取对应的长 URL 请求通过 HTTP 301 转到对应的长 URL http://www.baidu.com 本文采用 自增序列算法 + 用户自定义短码 设置 id 自增,一个 10进制 id 对应一个 62进制的数值,1对1,也就不会出现重复的情况。 这个利用的就是低进制转化为高进制时,字符数会减少的特性。 可使用redis Incr 实现id自增。 数据表设计 CREATE TABLE `links` ( `id` int(11) NOT NULL AUTO_INCREMENT, `url` varcha

2024-06-11

基于react的后台管理项目模板(react)

基于react的后台管理项目模板(react) 基于 React 生态系统搭建的后台管理系统模板 此项目为闲暇时间所做,主要是为了熟悉 React 项目的开发流程,打造一个快速开发后台管理系统的模板 既为模板,可能就添加了一些你觉得并不需要的东西,比如菜单栏收缩将判断值存储在 Redux 之中,其实完全可以采用组件传值的方式解决,并不需要引入 Redux 。添加这个东西只是为了方便项目的拓展、展示它的使用方式。当然,如果你不需要,完全可以很简单的移除它们 由于每个管理项目可能会有不同的定制化需求,所以对于模板中的一些功能并没有做完善的封装,比如对 axios 的封装、前端路由权限的控制。当然,结构或者思路已经存在代码之中了,只需要添加具体的业务代码即可 此项目会不断进行优化迭代,后期可能会增加 react-hook 版本 技术栈 React@16.10.1 + React-Router@5.1.1 + Redux@4.0.4 + Antd@3.23.5 + Axios@0.19.0 Create React App 脚手架工具快速搭建项目结构 react-loadable@

2024-06-11

一款免费、开源,使用PHP语言开发的项目管理系统

Jitamin是一款免费、开源,使用PHP语言开发的项目管理系统 功能特性 简洁、美观的界面 支持多主题 可视化的任务管理 支持列表、看板和甘特图等任务视图 可拖拽式的任务操作 支持多语言,内置英文和简体中文语言包 过滤搜索 可创建团队项目和个人项目 支持任务、子任务、附件和评论 动作自动触发 可视化的统计 第三方集成 支持插件 安装环境要求 PHP 5.6或更高(推荐使用PHP7) 数据库, 推荐使用MySQL 或 PostgreSQL。 当然SQLite也可以运行。 Composer 安装手册 一. 克隆代码 假设我们把jitamin部署在 /var/www $ cd /var/www $ git clone https://github.com/jitamin/jitamin.git jitamin $ cd jitamin

2024-06-10

vtags 旨在开发一款在vim/emacs等通用编辑器下, 对verilog/VHDL的设计代码进行类似verdi的信号追踪、

vtags 旨在开发一款在vim/emacs等通用编辑器下, 对verilog/VHDL的设计代码进行类似verdi的信号追踪、显示拓扑等功能的插件,vtags插件完全使用python实现,目前实现了在vim下对verilog设计进行信号追踪、宏定义追踪、显示模块拓扑、快速打开文件、保存和打开vim快照、添加断点等功能。 vtags is a gvim plugin, it's function similar like verdi's trace verilog signal function, this plugin writed by python, currently support: trace signal,macro define trace,show module's topology,quick access,save and opend a snapshort, add checkpiont etc

2024-06-10

《Redis 深度历险》学习笔记与实践(Java)

《Redis 深度历险》学习笔记与实践(Java) 基础和应用 1-2.Redis应用 — Redis基本数据结构 1-3.Redis应用 — 分布式锁 1-4.Redis应用 — 延时队列 1-5.Redis应用 — 位图 1-6.Redis应用 — HyperLogLog 1-7.Redis应用 — 布隆过滤器 1-8.Redis应用 — 简单限流 1-9.Redis应用 — 漏斗限流 1-10.Redis应用 — GeoHash 1-11.Redis应用 — Scan 原理 2-1.Redis原理 — 线程安全模型 2-2.Redis原理 — 通信协议 2-3.Redis原理 — 持久化 2-4.Redis原理 — 管道 2-5.Redis原理 — 事务 2-6.Redis原理 — PubSub 2-7.Redis原理 — 小对象压缩 集群 3-1.Redis集群 — 主从复制 3-2.Redis集群 — Sentinel

2024-06-10

wumei-iot是一套开源的软硬件系统,可用于二次开发和学习,快速搭建自己的物联网/智能家居系统 硬件工程师可以把自己的设备集

wumei-iot是一套开源的软硬件系统,可用于二次开发和学习,快速搭建自己的物联网/智能家居系统。硬件工程师可以把自己的设备集成到系统;软件工程师可以使用项目中的设备熟悉软硬件交互。 服务端使用spring boot、数据库mysql和redis、前端vue、移动端android、硬件端ESP-IDF和Arduino等。软硬件交互基于Mqtt协议,使用EMQ代理服务器。系统架构图如下: 硬件端提供接入文档,需要设备支持网络功能,项目里面包含ESP-IDF和Arduino的硬件代码和接入示例。同时制作了智能开关(wifi通断器)板子,可用于学习和生活中,控制2500W以下的用电设备。硬件完整示例代码采用ESP-IDF框架4.2版本,基于乐鑫ESP32S2芯片,安信可ESP-12K模组 手机、电脑远程控制 遥控配对、清码和控制 空气温湿度监控 雷达感应和报警 220V和5V电压供电,阻性负载2500W,感性负载250W

2024-06-10

基于YOLO的食物卡路里检测系统(源码&部署教程&数据集)

基于YOLO的食物卡路里检测系统(源码&部署教程&数据集) YOLOv7算法简介 YOLOv7 在 5 FPS 到 160 FPS 范围内,速度和精度都超过了所有已知的目标检测器 并在V100 上,30 FPS 的情况下达到实时目标检测器的最高精度 56.8% AP。YOLOv7 是在 MS COCO 数据集上从头开始训练的,不使用任何其他数据集或预训练权重。 相对于其他类型的工具,YOLOv7-E6 目标检测器(56 FPS V100,55.9% AP)比基于 transformer 的检测器 SWINL Cascade-Mask R-CNN(9.2 FPS A100,53.9% AP)速度上高出 509%,精度高出 2%,比基于卷积的检测器 ConvNeXt-XL Cascade-Mask R-CNN (8.6 FPS A100, 55.2% AP) 速度高出 551%,精度高出 0.7%。

2024-06-09

2020春哈工大操作系统实验环境一键配置

2020春哈工大操作系统实验环境一键配置 增加了对Arch系发行版的支持 更新了Bochs模拟器版本到2.6.10(最新版2.6.11在Linux下有重大BUG) 更新了Bochs的BIOS和VGABIOS到最新版本 修正了Bochs的配置文件(老版本的配置文件无法在新版Bochs上使用) 重写了setup脚本,自动安装上了运行所需的依赖 借鉴deathking增加了还原脚本 修正了run、setup等脚本中的一些小错误 增加了C语言级调试的CGDB调试器支持 环境 本脚本适用于Linux的Debian系发行版和Arch系发行版,Debian系发行版包括但不限于Debian、Deepin 15、Ubuntu及其衍生版本,Arch系发行版包括但不限于Arch Linux、Manjaro及其衍生版本。 本脚本已在Ubuntu 18.04、Ubuntu 20.04、Deepin v15、Elementary OS和Manjaro下完成测试。 最新: 完成了在Windows Subsystem for Linux 2(WSL2)中的测试! 注意,WSL2 的内核不支持 minix 文件

2024-06-09

基于consul的分布式锁工具,包含:互斥锁、信号量等工具

基于consul的分布式锁工具,包含:互斥锁、信号量等工具 基于Consul的分布式锁工具 在构建分布式系统的时候,我们经常需要控制对共享资源的访问。这个时候我们就涉及到分布式锁(也称为全局锁)的实现,本项目将基于Consul的KV存储来实现一套Java的分布式锁小工具,以帮助简化分布式环境下的同步操作。 目前该工具实现了两个小功能:分布式互斥锁和信号量。 分布式互斥锁 ConsulClient consulClient = new ConsulClient("localhost", 8500); // 创建与Consul的连接 CheckTtl checkTtl = new CheckTtl("checkId", consulClient); // session的健康检查,用来清理失效session占用的锁 Lock lock = new Lock(consulClient, "lockKey", checkTtl); try { // 获取分布式互斥锁 // 参数含义:是否使用阻塞模式、每次尝试获取锁的间隔500ms、尝试n次 if (lock.lock

2024-06-09

神经网络的实现,包括bp神经网络和rbf神经网络

神经网络的实现,包括bp神经网络和rbf神经网络 MachineLearning_Ass2 神经网络的实现,包括bp神经网络和rbf神经网络 神经网络的实现,包括bp神经网络和rbf神经网络

2024-06-09

嵌入式系统通用驱动程序接口及其实现-Spi设备驱动程序

嵌入式系统通用驱动程序接口及其实现-Spi设备驱动程序 嵌入式系统通用驱动程序接口及其实现-SPI驱动程序 此接口为具体项目中: 需要SPI通讯时,提供统一的操作函数。 文件说明: SpiDev.h:Spi多例化统一接口 各MCU实现: SpiDev_Lpc_ARM 在NXP LPC硬件SPI上的实现 SpiDev_Avr: 在AVR上的实现 SpiDev_Pic: 在PIC16F19系列上的实现 SpiDev_Soft: 使用IO模拟时的实现。 Sip_Cs1: 各MCU对应实现中的片选控制,仅1个设备时 软件结构说明: 此接口含以下几大部分 SPI设备驱动程序部分: SPI通用操作接口: 即对外接口调用文件:SpiDev.h ,其它软件部分操作SPI时,包含此文件即可。 SPI操作接口的各种实现: 以*SpiDev(下横线_)SPI硬件名称(或载体)(下横线_)专用编译环境(可选,严重不建议代码与编译环境相关连)*命名, 与具体使用的SPI硬件的接口有关,即有各种不同的实现。但一种硬件仅实现一次,项目中需要那个加入那个即可,具有通用性(实现时需尽量排除编译器影响,使一个SPI驱动

2024-06-08

哈工大软件学院编译原理实验(Python实现)

哈工大软件学院编译原理实验(Python实现) 哈工大软件学院编译原理实验(Python实现) 这是我用Python实现的版本,没有图形界面,其中lexer.py, parser.py, sema.py,分别是词法分析,句法分析和语义分析。可以参考

2024-06-08

基于改进YOLOv7&OpenCV的行人过马路速度与交通灯实时监测系统(源码&教程)

基于改进YOLOv7&OpenCV的行人过马路速度与交通灯实时监测系统(源码&教程) 研究背景 横穿马路的行人运动速度太快、太慢或者突变都可能影响驾驶者的判断,从而导致交通事故。车载辅助系统应能够在交通路口为驾驶者提供异常行人的速度预判信息。文献[1-2]通过对不同红绿灯情形进行建模分析并实际采集某路段的交通视频,分析红绿灯与行人穿越马路的方式对行人安全性的影响,这种方法主要研究交通环境与行人安全的关系,受实际环境的影响较大。文献[3]同样以分析交通环境为主,主要研究夜间情况下交通信号灯的控制方案与行人车辆碰撞冲突的关系,通过实地采集交通数据,研究能保证行人安全和车辆正常通行的交通信号配时方案。文献[4]将关注点集中在人的头部,通过判断头部姿态预测行人可能的运动方向,将运动方向会与车辆发生冲突的行人判定为危险行人。传统算法检测速度较慢同时鲁棒性差,因此本文提出一种结合传统OpenCV算法的改进YOLOv7行人过马路速度与交通灯实时监测系统,为交通管理问题提供解决方案。

2024-06-08

基于consul的分布式锁工具,包含:互斥锁、信号量等工具

基于consul的分布式锁工具,包含:互斥锁、信号量等工具 基于Consul的分布式锁工具 在构建分布式系统的时候,我们经常需要控制对共享资源的访问。这个时候我们就涉及到分布式锁(也称为全局锁)的实现,本项目将基于Consul的KV存储来实现一套Java的分布式锁小工具,以帮助简化分布式环境下的同步操作。 用方法 目前该工具实现了两个小功能:分布式互斥锁和信号量。 分布式互斥锁 ConsulClient consulClient = new ConsulClient("localhost", 8500); // 创建与Consul的连接 CheckTtl checkTtl = new CheckTtl("checkId", consulClient); // session的健康检查,用来清理失效session占用的锁 Lock lock = new Lock(consulClient, "lockKey", checkTtl); try { // 获取分布式互斥锁 // 参数含义:是否使用阻塞模式、每次尝试获取锁的间隔500ms、尝试n次 if (lock.lo

2024-06-07

基于改进YOLO的玉米病害识别系统(部署教程&源码)

基于改进YOLO的玉米病害识别系统(部署教程&源码) 研究背景与意义 近年来,农业科技的快速发展为农作物的种植和管理带来了许多便利。然而,农作物病害的防治仍然是一个全球性的挑战。玉米作为世界上最重要的粮食作物之一,受到了许多病害的威胁,如玉米灰斑病、玉米穗腐病等。这些病害不仅会导致玉米产量的大幅下降,还会对农民的经济收入和食品安全造成严重影响。 传统的玉米病害识别方法主要依赖于人工观察和经验判断,这种方法存在着主观性强、效率低下和准确性不高的问题。因此,开发一种基于计算机视觉技术的自动化玉米病害识别系统具有重要的研究意义和实际应用价值。 目前,深度学习技术在计算机视觉领域取得了巨大的突破,特别是目标检测领域。YOLO(You Only Look Once)是一种基于深度学习的实时目标检测算法,具有快速、准确和端到端的特点。然而,由于YOLO算法在小目标检测和密集目标检测方面的性能相对较差,对于玉米病害这种小尺寸和高密度的目标,传统的YOLO算法可能无法满足需求。 因此,本研究旨在改进YOLO算法,提高其在玉米病害识别中的性能。具体而言,我们将探索以下几个方面的改进: 数据集构

2024-06-07

空空如也

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

TA关注的人

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