- 博客(64)
- 收藏
- 关注
原创 SSH公钥私钥生成
1、生成命令ssh-keygen -t rsa2、需要确认的步骤3、打开.SSH文件夹,查看公钥私钥cd ~/.sshid_rsa 私钥id_rsa.pub 公钥4、查看的方法cat id_rsacat id-rsa.pub...
2019-11-04 21:47:55
289
原创 Django创建Git管理项目使用SSH并创建分支
1、创建项目2、创建项目名字并设置语言和是否公开3、生成SSH秘钥对https://mp.youkuaiyun.com/mdeditor/84945680#4、配置Git的SSH公钥5、复试SSH的地址6、clone项目git clone SSH地址7、创建分支并切换当当前分支git checkout -b dev8、创建静态文件夹9、查看当前工作区git status...
2019-11-04 21:47:40
203
原创 前后端分离live_server作为前端服务器的安装及使用方法
说明:使用nvm安装最新版本的node.js提供的live_server前端服务器,作为前端文件的预览1、安装curlsudo apt install curl2、安装nvmcurl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash3、重启终端 ---->使用nvm...
2019-11-04 21:47:19
432
原创 给项目添加MySQL用户
1、创建数据库表create database 表名 charset=utf8;2、创建普通用户create user 用户名 identified by '用户密码'; 创建用户账号 meiduo, 密码 meiduo (由identified by 指明)3、给用户添加权限grant all on 可以访问的数据库表.* to '受权给那个用户'@'%';授权meiduo_m...
2019-11-04 21:47:03
157
原创 Django项目 目录调整
1、配置项目目录在根目录meiduo目录下创建一下目录docs 用来存放项目的文档说明 logs 用来存放项目的log日志文件 scripts 用来存放脚本文件 2、在meiduo的根目录文件meiduo文件夹下创建目录apps 用来存放项目的应用 libs 用来存放第三方工具 settings 用来存放项目的配置文件 ...
2019-11-04 21:46:48
327
原创 captcha的使用方法
1、安装PILpip insatll pillow2、下载captcha工具包3、调用生成图片验证码的方法captcha.captcha.generate_captcha()返回值:第一个值是真实值第二个值是图片验证码JPG...
2019-11-04 21:46:29
1761
原创 Redis交互问题
1、Djangorestframework与Redis的交互中文文档连接:https://django-redis-chs.readthedocs.io/zh_CN/latest/1、获取连接对象redis_conn = get_redis_connection("配置的数据库名字")2、使用redis_conn对象调用python提供的Redis方法...
2019-11-04 21:46:16
138
原创 Django项目配置MySQL、redis、区域时间、log日志、数据库的异常处理类
1、配置MySQL数据库2、配置Redis数据库3、设置本地区域及时间4、配置log日志5、配置exceptions原因是Django提供的异常捕获不支持MySQL和Redis的异常捕获1、配置MySQL数据库DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOS...
2019-11-04 21:45:53
185
原创 MySql 中 case when then else end 的用法
解释:SELECTcase -------------如果when sex=‘1’ then ‘男’ -------------sex=‘1’,则返回值’男’when sex=‘2’ then ‘女’ -------------sex=‘2’,则返回值’女’else 0 -------------其他的返回’其他’en...
2019-11-04 21:45:37
196
原创 MySQL 基础操作
1、 数据定义语言(DDL):create , alter ,drop 等2、 数据操作语言(DML):如插入,修改,删除等3、 数据控制语言(DCL):grant,revoke等我们通过控制台的mysql进行数据库操作,mysql语句的结束符是 ‘;’当我们进入到mysql的控制台之后,可以查看有几个数据库数据库操作:显示所有数据库:show databases ;删除数据库...
2019-11-04 21:44:54
116
原创 Nginx 配置文件解析
配置文件的结构解析#user nobody;worker_processes 1; #工作进程:数目。根据硬件调整,通常等于cpu数量或者2倍cpu数量。 #错误日志存放路径#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info; #pid ...
2019-11-04 21:44:26
412
原创 常用的他站网址
https://uwsgi-docs-zh.readthedocs.io/zh_CN/latest/tutorials/Django_and_nginx.html # uwsgi部署python项目
2019-11-04 21:44:14
351
原创 python多任务-线程
threadingpython 实现多任务可是使用线程、进程、协程,本文介绍python线程解决多任务,多线程共享全局变量,共享全局变量就会造成资源竞争,解决资源竞争可是使用互斥锁,使用互斥锁会赵成的问题是阻塞,一个主线程中多个子线程使用多个互斥锁的情况会造成死锁。以上问题解决方法:资源竞争:解决资源竞争使用互斥锁互斥锁:什么是互斥锁,直白的说就是,谁先拿到谁先上锁,上锁后别人就不能再上锁...
2019-11-04 21:44:00
134
原创 python多任务-进程
概念进程 = 代码 + 资源一个程序运行起来就称之为进程,进程是一个拥有资源的(进程是一个资源分配的单位)知识点:1、写时拷贝代码实现import multiprocessingdef test1(): while True: print("1--------")def test2(): while True: print("2---...
2019-11-04 21:43:47
140
原创 python-迭代器
名词解释:迭代器:迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。可迭代对象的本质:知识点:1、一个对象可以迭代,他不一定就是迭代器2、一个对象是迭代器,他一定可以迭代迭代器的实现:知识点:1、一个类如果实现了__iter__方法,那么这个类创建出来的对象就是一个可迭代对象...
2019-11-04 21:43:35
142
原创 Elasticsearch介绍及使用(简称ES)
1、Elasticsearch 很多知名的网站都在使用,例如维基百科、start overfl、Github特点:1、不支持中文,需要ik扩展才能支持中文的分词2、支持REST api访问(不是调用类,也不是调用函数,支持REST api访问就是发送一个http请求)3、他是java语言实现的插件(为了方便,使用docker安装及使用)...
2019-11-04 21:43:21
293
原创 使用flask-migrate报没有mysqldb
情景描述:在家里给电脑装了一个新系统,在使用flask-migrate管理数据库的时候出现没有ImportError: No module named 'MySQLdb'解决方法:原始:
2019-11-04 21:43:08
215
原创 url路径字符串传参 urllib的使用技巧
将字典转换成为=&相接from urllib.parse import urlencodedict_a = {"name":"laowang", "age":20}print(urlencode(dict_a))# 输出结果为: name=laowang&age=20字符串等号相接的转换为字典方法1:from urllib.parse import parse_qs...
2019-11-04 21:42:44
428
原创 python logging 的使用
logging级别日志级别数值critical50error40warning30, 默认级别info20debug10notset0说明:日志等级,低于设置级别忽略,高于等于级别捕获格式字符串属性名格式描述日志消息内容%(nessage)s调用format()时设置asctime%(asc...
2019-11-04 21:42:30
115
原创 celery的使用
1:celery默认使用多进程启动的(启动的进程数默认是和你的cpu核数是一致的, 可以配置--concurrentcy参数),支持多协程2:他是一个线程安全的第三方并行库3:是一个线程安全的就是因为他没有使用多线程来处理任务4:celery可以做什么事4-1:他可以做定时任务,需要配置beat_schedule4-2:他可以做延迟执行,延迟执行只要在启动celery的时候配置,调用任务...
2019-11-04 21:42:15
1143
原创 玩转nginx
1.删除nginx, -purge包括配置文件sudo apt-get --purge remove nginx2.自动移除全部不适用的软件包sudo apt-get autoremove3.罗列出与nginx相关的软件dpkg --get-selections|grep nginx执行结果stephen@stephen-OptiPlex-390:~$ dpkg --get-s...
2019-11-04 21:41:27
199
原创 nginx+uwsgi+flask做一个简单的分布式
借别人的图,对应的链接地址https://blog.51cto.com/ljmict/2155986?utm_source=oschina-app
2019-11-04 21:41:11
1148
原创 nginx 解析
nginx/|-- client_body_temp|-- conf #包含所有配置| |-- fastcgi.conf #通用网关接口配置文件| |-- fastcgi.conf.default #通用网关接口配置文件备份| |--...
2019-11-04 21:40:56
331
原创 uwsgi 参数解析
uwsgi 参数解析[uwsgi]socket = 127.0.0.1:8081 #(也就是你访问这个项目所要访问的ip和端口)#由于外部还要嵌套Nginx,这里可以使用socket进行通信,如果Nginx和uwsgi部署在同一台机器上,直接使用127.0.0.1#如果外部直接通过uwsgi访问服务,需将socket改为http-socket或者http,将127.0.0.1改为0.0....
2019-11-04 21:40:41
1128
原创 最简单的uwsgi启动flask项目
运行环境Ubuntu目录结构.└── test ├── app.py ├── flask_uwsgi.pyapp.pyfrom flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return "Hello World"if __name__ == ...
2019-11-04 21:40:26
1254
原创 pycharm 使用shh 链接远程Linux环境
pycharm链接linux1:windows本地创建项目2:file->settings->project->project interpreter3:使用ssh链接服务器4:输入密码5:解释器及项目路径配置
2019-11-04 21:39:47
320
原创 python_封装解构
1:封装说明:1:将多个值使用逗号分割,组合在一起2:本质上返回一个元组,只是省略了小括号demo:t = 1, 2print(t)->(1, 2)2:解构说明:1:把线性结构的元素解开,并顺序的赋给其他的变量2:左边接纳的变量数要和右边解开的元素个数一致2-1:解构-基础用法说明:线性结构和非线性结构都可以解构demo:lst = [3, 5]first, ...
2019-11-04 21:39:19
190
原创 python—内置数据解构—set
set-内置数据类型说明:1:可变、无序、不重复2:元素必须可hash3:元素不支持索引4:set可以迭代新建ser()->new set objectset(iterable)->new set object添加add(elem)->(就地修改)添加一个元素到set中,元素存在什么都不做update(*others)->(就地修改)合并其他元素到se...
2019-11-04 21:38:59
187
原创 python使用socket搭建web服务器
1:使用socket搭建一个tcp服务器简单版:只为一个客户端服务一次# socket创建tcp server步骤# 1:创建套接字# 2:绑定端口# 3:将套接字转化成为被动套接字等待客户端的链接# 4:等待客户端的链接import sockettcp_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)tcp_s...
2019-11-04 21:38:43
1113
原创 python-基础语法-解析式
列表解析[i for i in range(1, 11) ][i for i in range(1, 100) if i%2==0 if i!=50]a = list()for i in range(1, 100): if i % 2 == 0: if i != 50: a.append(i)[expr for i in iterable1 for j in iterable...
2019-10-29 23:19:19
374
原创 python标准库
datedimedatetime类说明today()本地时区datetime对象now()当前时间datetime对象utcnow()没有时区的当前时间datetime对象fromtimestamp(timestamp, tz=None)接收一个时间戳,返回datetime对象datetime对象说明timestamp()...
2019-10-29 23:02:49
218
原创 内置结构-dict
dict定义, 初始化1:d = dict() 或则 d={}2: dict(**kwargs)使用name=value初始化一个字典3: dict(iterable, **kwargs) 使用可迭代对象和name=value构造字典,可迭代对象必须是个二元结构demo: d=dict(((1,"a"), (2, "b"), [3, "d"]))4:dict(mapping, **kwa...
2019-10-29 22:36:21
385
原创 redis-zset-命令
zset命令增zadd添加一个元素和他的属性值,可以一次添加多个zunionstore不会用zinterstore不会用命令查zscore根据元素查他的属性值zcard返回所有集合的个数zcount取在这个属性范围内元素的个数zrange偏移取值,取start与end中的值,依据属性,可添加【withsco...
2019-10-29 16:40:12
995
原创 redis-set-命令
set命令增sadd新增一个或者多个值,忽略重复值命令判断sismember判断元素是否在key中命令删spop随机删除,并返回删除掉的值srem删除一个多则多个元素命令查srandmember返回1个或者count个随机值scard获取集合中的元素个数smembers...
2019-10-29 15:27:55
325
原创 redis-list-命令
list命令增lpush插入一个或者多个值,从左至右依次插入头部lpushx插入一个或者多个值,key存在时才能插入新值,头部rpush插入一个或者多个值,从左至右依次插入尾部rpushx插入一个或者多个值,key存在时才能插入新值,尾部命令删lpop删除头部第一个valuerpop删除尾部最有一个value...
2019-10-29 14:48:19
169
原创 redis-hash-命令
hash命令说明(增)hset单key,valuehsetnxkey不存在,设置一个新的hash键值对hmset向hash表中添加多个key value命令说明(改)hincrby对hash表中value进行增减inthincrbyfloat浮点数+命令说明(查)hget获取hash中key对应...
2019-10-29 13:46:55
158
原创 redis-string-命令
string的官方操作大全设置 set命令说明 (增)set设置键一个键值对setex设置多起时间,单位秒setpx设置过期时间,单位毫秒setnx设置的key必须不存在setxx设置的key必须存在,等价于修改psetex和setex 用法一样,单位为毫秒mset同时设置多个键值对msetnx同时设置多个键值对,k...
2019-10-29 12:56:14
188
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人