- 博客(17)
- 收藏
- 关注
原创 Spring Boot 实现高效文件上传:分片上传、MD5校验、线程池处理高并发
在现代web应用中,文件上传是一个常见而重要的功能。本文将介绍如何使用Spring Boot实现高效的文件上传,重点关注前端的分片上传技术以及后端使用多线程处理高并发文件上传的策略。
2024-09-26 18:37:48 375
原创 Redis 面试笔记
Redis——缓存穿透、缓存击穿、缓存雪崩、读写策略、持久化、数据过期策略、数据淘汰策略、分布式锁、主从集群、分片集群、为什么那么快
2024-09-01 00:47:01 1078 2
原创 docker,Dockerfile,docker-compose笔记
【代码】docker,Dockerfile,docker-compose笔记。
2024-06-28 11:28:39 185
原创 并发编程(进程、线程、死锁)
进程是一个程序的实例,是操作系统分配资源和调度的基本单位。每个进程都有独立的内存空间。适合需要强隔离的任务。线程是进程中的一个执行单元,是CPU调度的基本单位。一个进程可以包含多个线程,这些线程共享进程的内存空间。适合需要轻量级并发的任务。协程是一种更加轻量级的线程,可以在一个线程内实现并发。协程由程序员手动调度,而非操作系统。适合I/O密集型任务和需要大量并发的场景。在同一时间段内,多个任务(共享资源)在一个或多个处理器上交替进行执行。
2024-06-25 16:34:13 424
原创 面向对象、设计原则、设计模式、编程规范、重构
对象负责自身的行为和状态,符合面向对象编程的思想,强调对象的封装、内聚性和自我管理。继承建立了一种紧密耦合的关系,使得子类的行为受到父类的强烈影响,限制了灵活性。基本的编码规范,比如,如何给变量、类、函数命名,如何写代码注释,函数不宜过长、参数不能过多等等。组合:通过组合对象来实现复杂功能,可以避免深层次的类继承结构,保持代码的简单和清晰。组合:是一种将对象组合在一起,以构建更复杂的对象的方法。是一种“has-a”关系。组合:通过组合独立的对象来构建新的功能,不同对象之间的依赖关系较低,可以独立变化。
2024-06-25 15:53:21 697
原创 旧手机安装postmarketOS的简单设置,安装1Panel
1Panel在alpine linux中直接安装会出错,因为alpine不是用systemd进行服务管理的,所以需要修改安装脚本中的服务管理方式。1.下载安装包,新建一个shell脚本quick_start.sh,用bash quick_start.sh命令运行,注意给脚本运行权限。3.运行/bin/bash install.sh执行安装,安装过程按正常安装流程即可。
2023-06-25 01:54:57 2095
原创 Docker使用nginx部署VUE项目
本文主要记录了用docker部署vue项目的过程,使用docker和docker-compose两种部署方法,部署难度主要在于理解nginx的配置文件和Dockerfile文件的编写。
2023-05-02 22:13:35 2680 2
原创 Debian Linux使用小米球Ngrok内网穿透
2.下载linux_arm版的文件,并修改填入自己的token,然后复制文件到debian的/usr/local/xiaomiqiu路径下。找到刚才运行的进程,并记住其id,有些可能找不到,直接输入ps查看所有进程,找到上方的进程并记住id。使用上面的地址进入测试,看是否穿透成功,穿透部分到此结束。4.启动小米球,查看并记住其中地址,测试是否能访问。1.小米球官网注册获得token并开通隧道。5.ctrl+c退出当前进程,使用后台运行。7.关闭进程,id填刚才的进程id。
2023-03-30 15:21:52 3563 5
原创 Python数据库操作错误:ValueError: unsupported format character ‘Y‘ (0x59) at index 89
ValueError: unsupported format character 'Y' (0x59) at index 89
2023-01-12 21:26:18 1063
原创 vue前端上传头像显示,python后端接收并保存
1.前端vue代码,上传头像图片并显示,点击按钮发送到后端。2.python后端接收图片并保存。
2023-01-11 22:26:34 808
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人