自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 收藏
  • 关注

原创 5、PostgreSQL之数据定义

划分指的是将逻辑上的一个大表分成一些小的物理上的片。在某些情况下查询性能能够显著提升,特别是当那些访问压力大的行在一个分区或者少数几个分区时。划分可以取代索引的主导列、减小索引尺寸以及使索引中访问压力大的部分更有可能被放在内存中。当查询或更新访问一个分区的大部分行时,可以通过该分区上的一个顺序扫描来取代分散到整个表上的索引和随机访问,这样可以改善性能。如果需求计划使用划分设计,可以通过增加或移除分区来完成批量载入和删除。执行或者使用DROP TABLE删除一个单独的分区都远快于一个批量操作。

2024-07-19 15:48:50 402

原创 4、PostgreSQL数据类型

name text,一个数组数据类型可以通过在数组元素的数据类型名称后面加上方括号[])来命名。

2024-07-19 15:48:18 306

原创 3、PostgreSQL之高级特性

之前我们查询过城市的天气情况,假设天气记录和城市位置的组合列表对我们的应用有用,但我们又不想每次需要使用它时都敲入整个查询。我们可以在该查询上创建一个对视图的使用是成就一个好的SQL数据库设计的关键方面。视图允许用户通过始终如一的接口封装表的结构细节,这样可以避免表结构随着应用的进化而改变。视图几乎可以用在任何可以使用表的地方。

2024-07-18 18:13:38 1094

原创 2、PostgreSQL之基本的SQL语言

