- 博客(82)
- 资源 (2)
- 收藏
- 关注
原创 FastAPI -- 第三弹(自定义响应、中间件、代理、WebSockets)
如果你需要压榨性能,你可以安装并使用orjson并将响应设置为# 使用 ORJSONResponse 代替 JSONResponse。
2024-07-18 08:53:45 962 2
原创 FastAPI -- 第二弹(响应模型、状态码、路由APIRouter、后台任务BackgroundTasks)
比如 dict 可以是 dict[str, list], dict[int, list] 等,但 dict[str, list] 只能是 dict[str, list]比如 any 可以是 list 也可以是 dict, 但 dict 只能是 dict 不能是 list。顺便记一下,可以仿照 HTTPStatus 的写法,自定义状态码。dict 有点类似于 any, 但又比 any 更具体一些。union:组合多个模型,但返回值只能是一个模型的实例。注意:自定义状态码是放到。
2024-07-13 15:14:13 419
原创 FastAPI -- 第一弹(查询参数/路径参数/请求体参数)
http://127.0.0.1:8000/doc (由 Swagger UI生成)运行上面的示例代码,并访问 http://127.0.0.1:8000/items/3,http://127.0.0.1:8000/redoc (由 ReDoc 生成)声明的参数不是路径参数时,路径操作函数会把该参数自动解释为查询参数。到此结 DragonFangQy 2024.07.11。, 路径操作是按顺序依次运行的,因此,一定要在。参数优先级: 路径参数> 查询参数。不设置默认值的参数,就是必选参数。
2024-07-11 17:29:44 346
原创 随记-SQLAlchemy ORM 梳理
最近在使用 SQLAlchemy 2.0 的过程中,有一些不适应的地方,所以想梳理一下 SQLAlchemy ORM 的使用。关于旧版的使用以及其他信息请参考另一篇文章。, 这里就不过多赘述,直接进入主题。
2023-12-25 21:05:43 1596
原创 随记-探究视频文件的 MD5
尝试了几次,都失败了。如果有对视频编码比较熟悉的大佬,可以提供相关帮助将不胜感激。思考:什么原因导致判定重复呢?是不是文件的MD5?,但不影响视频的效果,从而改变视频的MD5值。调整:增加水印,从而改变MD5值。
2023-12-23 16:07:27 1146
原创 随记-Python 动态增加数据库并切换
如果你有多个数据库链接,并且在启动服务之前没有写入相关的配置文件,这种情况下该如何使用动态的增加数据库链接并使用呢?这里假设你的数据库配置信息已经写入默认的数据库中(这里暂且称为应用程序数据库,或者AppDB),在AppDB 中的某张表中存储着其他的数据库链接信息(这里暂且称为应用程序扩展数据库,或者AppExtendDB)
2023-10-31 14:04:45 861
原创 随记-多租户数据隔离
所有租户共享同一个Database、同一个Schema,但在表中增加TenantID。这是共享程度最高、隔离级别最低的模式。即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本较高。即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本较高。即一个租户一个数据库,这种方案的用户数据隔离级别最高,安全性最好,但成本较高。多个或所有租户共享Database,但是每个租户一个Schema(表空间)
2023-09-01 15:29:12 902
原创 随记-阿里云服务器 Ubuntu20.04
ssh-copy-id -i .ssh/id_rsa.pub 用户名@192.168.x.xxx。# 将 PermitRootLogin yes 改为 PermitRootLogin no。到此结 DragonFangQy 2023.8.10。# 搜索并复制 Port,修改 22 为其他可用端口。# 如上,VERSION 在第二列。# 修改config。# 修改config。
2023-08-10 17:14:26 285
原创 随记-简单而优雅的 namedtuple
简单而优雅人活着就是累,简称人类。开个玩笑,活的简单一些也挺好。人的一些基本属性,简单来说就是 姓名、年龄、性别,就用这三个吧。如果要对一些人进行描述,可以使用类、使用数组、使用字典。类class Person(object): def __init__(self, name, age, sex): self.name = name self.age = age self.sex = sex def __str__(self):
2022-04-01 22:36:57 581
原创 随记-一次远程debug
登录 dockerhubdocker login -u fangqingyou https://dockerhub.datagrand.com拉取要 debug的镜像到本地docker pull dockerhub.datagrand.com/idps/web_api:release_ci_20220303_4469f4c6运行镜像docker run -it dockerhub.datagrand.com/idps/web_api:release_ci_20220303_4469f4c
2022-04-01 10:48:20 2231
原创 随记--SSH 免密操作实践(认证登录)
基本操作环境:主机A root 用户 ;主机B root 用户 ;两主机都是A云的,CentOS 7.3目标主机A 通过SSH 连接主机B 无需输入密码,即通过SSH 的秘钥进行认证登录简单流程生成秘钥# 一路enterssh-keygen -t rsa -C 'test ssh 无密码登录'传输公钥到目标服务器,这里即主机B# -i 指定公钥文件ssh-...
2020-04-24 23:30:58 225
原创 知-Docker学习一(安装、搜索、查看)
Docker什么是Docker 1Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。如上所述,Docker 是一个开源的应用容器引擎,这与平时所说的Docker 有所区别,平时我们所说的是一个统称,是一个包含客户端、守护进程、镜像、容...
2018-11-28 23:42:06 1080
原创 随记-再临Ubuntu (Ubuntu 16.04)
更换镜像源备份修改源文件备份镜像源源文件sudo mv /etc/apt/sources.list /etc/apt/sources.list.back修改源文件(这里使用阿里源) echo ' deb http://mirrors.aliyun.com/ubuntu/ vivid main restricted universe multiverse deb http...
2018-10-31 00:17:09 203
转载 随记-手机号号段
手机号码前三位列表1:2018/7/1313(老)号段:130、131、132、133、134、135、136、137、138、139 14(新)号段:1400、1410、1440、145、146、147、148、149 15(新)号段:150、151、152、153、154、155、156、157、158、159 16(新)号段:165、166 17(新)号段:170、171、172...
2018-07-13 10:05:11 5016
原创 Flask 初探七 ( 数据库模型 / SQLAlchemy / ORM)
ORMORM 全拼 Object-Relation Mapping. 中文意为 对象-关系映射. 主要实现模型对象到关系数据库数据的映射. 和Java中的JDBC 有异曲同工之处优点通过改变数据库模型改变表结构通过模型类进行数据库的增删改查操作. 只需要面向对象编程, 不需要面向数据库编写代码. 对数据库的操作都转化成对类属性和方法的操作.不用编写各种数据库的sql语句....
2018-07-12 17:16:43 1168
原创 Flask初探六 ( 请求钩子 / 钩子函数 / 蓝图 )
请求钩子通过装饰器为一个模块添加请求钩子, 对当前模块的请求进行额外的处理. 比如权限验证.项目结构 应用钩子函数E:\workspace\pycharm\Demo\application__init__.pydef create_app(config_name): app = Flask(__name__) # config Debug = True...
2018-07-08 10:41:23 5412 1
原创 随记-项目部署相关
python web 基础环境脚本阿里云Ubuntu环境: Ubuntu 16.04 + python3 1.sh#!/bin/bash# 更新安装源sudo apt-get update# 安装pip3sudo apt-get -y install python3-pip# 解决python版本共存问题,设置默认为python3sudo update-alt...
2018-07-04 20:47:35 266
原创 Flask初探五( Blueprint / url_for / endpoint )
Blueprint (蓝图) Blueprints are the recommended way to implement larger or more pluggable applications in Flask 0.7 and later.Blueprint 是为了更方便实现模块化开发而诞生的.模块化为什么要模块化?在一个py 文件中写成百上千或者更多个接口...
2018-06-30 16:29:22 1904 1
原创 FLask初探四 ( 确定项目模板的加载路径)
模板文件夹templates模板文件夹的是怎么确定的? 放到什么位置才能保证模板能被正确加载 / 或者访问?项目目录可以看出有两个模板文件夹templates News\info\templates\news\demo.html<!DOCTYPE html><html lang="en"><head> <meta c...
2018-06-25 15:39:45 13875 1
原创 FLask 初探三( 隐藏配制文件实践 )
引言Flask初探一(Flask 各参数的应用) 中提到了隐藏重要配置( 敏感配置) 的方式, 今天详细研究一下怎么样实现.创建项目项目结构main.py假设config_private 目录下的config_private.py是要隐藏的配置文件导入模板 flask_migrate, flask_redis, flask_script, flask_sessi...
2018-06-24 20:37:29 894
原创 Flask初探二( app.route 内部实现)
最小的flask应用from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'Hello World!'if __name__ == '__main__': app.run()上一篇blog 探究了flask 各个参数的作用,本篇将围绕 @app...
2018-06-20 15:51:05 11648 2
原创 Flask初探一(Flask 各参数的应用)
Flask简介Flask是什么 Flask 是一个 Python 实现的 Web 开发微框架, 轻量级Web 开发框架Flask 依赖两个外部库: Jinja2 模板引擎和 Werkzeug WSGI 工具集虚拟环境1作用 虚拟环境可以搭建独立的python运行环境, 使得单个项目的运行环境与其它项目互不影响.Hello Flask一个最小的Fl...
2018-06-15 11:32:16 4031
原创 Python学习笔记二十四( 元类 )
__class__属性__class__属性可以查看对象的类型.class Person(object): passperson = Person()print(person.__class__)# 运行结果# &lt;class '__main__.Person'&gt;Person 类的实例对象person 的类型时Person 类类型, Pytho...
2018-05-27 21:49:54 216
原创 Python学习笔记二十三(闭包 / 装饰器 )
函数什么是函数? 将具有某种功能的代码放到一起, 构成一个函数. 为什么说函数? 因为需要研究一个问题, 函数可以嵌套调用, 那么可不可以嵌套定义?函数的嵌套调用def func1(): print("func1")def func2(): # 嵌套调用 func1()func1()func2()# 运行结果# func1# fu...
2018-05-26 13:08:43 318
原创 Python学习笔记二十二(多继承 / 属性和方法 / 常量 / with和上下文管理器 )
多继承狮虎兽, 不知道你有没有听说过? 狮虎兽,是雄狮(Panthera leo)与雌虎(Panthera tigris)杂交后的产物,是属于猫科豹属的一员. 用程序模拟一下狮虎兽.class Animal(object): def __init__(self): print("init Animal")class Tiger(Animal): ...
2018-05-23 00:10:32 384
原创 Python学习笔记二十一(GIL/深拷贝/浅拷贝/多态)
Python 多线程对CPU的使用率单线程对CPU的一个核心使用率可以达到100%# 多线程import threading# 子线程死循环def test(): while True: pass# t1 = threading.Thread(target=test)# t1.start()# 主线程死循环while True: ...
2018-05-20 22:59:09 218
原创 Python学习笔记二十(MySQL、SQL、联表查询)
联表查询(多表查询)create table article(id int unsigned auto_increment primary key,title varchar(100) ,content_path varchar(100),content_num int unsigned,author_id int unsigned,is_del bit default 0)...
2018-05-15 00:52:37 3204
原创 Python学习笔记十九(MySQL、SQL、查找、单表查询)
查找查找分为单表查询与多表查询单表查询查看现有数据表查看所有数据-- select * from 表名; 查找指定表的所有数据select * from article;查看某些字段比如我只关心title 字段 或者 我只关心title 字段 和content_num 字段-- select 字段名【,字段名,字段名...】 fr...
2018-05-13 07:40:53 406
原创 Python学习笔记十八(MySQL、SQL、增删改)
SQL语句SQL主要操作有增删改查(curd),其中查询的频率要高于其它操作,因为一般来说,进行其它操作之前,你需要明确表中有哪些字段,要修改哪些值,要删除哪条记录。查看表结构查看数据-- select * from 表名; 查看表内所有数据select * from article;添加数据-- insert into 表名(字段...) values(值......
2018-05-10 00:40:02 204
原创 Python学习笔记十七(MySQL、SQL、数据库&数据表操作)
数据库什么是数据1数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的的原始素材。数据可以是连续的值,比如声音、图像,称为模拟数据。也可以是离散的,如符号、文字,称为数字数据。计算机中的数据,是对现实世界的一种量化。什么是数据库2数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。作用:对数据操作更方便。数据库的分...
2018-05-08 23:34:48 242
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人