自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 windows 下docker-compose 试玩 paperlsess

开源无纸化系统paperless试用

2024-01-24 17:34:26 412

原创 windows 下安装Docker (WSL2)

windows 下安装 docker

2023-05-10 14:45:17 503

原创 VMware 创建centos7虚拟机

重启:/user/sbin/nginx -s reload。修改配置:vi /etc/nginx/nginx.conf。启动nginx: /user/sbin/nginx。安装wget:yum -y install wget。安装nginx: yum install nginx。第四步:安装vmware tools。注意复制粘贴时,鼠标不能进入虚拟机。第三步 :启动虚拟机,执行安装。更新系统:yum update。第一步:下载centos镜像。选择下载的iso镜像文件。需要开放端口外部才可以访问。

2023-03-15 14:03:43 299

原创 python3.9.0 windows环境搭建

windows下python3.9开发环境搭建

2022-12-14 11:09:31 735

原创 FastAPI IIS 部署

IIS 部署fastapi

2022-06-18 14:20:58 2085

原创 如何直接复制python的env环境

env整体迁移

2022-06-07 10:00:54 3085

原创 Fastapi swagger-ui.css 、swagger-ui-bundle.js 无法加载

版本信息: python3.8 fastapi 0.78.0访问 /docs 查看接口文档是发现swagger资源无法加载(可能是npm宕机了)解决:尝试降低fastapi版本并未奏效,于是想下载下资源文件,改为本地静态资源加载 资源下载地址:swagger-ui/dist at master · swagger-api/swagger-ui · GitHub 1. 分别下载 swagger-ui.css 、swagger-ui-bundle.js,放置在本...

2022-05-25 15:03:58 4233 9

原创 fastapi apscheduler: No trigger by the name “interval“ was found

尝试在fastapi 中使用 apscheduler 报错:LookupError: No trigger by the name "interval" was found解决办法:使用实例化的triggerfrom apscheduler.schedulers.background import BackgroundSchedulerfrom apscheduler.triggers import intervalscheduler = BackgroundScheduler()..

2022-04-04 16:36:08 327

原创 SQLAlchemy Async

目录架构安装:Engine:ResultSessionMetaDataTable And ORM反射表插入数据查询数据更新和删除使用流式Async ORM关联对象加载Event 钩子SQL 编译缓存架构版本要求:Cpython +3.7安装:pip install SQLAlchemy安装对应数据库的DBAPI: https://docs.sqlalchemy.org/en/20/dialects/mysq...

2022-04-03 21:52:31 4460

原创 mm wiki 设置开机启动

执行启动配置cat > /etc/systemd/system/mmwiki.service <<EOF[Unit]Description=mmwikiAfter=network.targetWants=network.target[Service]Type=simplePIDFile=/var/run/mmwiki.pidWorkingDirectory=/root/mmwikiExecStart=/root/mmwiki/mm-wiki --conf conf/.

2022-01-24 11:09:09 1154

原创 centos7 mariadb启动失败

问题:mariadb 启动时报错Job for mariadb.service failed because the control process exited with error code解决:修改默认配置:1)/etc/my.cnf 文件,在 [mysqld] 标签下添加init_connect='SET collation_connection = utf8_unicode_ci'init_connect='SET NAMES utf8'characte...

2022-01-24 10:48:14 2331 3

原创 morepath

hello world import morepath# 创建App继承morepath.appclass App(morepath.App):pass# 路由和类绑定@App.path(path='')class Root(object):pass# 为类绑定一个视图,没有指定name参数时默认name=‘’@App.view(model=Root)def hello_world(self, request):retu...

2021-11-10 08:40:14 146

原创 IIS 部署 django+react

django3.0 + python3.8react 16.14.0winserver 2019一:React部署:1. 点击添加网站:2. 创建url重写规则:这里手动配置与提前创建好web.config文件是一样的,手动创建会自动生产web.config文件;一定记得选择307 ,写外网地址二:django部署: 参考靠谱:https://zhuanlan.zhihu.com/p/111822007 若出现本机可以访问,外部无法访问..........

2021-07-13 16:22:31 867

原创 flask minio ios下载视频无法播放

代码:app.route('/download/<bucket_name>/<file_id>')def download(bucket_name,file_id): params = request.json or request.args response = download_file(bucket_name, file_id, offs

2021-05-27 15:23:17 546

原创 Mongo 异步客户端 Motor 事务

源码位置:ClientSession.with_transactio注意必须主从或者分片集群才能使用事务:分片配置参考文章:https://blog.csdn.net/weixin_34288121/article/details/92905461最终代码:注意代码里的db_client是MotorDatabase对象,只能是MotorClient对象调用start_session(), 而不是MotorDatabase对象方法一:需要将session传入目标函数内async def d.

2021-05-07 18:14:09 393

原创 python tempfile

应用场景: 程序运行过程中临时数据的保存,不必关系删除文件,调用高级接口自动释放资源基本原理: 在临时目录下创建文件,实现了上下文协议,自动清理快速上手: f = tempfile.TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]) 该函数返回文件对象可以直接读写。当文件对象被close或者被de...