PostgreSQL之基本的SQL语言在上一篇文章中,我们已经安装好了PostgreSQL,并且能够通过psql访问数据库,以及远程访问数据库。下面就来介绍一些PostgreSQL的基本操作。1、创建一个新表在psql中输入以下命令:CREATE TABLE weather ( city varchar(80), temp_lo int, -- 最低温度 temp_hi int, -

2024-07-18 18:12:29 930

原创 pyinstaller 打包基于PyQt5和PaddleOCR的项目为.exe

如果打包没问题,运行exe报错,大概率就是有项目需要的库没有打包进来。所以我们百度百度,是什么包没有导入,我们手动复制进去就好了。

2024-07-17 23:17:35 1490

原创 1、PostgreSQL安装

PostgreSQL是一个免费的对象·关系型数据库服务器(ORDBMS),在灵活的BSD许可证下发行.PostgreSQL开发者把它念作post-gress-Q-L。PostgreSQL的Slogan是“世界上最先进的开源关系型数据库”。“开源界的Oracle”,去O首选。

2024-07-17 22:20:19 401

原创 9、Redis之哨兵

​ 对于Master宕机后的冷处理方式是无法实现高可用的。Redis从2.6版本开始提供了高可用的解决方案–Sentinel哨兵机制。在集群中再引入一个节点,该节点充当Sentinel哨兵,用于监视Master的运行状态,并在Master宕机后自动指定一个Slave作为新的Master。整个过程无需人工操作,完全由哨兵自动完成。​ 不过,此时的 Sentinel 哨兵又成为了一个单点故障点:若哨兵发生宕机,整个集群将瘫 痪。

2024-07-17 22:19:01 1114

原创 8、Redis之数据同步

​ Redis2.8版本之前,首次通信成功后。slave会向master发送sync数据同步请求。然后master就会将其所有数据全部发送给slave,由slave保存到其本地持久化文件中。这个过程称为全量复制。​ 但在这里存在一个问题,在全量复制过程中会存在网络抖动而导致数据复制过程中断。当网络恢复后,slave与master重新建立连接,此时slave会重新发送sync请求,然后重新进行全量复制。​ 由于全量复制整个过程是非常消耗时间的,所以出现网络抖动的概率很高。

2024-07-07 16:24:06 1020

原创 7、Redis主从复制过程

​ 在 slave 数据同步过程中,master 的主进程仍在不断地接受着客户端的写操作,且不仅将新的数据写入到了 master 内存,同时也写入到了同步缓存。当 master 的持久化文件中的数据发送完毕后,master 会再将同步缓存中新的数据发送给 slave,由 slave 将其写入到本地持久化文件中。如果验证成功,则向 slave 发送连接成功响应。​ 当 slave 与 master 的数据同步完成后,slave 就会读取本地的持久化文件,将其恢复到本地内存,然后就可以对外提供读服务了。

2024-07-07 16:23:30 199

原创 6、Redis之主从集群搭建

​ Redis的主从集群是一个”一主多从“的读写分离集群.集群中的Master节点负责客户端的读写请求,而Slave节点负责客户端读请求。之所以要将集群搭建为读写分离模式,主要是因为,对于数据库集群,写操作压力一般较小,读压力更大。所以只有一个节点负责处理写请求操作即可。

2024-07-06 18:20:20 465

原创 5、RDB与AOF对比

RDB文件小数据恢复快。

2024-07-06 18:19:18 158

原创 2、Key的层级结构

Redis的key允许有多个单词形成层级结构,多个单词之间用’:'隔开。product相关的key:project:product:1。user相关的key:project:user:1。

2024-07-05 21:58:08 166

原创 1、Reids之基础

Redis是一个key-value的数据库,多样:(未列全)

2024-07-05 21:56:43 896

原创 模拟QQ聊天界面遇到的问题:关于PyQt5 GUI模块不允许在多线程中进行操作的解决办法

今天想要使用PyQt5结合Websocket实现一个小小的QQ聊天界面。介绍一下我实现这个功能的:GUI界面运行起来后,创建一个线程去连接Websocket服务器,然后主界面类中实现了websocket的基本回调函数。比如,发送消息的回调函数send_message、接收消息的回调函数on_message等等。当接收到消息时,会在线程中调用on_message函数来对接收到的消息进行处理。原本我计划是在这个回调函数中进行对界面上的聊天消息界面进行更新的。结果就在这里遇到了这个问题,阻挡了我前进的步伐。

2024-07-02 18:10:44 557

原创 django后台登录:Forbidden (403) CSRF verification failed.

next=/admin/ 请求方法: POST 状态代码: 403 Forbidden。如果您的Django站点后面有代理服务器(如Nginx或Apache),请确保代理正确设置了HTTP头信息,如。前面的方法都尝试过了,没有作用。

2024-06-24 22:19:15 317

原创 Python脚本上传静态资源文件到minio,并指定每个资源文件的content_type进行上传

【代码】Python脚本上传静态资源文件到minio,并指定每个资源文件的content_type进行上传。

2024-06-12 19:34:55 144

原创 Django自定义CSS

【代码】Django自定义CSS。

2024-06-11 22:04:25 375

原创 修改添加数据界面的布局

但是,如果你只是想简单地调整字段的布局和顺序,而不涉及复杂的HTML或JavaScript,那么使用。在Django admin中修改添加数据界面的布局通常涉及到自定义模板或重写。

2024-06-11 22:00:13 258

原创 UBuntu18.04通过ODBC连接MySQL远程数据库

今天在做一个Qt视频播放器的小项目然后想要在ubuntu18.04运行这个项目,需要在Qt中连接远程的MySQL数据库,所以用到了ODBC。我在连接时遇到了一些问题,加之网上的教程各说纷纭,所以我花了很多时间去解决,所以决定做做笔记记录下来。指定驱动程序的路径为"/usr/local/lib/libmyodbc8w.so"。这里需要注意版本的选择,我就因为版本的原因卡卡了很久(我之前下载的是最新版的)指定驱动程序的名称为"MySQL ODBC 8.0 Driver",步骤二、安装mysql odbc驱动。

2024-04-14 00:16:08 465

原创 Failed to build dlib ERROR: Could not build wheels for dlib, which is required to install pyproject.

最后分发现需要自己造轮子:但是编译过程比较复杂,造好的轮子在该网站下载都是要米的,这一点很不好。然后我到github上找到了被大佬编译好的whl文件。此方法是需要在你安装cmake、Boost环境的计算机使用,但是我这么做仍然没有解决。希望各位道友们也能分享出自己的学习成果。此方法适合那些已经安装好conda库的环境的计算机使用,但是这个方法会将你的python版本降低到3.5。

2024-04-07 23:43:48 1334 4

原创 python 获取SQLServer中的数据并使用pandas将数据导出为csv文件所遇到的问题

然后我去问GPT,结果发现rows是list没错,但是里面的不是元组,而是这么个玩意:<class 'pyodbc.Row'>所以我们需要将list里面的<class 'pyodbc.Row'>转一下类型。我看了半天也没看出问题在哪里...今天遇到一个错误,给我整无语了。

2024-04-07 18:42:14 246

原创 4、Redis持久化之AOF

AOF,Append Only File,是指Redis将每一次写操作都以日志的形式记录到一个AOF文件中的持久化技术。当需要恢复内存数据时,将这些写操作重新执行一次,便会恢复到之前的内存数据状态。

2024-03-14 20:48:20 960

原创 3、Redis持久化之RDB

RDB是redis默认的持久化策略,在RDB模式下,可以将redis在内存中的数据库状态保存到磁盘里面(以内存快照的形式),避免数据意外丢失。RDB持久化功能既可以手动执行,也可以通过配置文件定期执行。RDB通过生成一个经过压缩的二进制文件,保存数据库状态,可以通过该文件进行还原。

2024-03-14 20:47:37 433

原创 10、Redis分布式系统之数据分区算法

​ Redis分布式系统,官方称为Redis Cluster, Redis集群(这个集群和前面的主从复制集群不同,这个集群可以理解为是多个主从复制集群所组成的集群),其实是Redis3.0开始推出得分布式解决方案。(下面讲到的节点本质都是在Redis分布式系统中的一个主从复制集群)

2024-03-12 16:25:13 914

原创 APP前端使用mqtt发布消息比较麻烦,于是使用FastAPI做一个Mqtt消息发布的中转站

最近有一个需求是前端APP需要通过mqtt发布消息,让硬件接收APP发送过来的消息,实现一个点播视频的功能。但是前端视乎不太会在APP上搭建mqtt。于是想到用FastAPI做一个消息中转站,具体原理如下:前端将需要发送的消息发给FastAPI,FastAPI在作为mqtt发布端将消息发布出去。

2024-03-09 16:46:33 597

原创 FastAPI + NGINX + Gunicorn 部署域名接口

简介: 今天接到一个活,给了我一台云服务器、域名,然后用FastAPI+NGINX来部署接口,接口的url是由域名组成的。

2024-01-11 19:07:26 474

原创 树莓派3B+ /+ CSI摄像头 + FFmpeg + SRS 实现直播推流

手头有一个树莓派3B+ 和一块CSI摄像头,想要实现一个推拉流直播的效果。开发板(我用的是树莓派3B+)、CIS摄像头、云服务器(用来搭建SRS服务器)

2024-01-08 13:14:55 2289 1

原创 腾讯云+nginx的域名配置

到腾讯云官网购买服务器,一般我们购买轻量级服务器。自己用的话,我是两核的,完全够了。购买域名完成后需要实名认证和备案,否则我们通过域名是无法访问的,第一次备案需要的时间较长(我大约是半个月左右才完全通过)。这里的前缀就是你以后访问的网站的前缀,比如www.baidu.com , 你填了什么前缀以后你的网站就是 前缀+域名。但是网上很多都是宝塔的,为了更加熟悉服务器的基础操作,所以我安装的基于系统的ubuntu镜像。首先我们要登录到远程服务器,关于远程登录服务器的教程也很多,就不说了。

2023-12-23 16:07:42 473

原创 pyqt5实现wget下载视频文件的进度条显示

所以使用pyqt5中QProgressBar来实现下载进度条

2023-12-22 21:39:00 566

原创 mediapipe 的姿态检测遇到的问题

mediapipe 的姿态检测遇到的问题

2023-12-16 21:11:12 1175 7

原创 socket套接字编程

实现网络编程进行数据传输的一种技术手段1. 流式套接字(SOCK_STREAM):提供面向连接的、可靠的数据传输服务,通常用于TCP协议。(面向连接--tcp协议--可靠的--流式套接字)2. 数据报套接字(SOCK_DGRAM):提供无连接的、不可靠的数据传输服务,通常用于UDP协议。(无连接--udp协议--不可靠--流式套接字)3. 原始套接字(SOCK_RAW):允许直接访问网络层数据包,通常用于实现自定义的网络协议或进行网络数据包的捕获和分析。

2023-11-14 22:39:36 274 1

原创 TCP/IP模型(四层模型)

给网络服务器地址起的名字。

2023-11-14 20:39:14 73 2

原创 MySQL基本的SELECT语句

语法:SELECT 字段1,字段2,... FROM 表名 WHERE 过滤条件。DESCRIBE 表名;# 显示表中字段的详细信息。2.NULL不等同于0,' ','NULL'2.3.使用""起别名(支持utf8)条件:声明必须放到FROM结构的后面。3.空值参与运算:结果一定也为空。2.1 加空格起别名。

2023-11-09 17:28:05 46 1

原创 nginx配置Django静态文件遇到的问题

二是发现当我发现项目部署完成后django的admin后台的页面的静态文件没有加载出来,所以我想用nginx来做一个静态文件加载admin的静态文件。但是,加载这些静态文件时还是加载不到,一直是404。然后我就想到是不是我之前用nginx做了静态文件的原因(我之前觉得加载静态文件是先从nginx中找,然后找不到就会到项目文件中去找,但是结果好像并非如此。我猜测,视乎只会在nginx中加载)。但是当我在这个项目中新建app(door_visits)时,在这个app的目录下新建了一个static文件夹。

2023-11-09 17:07:22 392

原创 Django ORM的基本操作——更新数据、删除数据

ORM的创建数据以及查询数据在我的上一篇文章:http://t.csdnimg.cn/B0qDehttp://t.csdnimg.cn/B0qDe1.修改单个实体的某些字段值的步骤例子:2.批量数据的更新直接调用QuerySet的update(属性=值)实现批量修改例子:单个数据的删除步骤:1.查找查询结果对应的一个数据对象2.调用这个数据对象的delete()方法实现删除例子:批量数据的删除步骤:1.查找查询结果集中满足条件的全部QuerySet查询集合对象2.调用查询集合对象的dele

2023-11-08 19:33:36 331 2

原创 Django ORM 的基本常用操作——创建数据、查询数据

全称是对象关系映射(Object-Relational Mapping),它是一种编程技术,用于将对象模型和关系数据库之间的数据进行映射和转换。通过使用ORM,开发人员可以使用面向对象的方式来操作数据库,而不需要直接编写SQL语句。ORM框架通常会提供一系列工具和方法,用于简化数据库操作,提高开发效率,并减少代码重复。常见的ORM框架包括Hibernate、Entity Framework、Django ORM等。ORM的主要优点包括提高开发效率、减少代码量、降低数据库平台的依赖性等。

2023-11-08 19:32:08 759 1

原创 qrcode生成二维码遇到的问题

qrcode生成二维码遇到的问题 import Image Exception Type: ModuleNotFoundError at /door_visits/visits/ Exception Value: No module named 'Image'

2023-11-06 18:12:59 151 1

原创 Django项目部署Nginx后静态文件报403 Forbidden状态码

Django项目部署Nginx后静态文件报403 Forbidden状态码

2023-11-05 22:21:25 636 3

原创 Django项目部署

项目部署是指软件开发完成后,将开发测试机器上运行的项目安装到服务器上进行长期运行。

2023-11-03 19:24:21 87

原创 腾讯云配置MySQL数据库

腾讯云服务器下载配置MySQL,并配置远程连接访问

2023-10-28 22:33:10 152 2

空空如也

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

TA关注的人

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