- 博客(55)
- 收藏
- 关注
原创 python桌面工具
打开后默认跳到确认字段类型窗口,如果不是自己想要的类型,可以通过下拉框进行选择。如果此时觉得字段类型选择错了,可以点击类型转换菜单进行重新选择。如果想保存当前SQL,可以选择菜单中的SQL导出。选择菜单中Json转Excel,弹出选择文件窗口。确认之后就会生成sql语句,全选复制即可。点击选择想要转成sql的excel。打开后跳出保存xlsx文件的窗口。选择合适位置以.sql结尾保存。功能二:json转excel。程序入口main.exe。打开excel文件,如下。功能一:Excel导入。
2024-12-06 16:44:01
429
原创 docker部署Flask+Vue3项目
将sql文件传入/data/dockerData/mysql/data文件夹。解决页面引入本地图片可能出现无法加载问题。Dockerfile文件内容。解压进入项目目录中,构建镜像。解压进入项目目录中,构建镜像。my.config文件内容。创建pub-use.js。
2024-10-31 16:11:34
691
1
原创 flask发送邮件
MAIL_DEFAULT_SENDER:默认的发送者。点击开启发送验证后会收到一个密钥,记得保存好。MAIL_PASSWORD:上面获得的密钥。MAIL_USE_SSL:使用SSL。MAIL_SERVER:邮件服务器。MAIL_USERNAME:用户名。recipients:接收者。MAIL_PORT:端口。subject:邮件标题。
2024-10-09 17:10:37
628
原创 flask项目框架搭建
Flask的app.py文件是Flask框架中的核心应用程序类App的实现,包含了Flask应用程序的基本结构和核心功能。 exts.py文件通过集中管理第三方库的导入,避免了在主程序和其他文件之间形成循环引用,从而简化了代码结构并提高了代码的可维护性。扩展初始化:初始化Flask扩展,如SQLAlchemy、Werkzeug、Jinja2等,以添加额外的功能和支持。请求/响应处理:实现请求和响应的处理方法,包括路由函数、错误处理函数、视图方法等。数据库迁移产生的包,其中包含迁移的脚本。
2024-10-09 16:39:32
817
原创 学习Flask框架
Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2。Flask使用 BSD 授权。Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。
2024-10-08 18:19:13
1035
原创 python并发编程实战
cpu密集型也叫计算密集型,是指I/O在很短的时间就可以完成,cpu需要大量的计算处理,特点是cpu占用率相当高。IO密集型指的是系统运作大部分的状态是CPU在等I/O(硬盘/内存)的读/写操作,cpu占用率仍然较低。新建线程系统需要分配资源、终止线程系统需要回收资源,如果可以重用线程,则可以减去新建/终止的开销。由于线程的执行随时会发生切换,就造就了不可预料的结果,出现线程不安全。用法1:map函数,简单,注意map的结果和入参时顺序对应的。因为在I/O期间,线程会释放GIL,实现CPU和IO的并行。
2024-09-29 18:29:45
1596
原创 python socket编程
socket(套接字)是进程间通信的工具,好比现实生活中的插座,所有家电想要工作都是基于插座进行,进程之间想要进行网络通信需要socket。socket服务端:等待其他进程的连接、可接收发来的消息、可以回复消息。2个进程之间通过socket进行互相通讯,就必须有服务端和客户端。socket客户端:主动连接服务端、可以发送消息、可以接收回复。socket负责进程之间的网络数据传输,好比数据的搬运工。
2024-09-29 18:28:42
408
原创 python socket编程
socket(套接字)是进程间通信的工具,好比现实生活中的插座,所有家电想要工作都是基于插座进行,进程之间想要进行网络通信需要socket。socket服务端:等待其他进程的连接、可接收发来的消息、可以回复消息。2个进程之间通过socket进行互相通讯,就必须有服务端和客户端。socket客户端:主动连接服务端、可以发送消息、可以接收回复。socket负责进程之间的网络数据传输,好比数据的搬运工。
2024-09-27 16:29:00
376
原创 python多线程
线程之间是内存共享的,线程是属于进程的,一个进程内的多个线程之间是共享这个进程所拥有的内存空间的。进程:就是一个程序,运行在系统之上,那么便称之为这个程序为一个运行进程,并分配进程ID方便系统管理。进程之间是内存隔离的,即不同的进程拥有各自各的内存空间。线程:线程归属于进程的,一个进程可以开启多个线程,执行不同的工作,是进程的实际工作最小单位。进程之间就是并行执行的,操作系统可以同时运行好多程序,这些程序都是在并行执行。并行执行的意思指的是同一时间做不同的工作。除了进程外,线程其实也是可以并行执行的。
2024-09-27 15:08:58
356
原创 python单例和工厂模式
在Python中,call()是一个特殊方法,用于将一个类的实例变成一个可调用对象。从原生的使用类的构造去创建对象的形式迁移到基于工厂提供的方法去创建对象的形式。某些场景下,我们需要一个类无论获取多少次类对象,都仅仅提供一个具体的实例。使用工厂类的get_person()方法去创建具体的类对象。发现两个内存地址是不同的,即t1和t2是两个独立的对象。当需要大量创建一个类的实例的时候,可以使用工厂模式。设计模式是一种编程套路,可以极大的方便程序的开发。创建类的实例后,可以得到一个完整的、独立的类对象。
2024-09-27 11:06:52
655
原创 解决Typora图片复制到优快云无法查看问题
山东大学镜像源:https://mirrors.sdu.edu.cn/github-release/Molunerfinn_PicGo。注意:设定存储区域只需要填写到区域前缀即可。设定bucket填入创建bucket名称。选择PicGo的程序位置。
2024-09-26 20:56:03
370
原创 python面向对象三大特性
然后继承的时候先继承Phone,所以print(phone.producer)打印的时候打印出的是Phone中的producer的值。既然现实事物有不公开的属性和方法,那么作为现实事物在程序中映射的类,也应该支持。封装表示:将现实世界事物的属性和行为,封装到类中,描述成为成员变量和成员方法。pass是占位语句,保证函数、方法、类的完整性,表示无内容,空的意思。多态指的是多种状态,即完成某个行为,使用不同的对象会得到不同的状态。也是对子类的一种软性约束,要求子类必须重写(实现)父类的一些方法。
2024-09-26 18:31:06
1118
原创 python高级用法_闭包
在函数嵌套的前提下,内部函数使用了外部函数的变量,并且外部函数返回了内部函数,我们把这个使用外部函数变量的内部函数称为闭包。由于内部函数持续引用外部函数的值,所以会导致这一部分内存空间不被释放掉,一直占用内存。如果想要在内部函数中修改外部函数的变量,使用nonlocal。首先向外部函数传参,并返回内部函数。fn1 = outer(“中国”)fn1(“江苏省”)
2024-09-26 11:02:26
388
原创 k8s_资源管理介绍
在k8s中,所有内容都抽象成资源,用户需要通过操作资源来管理k8sk8s本身就是一个集群系统,用户可以在集群中部署服务,在k8s集群中运行一个个的容器,将指定的程序部署到容器中k8s最小的管理单元是pod,所以只能将容器放在pod中,k8s不会直接管理pod,是通过pod管理器来管理pod提供服务之后,需要考虑如何访问pod中的服务,k8s提供service资源来实现这个功能,pod还需要持久化,k8s还提供了各种储存资源。
2024-09-25 23:12:40
541
原创 python操作mysql数据库
在dos窗口输出:pip install pymysql -i 国内源。因为pip连接的国外源地址,所以可能下载缓慢,可以使用国内镜像地址。插入语句需要进行确认操作,需要使用commit方法。另外修改和删除语句都需要进行commit。1.使用pip或者pip3命令行安装。2.在pycharm中安装。
2024-09-25 16:51:18
871
原创 python常见的魔术方法
Python类的内置方法,各自有各自的特殊功能,被称之为魔术方法__init__ : 构造方法__str__ : 字符串方法__lt__ : 小于、大于符号比较__le__ : 小于等于、大于等于符合比较__eq__ : 等于符合比较__init__负责创建对象时初始化对象,给成员变量赋值初始值__str__如果没有__str__方法,打印类的对象是内存地址print(stu)结果:当添加__str__方法。
2024-09-25 15:14:46
510
原创 Kubeadm安装k8s集群
在k8s-node1和k8s-node2中执行如下命令,加入node节点。将桥接的ipv4流量传递到iptables的链(三台机器都执行)在master节点中添加hosts(只在master节点执行)下载calico配置文件(在master节点上执行)关闭交换分区swap(三台机器都执行)关闭selinux(三台机器都执行)设置主机名(分别对应三台机器上执行)报错,缺少目录(在所有节点上执行)关闭防火墙(三台机器都执行)节点的状态是NotReady。2核、2G内存、20G硬盘。时间同步(三台机器都执行)
2024-09-21 23:47:00
1519
原创 Python文件读取
readlines可以按照行的方式把整个文件的内容一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素。num表示要从文件中读取的数据长度,如果没有传入num,那么就读取文件所有的数据。通过with open语句块对文件操作后可以自动关闭close文件,避免遗忘。使用open()可以打开一个已经存在的文件,或者创建一个新文件。mode:设置打开文件的模式:只读、写入、追加等。name:打开文件的文件名,也可以包含具体路径。readlines()方法。readline()方法。
2024-09-19 16:37:35
304
原创 认识Kubernates
k8s是一个开源的,用于管理云平台中多个主机的容器化的应用,目标是让部署容器化的应用简单并且高效,k8s提供了应用部署,规划,更新,维护的一种机制。
2024-09-19 11:13:36
405
原创 Redis集群_cluster
通过某cluster集群是由六台redis服务器组成的,那么每台服务器上也会被平均分配一定数量的的哈希槽,此外,cluster集群里也支持主从复制,即分配到一定数量哈希槽的redis服务器也可以携带一个或多个从节点。由于通过redis-server启动redis服务器时传入了cluster-m1.conf的配置文件,因此redis-m1自动加入了该集群,此时集群中只有这一个节点。等三个主节点分配完槽之后,查看redis-m1状态。进入redis-m1容器中,执行命令。设置主从关系命令,到从节点中执行。
2024-09-14 17:39:09
961
原创 Redis集群_哨兵模式
一般来说,哨兵机制会和主从复制模式整合使用,在基于哨兵的模式里会在一台或者多台服务器上引入哨兵进程,这些节点也叫做哨兵节点哨兵节点一般不存储数据,它的作用是监控主从复制模式的主服务器节点,当哨兵节点监控的主服务器发生故障时,哨兵节点会主导“故障自动修复”的流程哨兵节点会在该主服务器下属的从服务器里面选举一个新的主服务器,并完成相应的数据和配置更改等动作如果采用这种模式,可以让故障自动修复,从而提升系统的可用性。
2024-09-12 15:56:29
603
原创 Redis集群_主从复制
这里用docker容器搭建一主二从的集群,在配置主从关系时,需要在从节点上使用slaveof命令。准备redis-slave1和redis-slave2配置文件。这里因为在一台机器上,所以需要配置不同的端口。从节点二创建也和上面类似,注意端口和配置即可。这里的ip 端口就是主节点的ip 端口。另一个从节点和以上操作一样,注意端口。使用slaveof配置从属关系。连接redis并查看从属关系。在主节点上创建几个值。
2024-09-12 11:07:20
519
原创 Redis_RDB持久化
注意:这三个条件是“或”的关系,即只要有一个条件被满足,就会生成快照,从中能看出,rdb持久化文件只是当条件满足后生成快照,所以无法即时保存当前状态的内存数据。也就是说,通过rdb恢复数据时,会丢失上次生成快照后更新的数据。第二行:表示当在300秒内有大于或者等于100个键被修改时就会生成快照。第三行:表示当在60秒内有大于或者等于1000个键被修改时就会生成快照。第一行:表示当在600秒内有一个或者一个以上的键被修改时就会生成快照。查看是否生成redis.rdb文件。检查redis是否启动。
2024-09-11 11:16:15
950
原创 Redis_AOF持久化
通过no-appendfsync-on-rewrite参数来平衡性能和安全性:如果该参数取值为yes,那么在重写AOF文件时能提升性能,但可能在重写AOF文件时丢失数据如果取值为no,则不会丢失数据,但较取值为yes的性能可能会降低。Redis能创建新的AOF文件来替代现有的,在数据恢复时,这两个文件的效果是相同的,但新文件不会包含冗余命令,所以文件大小会比原来的小,可以通过如下三个参数来定义重写时的策略。执行完上述步骤后,其实就达到了“根据AOF日志文件恢复redis现场”的持久化效果。
2024-08-29 10:52:08
913
原创 centos7系统redis安装
若要使用后台启动,需要修改配置文件redis.conf,此文件在解压后的redis安装包下。使用RedisDesktopManager可视化工具。默认安装在/usr/local/bin目录下。
2024-08-28 15:45:58
194
原创 docker网络基本使用
不指定网卡的情况下,默认使用docker0网卡docker inspect app1可以看出在容器app1内部,通过容器ip加端口就可以直接访问,当然也可以通过宿主机的ip加外部端口访问到app2,如下:只不过这种方式流程比较长启动容器加入自定义网络测试:进入app1访问app2的页面这时候就可以通过容器名访问到页面,可以不用担心app2的ip变化了
2024-08-28 11:14:14
218
原创 docker存储
和目录挂载不同的是,卷映射在创建容器时直接同步容器内部的目录下数据到外部固定位置。进入容器内部查看并修改nginx.conf文件。此时以外部的nginxhtml的内容为准。docker inspect 容器id。从容器内部修改index.html。从容器外部修改nginx配置文件。在外部创建index.html。再到容器外部查看数据是否同步。外部的文件同样也自动修改了。nginxconf是卷名。
2024-08-27 22:56:28
184
原创 docker基本操作
docker restart 容器id。docker logs -f 容器id。重启:docker restart。docker stats 容器id。docker rm -f 容器id。docker stop 容器id。启动:docker start。状态:docker stats。停止:docker stop。日志:docker logs。进入:docker exec。docker rm 容器id。运行:docker run。查看:docker ps。删除:docker rm。
2024-08-27 15:40:38
361
原创 linux安装python3.7
参考优秀博主:https://blog.youkuaiyun.com/shgh_2004/article/details/131273042。python2和python3环境共存。
2024-08-06 11:09:13
867
原创 playbook+roles安装mysql实战
到playbook-all-roles.yml同级目录执行,没有报错就没有问题。注意:除了main.yml文件必须要有,其他yml文件按需自定义名。代表着nginx这个role,里面存放着各种配置文件。用于指定执行哪个role的文件(命名可以自定义)修改mysql临时密码以及设置访问权限脚本。注意:只能定义成main.yml文件名。hosts文件内容如下:(仅供参考)文件内容如下:(仅供参考)用于存放各种类型的role。文件内容如下:(仅供参考)安装mysql,并启动。用于存放主机清单文件。
2024-08-02 14:19:56
866
prometheus相关资源
2024-07-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人