2021-01-19 20:52:06 139

原创 如何使用 win32com 操作excel 入坑

app打开方式的区别:https://stackoverflow.com/questions/50127959/win32-dispatch-vs-win32-gencache-in-python-what-are-the-pros-and-cons/53833740#53833740?newreg=0e69607c6e364894abde5a7be0fe5e29win32com 文档:http://timgolden.me.uk/pywin32-docs/contents.html使用win3..

2020-12-16 14:51:24 5172

原创 Centos 使用docker 搭建redis集群

三步走:第一步:安装依赖包下载第二步:启动多个容器第三步:创建集群详细步骤:1. 安装依赖包:1. 安装docker:https://blog.csdn.net/u011936655/article/details/810623432. 下载reids镜像:docker pull redis3. 下载ruby镜像:docker pull ruby 2. ...

2020-05-07 10:52:29 562 1

原创 mongo 常用查询

一: 对比等于: $eq 例如: {'age':{'$eq':20}}不等于: $ne 例如: {'age':{'$ne':20}}大于: $gt 例如: {'age':{'$gt':20}}大于等于: $gte 例如: {'age':{'$gte':20}}在。。里: $in 例如: {'age':{'$in':[20,30]}}不在。。里: $n...

2020-04-24 16:42:40 426

原创 Redis 设计与实现---第十章:事件

文件事件:redis通过套接字与客户端进行连接,文件事件就是服务器对套接字操作对象的抽象,服务器与客户端他通信会产生相应的文件事件,而服务器则通过监听并处理这些事件来完成一系列网络通讯操作。Reds基于Reactor模式开发了自己的网络事件处理器:这个处理器被称为文件事件处理器(file event handler) 文件事件处理器使用I/O多路复用程序来同时监听多个套接字...

2020-03-21 17:43:15 156

原创 Redis 设计与实现---第九章:数据库持久化

SAVE (服务被阻塞)和 BGSAVE(子进程执行): BGSAVE时,再次执行SAVE或者BGSAVE会被拒绝,因为存在资源竞争,BGREWRITE会被延迟到BGSAVE执行完成后执行,虽然两者都会fork子进程执行,但是为了避免同时大量磁盘IO所以一个一个来。数据加载:Dirty 和lastsave:Redis发服务周期性操作函数serverC...

2020-03-21 16:31:06 152

原创 Redis 设计与实现---第八章:数据库(二)

AOF 和 RDB、主从复制: 执行SAVE或者BGSAVE时,已经过期的键会被抛弃; redis服务器载入时,如果开启了RDB功能,主服务器载入时会判断rdb文件中的键是否已经过期,已过期的不载入,而从服务器会全部加载,但主从同步后又会一致,所以一般来讲,过期键对载入RDB文件的从服务器也不会造成影响 AOF文件的写入,过期键在被删除时会主动向AOF文件写入一条DE...

2020-03-21 11:38:37 93

原创 Redis 设计与实现---第八章:数据库(一)

Redis所有数据库都保存在服务器状态RedisServer结构的db数组中,db的每一个项都是一个redisDb结构,每一个redisDb结构代表一个数据库,启动服务时,根据配置database决定创建数据库的个数select 命令的实现: 在服务器内部,客户端状态redisClient结构的db属性记录了客户端当前的目标数据库,这个属性是一个指向redisDb结构的指针...

2020-03-21 10:30:09 137

原创 Redis 设计与实现---第七章:对象

Redis并没有直接使用前面讲到的基本数据结构,而是将他们封装成基本对象使用,如字符串对象,列表对象,哈希对象,集合对象和有序集合对象。使用对象的好处: 1. 根据对象判断是否可以执行给定的命令; 2. 可以针对使用场景为对象设置多种不同的数据结构实现,从而提升效率 3. Redis对象系统实现了基于引用计数的内存回收机制,基于引用计数实现了对象的...

2020-03-20 22:51:19 111

原创 Redis 设计与实现---第六章:压缩列表

压缩列表是列表键和hash键的底层实现原理之一(列表还可以使用链表,hash还可以使用字典),当。当。当。当键的个数不多,或者每个对应的值要么是小整数,要么是比较短的字符串时。压缩列表时redis为了节约内存而开发的,是由一系列特殊的编码的连续内存块组成的顺序型数据结构,一个压缩列表可以包含多个节点(entry),每个节点保存一个字节数组或者一个整数值由于prevous-en...

2020-03-20 16:37:59 132

原创 Redis 设计与实现---第五章:整数集合

整数集合是集合键的底层实现之一,当一个集合只包含整数值元素个数,并且这个集合的元素个数数量不多时,Redis采用整数集,也就是说每个数据类型可能会有多种数据实现,具体选用哪种是根据情况变化的。整数集合的实现: 包含的类型:int16_t ,int32_t,int64_t,元素不重复升级原则: 向上整体升级,不存在降级。时间复杂度为O(N) 例...

