- 博客(10)
- 收藏
- 关注
原创 docker,Dockerfile,docker-compose笔记
【代码】docker,Dockerfile,docker-compose笔记。
2024-06-28 11:28:39
162
原创 并发编程(进程、线程、死锁)
进程是一个程序的实例,是操作系统分配资源和调度的基本单位。每个进程都有独立的内存空间。适合需要强隔离的任务。线程是进程中的一个执行单元,是CPU调度的基本单位。一个进程可以包含多个线程,这些线程共享进程的内存空间。适合需要轻量级并发的任务。协程是一种更加轻量级的线程,可以在一个线程内实现并发。协程由程序员手动调度,而非操作系统。适合I/O密集型任务和需要大量并发的场景。在同一时间段内,多个任务(共享资源)在一个或多个处理器上交替进行执行。
2024-06-25 16:34:13
397
原创 面向对象、设计原则、设计模式、编程规范、重构
对象负责自身的行为和状态,符合面向对象编程的思想,强调对象的封装、内聚性和自我管理。继承建立了一种紧密耦合的关系,使得子类的行为受到父类的强烈影响,限制了灵活性。基本的编码规范,比如,如何给变量、类、函数命名,如何写代码注释,函数不宜过长、参数不能过多等等。组合:通过组合对象来实现复杂功能,可以避免深层次的类继承结构,保持代码的简单和清晰。组合:是一种将对象组合在一起,以构建更复杂的对象的方法。是一种“has-a”关系。组合:通过组合独立的对象来构建新的功能,不同对象之间的依赖关系较低,可以独立变化。
2024-06-25 15:53:21
667
原创 旧手机安装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
1837
原创 Docker使用nginx部署VUE项目
本文主要记录了用docker部署vue项目的过程,使用docker和docker-compose两种部署方法,部署难度主要在于理解nginx的配置文件和Dockerfile文件的编写。
2023-05-02 22:13:35
1872
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
3131
4
原创 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
1009
原创 vue前端上传头像显示,python后端接收并保存
1.前端vue代码,上传头像图片并显示,点击按钮发送到后端。2.python后端接收图片并保存。
2023-01-11 22:26:34
762
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人