自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Django分布式任务队列celery的实践

不使用数据库作为 BrokerBroker 的选择大致有消息队列和数据库两种,这里建议尽量避免使用数据库作为 Broker,除非你的业务系统足够简单。在并发量很高的复杂系统中,大量 Workers 访问数据库的行为会使得操作系统磁盘 I/O 一直处于高峰值状态,非常影响系统性能。如果数据库 Broker 同时还兼顾着后端业务的话,那么应用程序也很容易被拖垮。反观选择消息队列,例如 Rabb...

2018-10-10 12:01:39 343

转载 正向代理与反向代理通俗理解

代理,字面意义上来说,他就是相当于一个中间人这么个概念。带到项目中也一样,那么来这样一个比喻。用户(客户端) 代理(正,反)  提供者(服务端)。正向代理。把整个流程比如成去饭店吃饭,我们也就是用户(客户端)去饭店吃饭(发送一个请求),你知道你要吃的是鱼香肉丝(请求),可是你不能自己做,那么就需要让大厨(服务端)给你做 ,可是去了饭店,大厨是在后台的,你也不能直接去告诉大厨,因为你...

2018-10-09 10:44:50 167

转载 IO多路复用机制详解

高性能IO模型浅析  服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种:(1)同步阻塞IO(Blocking IO):即传统的IO模型。(2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Java的NIO(New IO)库。(3)IO多路复用(IO...

2018-10-09 10:25:12 160

原创 (三)flask中的请求钩子函数

请求勾子在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如:在请求开始时,建立数据库连接; 在请求开始时,根据需求进行权限校验; 在请求结束时,指定数据的交互格式;为了让每个视图函数避免编写重复功能的代码,Flask提供了通用设施的功能,即请求钩子。请求钩子是通过装饰器的形式实现,Flask支持如下四种请求钩子:before_first_request:在处理...

2018-10-05 20:48:58 322

原创 (二)flask-sqlalchemy基本操作

对数据库基本操作 在Flask-SQLAlchemy中,插入、修改、删除操作,均由数据库会话管理。 会话用 db.session 表示。在准备把数据写入数据库前,要先将数据添加到会话中然后调用 db.session.commit() 方法提交会话。 在 Flask-SQLAlchemy 中,查询操作是通过 query 对象操作数据。 最基本的查询是返回表中所有数据,可以通过...

2018-10-05 11:14:12 213

原创 Windows下安装flask虚拟环境

前提已经安装好python2.x或者pyhton3.x的条件下,使用pip包管理工具 flask框架就不作介绍直接安装开始安装1. 命令窗口下:进入windows的命令窗口有三种方式:第一种:开始菜单内打开运行或者使用快捷键Windows+r直接打开,手动cd切换目录,默认在用户目录下打开 第二种:按住shift键不松手→右键点击桌面空白处→在此处打开命令窗口第...

2018-10-04 13:26:09 424

原创 Ubuntu下安装Flask虚拟环境及使用

一、关于Flask介绍诞生时间:Flask诞生于2010年,是Armin ronacher(人名)用 Python 语言基于 Werkzeug工具箱编写的轻量级Web开发框架。Flask框架包含两个核心:Werkzeug工具箱,Jinja2模板引擎由于Flask没有提供额外的其他功能,所以几乎所有的功能都要用到扩展实现,如下列表所示:Flask常用扩展包:Flask-SQLa...

2018-10-03 18:46:43 1787 2

原创 (一)flask-sqlalchemy的安装和配置

在使用flask-sqlalchemy之前要先了解ORM模型,什么叫做ORM模型一.什么是ORMORM 全拼Object-Relation Mapping. 称为对象-关系映射 主要实现模型对象到关系数据库数据的映射. 比如下图:把数据库表中每条记录映射为一个模型对象,使用模型对象实现对数据的增删改查    ORM图解 ORM的优缺点有哪些?优...

2018-10-03 18:04:46 484

原创 Ubuntu下redis数据库的安装和配置详细过程

Redis 安装当前redis最新稳定版本是4.0.9 当前ubuntu虚拟机中已经安装好了redis,以下步骤可以跳过 最新稳定版本下载链接:http://download.redis.io/releases/redis-4.0.9.tar.gz step1:下载 wget http://download.redis.io/releases/redis-4.0.9.tar.g...

2018-10-02 10:39:19 3062

原创 使用ajax实现前后端是数据交互

ajax的概念ajax一个前后台配合的技术,它可以让javascript发送http请求,与后台通信,获取数据和信息。ajax技术的原理是实例化xmlhttp对象,使用此对象与后台通信。jquery将它封装成了一个函数$.ajax(),我们可以直接用这个函数来执行ajax请求。ajax需要在服务器环境下运行。$.ajax使用方法常用参数:1、url 请求地址2、type...

2018-10-01 17:21:37 471

原创 Python中的实例方法、classmethod和staticmethod的区别

 class NewsPaper(object): # 类属性 __print_times = 0 # 下划线表示私有属性 # 实例方法 def __init__(self, title, content): self.title = title # 实例属性 self.content = content # 实例属性...

2018-10-01 17:09:39 278

原创 TCP的三次握手和四次挥手图解

 1. TCP建立连接的三次握手(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发...

2018-10-01 16:39:42 367

原创 关于python的GIL全局解释器锁的简单理解

GIL是解释器内部的一把锁,确切一点说是CPython解释器内部的一把锁,所以要注意区分 这和我们在Python代码中使用线程锁Lock并不是一个层面的概念。1. GIL产生的背景:在CPython解释内部运行多个线程的时候,每个线程都需要解释器内部申请相应的全局资源,由于C语言本身比较底层造成CPython在管理所有全局资源的时候并不能应对所有线程同时的资源请求,因此为了防止资源竞争而...

2018-10-01 16:18:32 242

原创 搭建简易的WebServer(基于pyhton实现简易Web框架 使用socket套接字)

 1. 使用web底层socket的方式实现简易服务器的搭建,用来理解学习# 1、导入socket模块import socketimport reimport geventimport sys# 破解,让gevent 识别耗时操作from gevent import monkeymonkey.patch_all()import Applicationclass Http...

2018-10-01 15:52:02 311

原创 Python中生成器generator和迭代器Iterator的使用方法

一、生成器1. 生成器的定义把所需要值得计算方法储存起来,不会先直接生成数值,而是等到什么时候使用什么时候生成,每次生成一个,减少计算机占用内存空间2. 生成器的创建方式第一种只要把一个列表生成式的 [ ] 改成 ( )ret = (n + 1 for n in range(0,10))# 返回值是生成了一个生成器对象<genexpr>储存在16进制的地址中<...

2018-08-13 13:13:15 249

原创 闭包和装饰器,两者关系以及装饰器工厂的使用

一、闭包1. 闭包的概念 用函数的概念说明定义函数的本质 def test1(): print("--- in test1 func----")# 调用函数test1()# 引用函数ret = test1print(id(ret))print(id(test1))#通过引用调用函数ret() 打印结果 --- in test1 func--...

2018-08-13 11:23:29 1269 1

原创 用python批量向数据库(MySQL)中导入数据

用python批量向数据库(MySQL)中导入数据现有数十万条数据,如下的经过打乱处理过的数据进行导入数据库内部的表格的数据格式如下与下面的表格结构相同Current database: python_test_1+-------+-------------+------+-----+---------+----------------+| Field | Type ...

2018-08-07 14:59:23 9409 2

原创 使用python简单连接并操作数据库

python中连接并操作数据库图示操作流程一、使用的完整流程# 1. 导入模块from pymysql import connect# 2. 创建和数据库服务器的连接,自行设置 服务器地址,端口,用户名,密码,数据库名, 通信使用字符和数据库字符集一致conn = connect(host='', port=, user='', password='',database='...

2018-08-07 14:35:35 730

原创 SQL查询语句的进阶使用

MySQL的进阶使用sql语句一些功能的使用导入现有大量数据文件步骤 1) 把*.sql文件拷贝到Linux某一位置(例如Desktop)2) Linux命令行进入该位置 cd ~/Desktop3) 登录mysql4) 使用数据库 mysql> use 数据库名;5) 创建表 mysql> create table 表名( 添加字段 -- 字段属性要和要导...

2018-08-05 00:23:59 798 1

原创 MySQL数据库的基本使用简单易懂

MySQL数据库的基本使用一、数据库概述1. 基本介绍数据库就是以一定格式进行组织的数据的集合。通俗来看数据库就是用户计算机上 一些具有特殊格式的数据文件的集合2. 数据库的特点持久化存储读写速度极高保证数据的有效性对程序支持性非常好,容易扩展3. 数据库管理系统数据库管理系统(英语:Database Management System,简称DBMS)是...

2018-08-03 10:12:15 733

转载 TCP和UDP的最完整的区别

TCP UDPTCP与UDP基本区别  1.基于连接与无连接  2.TCP要求系统资源较多,UDP较少;   3.UDP程序结构较简单   4.流模式(TCP)与数据报模式(UDP);   5.TCP保证数据正确性,UDP可能丢包   6.TCP保证数据顺序,UDP不保证   UDP应用场景:  1.面向数据报方式  2.网络数据大多为短消息   3.拥有大量Client...

2018-07-17 23:47:28 128

原创 Python基础之文件和目录操作

  1 .文件操作 1.1 文件打开和关闭在python, 使用 open 函数, 可以打开一个已经存在的文件, 或者创建一个新文件.# 打开文件f = open('test.txt', 'w')open 函数调用完毕之后, 返回一个标识该打开文件的对象. 以后对该对象的操作, 就是对该文件的操作.1.1.1 文件路径如果只写了文件名, 默认会在当前目录下...

2018-07-13 18:26:22 179

原创 Python中字符串、列表、元组、字典、集合常用方法总结

2018-07-13 18:05:16 307

空空如也

空空如也

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

TA关注的人

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