2020-03-20 16:07:29 171

原创 Redis 设计与实现---第四章:跳跃表

跳跃表,redis有序集合键的底层实现之一,一般来说效率媲美平衡树,但实现更简单,跳跃表支持平均O(logN),最坏O(N)复杂度的节点查找,还可以提供顺序性操作,通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。redis 仅在有序集合华为集群节点的内部数据中使用了跳跃表...

2020-03-20 15:51:36 79

原创 Redis 设计与实现---第三章:字典

Redis数据库构建k-v键值对时(任何类型),就是通过字典实现,也基本的hash键底层实现之一(当hash类型中键值比较多,或者键值元素比较长时)但是键值多少以及长短的具体分界线是多少呢??字典的实现:Redis的字典使用hash表作为底层实现,一个hash表里面包含多个hash表节点,而每个hash表节点剧保存了字典中的一个键值对 链地址法解决冲突,就是当两个...

2020-03-20 15:35:40 120

原创 Redis 设计与实现---第二章:链表

C语言中并无链表结构,redis构建了自己的链表,链表在redis中使用非常广泛: 如列表键的实现,当列表键包含元素较少或者元素都比较短时使用压缩列表,反之键较多或者较长时使用链表。 发布订阅,慢查询,监视器等都使用了链表; redis服务器本身还是用链表来保存多个客户端的状态信息,以及构建客户端输出缓冲区(output buffer)...

2020-03-20 14:23:17 115

原创 Redis 设计与实现---第一章:简单动态字符串

字符串对象: redis没有直接使用C语言传统字符串,而是自己封装了一种叫做:简单动态字符串(simple dynamic string,SDS)抽象类型,就是为了实现高效修改 C语言的字符串:是以空字符串结尾的字符数组redis SDS长这样:两个字符串差异对比: SDS依旧遵循空格结尾,这样很多方法可以复用,不必重复造轮子,字节数...

2020-03-20 11:41:09 111

原创 tornado PeriodicCallback 实现文件更新监听功能

import osfrom tornado.ioloop import PeriodicCallbackwatch = {}# 通过读取文件的更新时间def check_file(modify_times, path) -> None: print('监听更新') try: modified = os.stat(path).st_mtime ...

2020-03-11 16:32:22 2283

原创 tornado centos下使用 supervisor

一、安装:1. pip install supervisor 或者 yum install supervisor -y2. 创建文件目录:mkdir /etc/supervisor/conf.d -p (路径一)3. 进入etc目录:cd /etc4. 生成配置文件:echo_supervisor_conf > supervisord.conf二、配置:5....

2020-03-04 12:12:35 177

原创 CentOs 安装FastDfs Nginx 配合nginx image_filter缩略图

服务器版本:CentOS Linux release 7.7.1908第一步:下载所需安装包: 链接:https://pan.baidu.com/s/1oNPxkth8cioA6RBMqLhgsg 提取码:z55f 将安装压缩包都解压到 /usr/local 下: tar -zxvf libfastcommonV1.0.7...

2020-02-28 21:10:44 1047

原创 aredis 图示

2020-02-20 21:41:26 246

原创 PyQt5 及qtdesigner 实现window Notepad 记事本功能

代码仓库:[email protected]:maxiaojunwolf/notepad.git软件截图:

2020-01-04 21:48:20 673

原创 canvas 实现图片拖拽,缩放功能

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>canvas图片实现拖拽缩放功能</title> <style> body,div{ margin:0; ...

2019-10-20 11:17:21 3223 2

原创 python 实现链表数据结构

class Node(object): """节点类""" def __init__(self, value): self.value = value self.next = Noneclass SingleLine(object): """单链表""" def __init__(self): self.v...

2019-08-01 19:45:00 123

原创 python 实现队列数据结构

class Queues(object): def __init__(self): """初始化""" self._queue = [] def enqueue(self, item): """尾部添加元素""" self._queue.append(item) def dequeue(self): ...

2019-08-01 19:39:43 128

原创 python 使用列表实现栈数据结构

class Stack(object): def __init__(self): self.items = [] def push(self, item): self.items.append(item) def pop(self): try: return self.items.pop() ...

2019-08-01 19:38:26 218

原创 uwsgi+nginx 部署django项目 假死现象

项目正常运行起来,过几天总是发现uwsgi失效了,需要重启uwsgi才可以原因:nginx和uwsgi的协议不对等;wsgi是支持http协议和uwsgi协议的,nginx也是,uWSGi对uwsgi协议支持度最好正确搭配: 第一种: nginx: location / { include uwsgi_params; uwsgi_...

2019-07-25 15:38:41 1287

docker-compose.env

docker-compose.env

2024-01-24

docker-compose.yml

docker-compose.yml

2024-01-24

空空如也

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

TA关注的人

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