<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[是什么让你停止不前？]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/qq_41333582</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; qq_41333582]]></copyright><item><title><![CDATA[虚拟环境]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84932125</link><guid>https://blog.csdn.net/qq_41333582/article/details/84932125</guid><author>qq_41333582</author><pubDate>Sun, 09 Dec 2018 21:05:14 +0800</pubDate><description><![CDATA[1. 虚拟环境的作用

在开发过程中, 当需要使用python的某些工具包/框架时需要联网安装

比如联网安装Flask框架flask-0.10.1版本

sudo pip install flask==0.10.1


提示：使用如上命令, 会将flask-0.10.1安装到/usr/local/lib/python2.7/dist-packages路径下
问题：如果在一台电脑上, 想开发多个不...]]></description><category></category></item><item><title><![CDATA[ubuntu18.04创建虚拟环境时提示bash: /usr/local/bin/virtualenvwrapper.sh: 没有那个文件或目录 的解决办法]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84931805</link><guid>https://blog.csdn.net/qq_41333582/article/details/84931805</guid><author>qq_41333582</author><pubDate>Sun, 09 Dec 2018 20:41:23 +0800</pubDate><description><![CDATA[错误原因：
Ubuntu安装了2.7和3.x两个版本的python,在安装时使用的是sudo pip3 install virtualenvwrapper
在我运行的时候默认使用的是python2.x,但在python2.x中不存在对应的模块。
(virtualenvwrapper.sh文件内容如下:)：
if [ &quot;$VIRTUALENVWRAPPER_PYTHON&quot; = &quot;&quot; ] then
V...]]></description><category></category></item><item><title><![CDATA[QQ既有UDP也有TCP！]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84503382</link><guid>https://blog.csdn.net/qq_41333582/article/details/84503382</guid><author>qq_41333582</author><pubDate>Sun, 25 Nov 2018 22:01:27 +0800</pubDate><description><![CDATA[QQ既有UDP也有TCP！
不管UDP还是TCP，最终登陆成功之后，QQ都会有一个TCP连接来保持在线状态。这个TCP连接的远程端口一般是80，采用UDP方式登陆的时候，端口是8000。
UDP协议是无连接方式的协议，它的效率高，速度快，占资源少，但是其传输机制为不可靠传送，必须依靠辅助的算法来完成传输控制。QQ采用的通信协议以UDP为主，辅以TCP协议。由于QQ的服务器设计容量是海量级的应用，一...]]></description><category></category></item><item><title><![CDATA[Tesseract 教程]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84349457</link><guid>https://blog.csdn.net/qq_41333582/article/details/84349457</guid><author>qq_41333582</author><pubDate>Thu, 22 Nov 2018 21:43:18 +0800</pubDate><description><![CDATA[Tesseract 教程
介绍
Tesseract 是一个 OCR 库,目前由 Google 赞助(Google 也是一家以 OCR 和机器学习技术闻名于世的公司)。Tesseract 是目前公认最优秀、最精确的开源 OCR 系统，除了极高的精确度，Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体，也可以识别出任何 Unicode 字符。
安装
Window 安装
下载可执行安...]]></description><category></category></item><item><title><![CDATA[MySQL中事务的五种分类]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84196964</link><guid>https://blog.csdn.net/qq_41333582/article/details/84196964</guid><author>qq_41333582</author><pubDate>Sun, 18 Nov 2018 11:33:59 +0800</pubDate><description><![CDATA[MySQL中事务的五种分类

从事务理论的角度来看，可以把事务分为以下五种类型：


扁平事务(Flat Transactions)


带有保存点的扁平事务(Flat Transactions with Savepoints)


链事务(Chained Transactions)


嵌套事务(Nested Transactions)


分布式事务(Distributed Transacti...]]></description><category></category></item><item><title><![CDATA[MySQL中的存储引擎讲解（InnoDB,MyISAM,Memory）]]></title><link>https://blog.csdn.net/qq_41333582/article/details/84135135</link><guid>https://blog.csdn.net/qq_41333582/article/details/84135135</guid><author>qq_41333582</author><pubDate>Fri, 16 Nov 2018 10:35:12 +0800</pubDate><description><![CDATA[一. 存储引擎
1、存储引擎其实就是如何实现存储数据，如何为存储的数据建立索引以及如何更新，查询数据等技术实现的方法。
2、MySQL中的数据用各种不同的技术存储在文件（或内存）中，这些技术中的每一种技术都使用不同的存储机制，索引技巧，锁定水平并且最终提供广泛的不同功能和能力。在MySQL中将这些不同的技术及配套的相关功能称为存储引擎。
二. MySQL 中查看引擎
1、show  engines...]]></description><category></category></item><item><title><![CDATA[进程间通信的8种方式]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83988370</link><guid>https://blog.csdn.net/qq_41333582/article/details/83988370</guid><author>qq_41333582</author><pubDate>Mon, 12 Nov 2018 10:51:34 +0800</pubDate><description><![CDATA[前言：

进程通信：
每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到，所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程A把数据从用户空间拷到内核缓冲区,进程B再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信。

进程间通信（IPC）介绍
进程间通信（IPC，InterProcess Communication）是指在不同进程之间传播或交换信...]]></description><category></category></item><item><title><![CDATA[Elasticsearch－基础介绍及索引原理分析]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83926397</link><guid>https://blog.csdn.net/qq_41333582/article/details/83926397</guid><author>qq_41333582</author><pubDate>Sat, 10 Nov 2018 09:26:04 +0800</pubDate><description><![CDATA[转：https://www.cnblogs.com/dreamroute/p/8484457.html
介绍
Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单，它不仅包括了全文搜索功能，还可以进行以下工作:

分布式实时文件存储，并将每一个...]]></description><category></category></item><item><title><![CDATA[Redis 常用命令]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83902307</link><guid>https://blog.csdn.net/qq_41333582/article/details/83902307</guid><author>qq_41333582</author><pubDate>Fri, 09 Nov 2018 19:23:21 +0800</pubDate><description><![CDATA[Redis 是典型的 KV 数据库，通常所说的 Redis 数据结构指的是 Value 的数据结构，常用的数据结构有 String, Hash, List, Set, Sorted Set. 前三种类型不用多讲，几乎每种语言都存在，后两种 set 是单纯的集合， Sorted Set 是有序集合，在集合内可以根据 score 进行排序。Redis 的命令不区分大小写，但通常情况下使用大写以示区分。...]]></description><category></category></item><item><title><![CDATA[Celery 使用介绍]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83900778</link><guid>https://blog.csdn.net/qq_41333582/article/details/83900778</guid><author>qq_41333582</author><pubDate>Fri, 09 Nov 2018 17:19:12 +0800</pubDate><description><![CDATA[Celery 使用介绍
Celery 简单来说就是一个分布式消息队列。简单、灵活且可靠，能够处理大量消息，它是一个专注于实时处理的任务队列，同时也支持异步任务调度。Celery 不仅可以单机运行，也能够同时在多台机器上运行，甚至可以跨数据中心。
Celery 中比较关键的概念：

worker: worker 是一个独立的进程，任务执行单元，它持续监视队列中是否有需要处理的任务；
broker: ...]]></description><category></category></item><item><title><![CDATA[使用 Celery Once 来防止 Celery 重复执行同一个任务]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83899884</link><guid>https://blog.csdn.net/qq_41333582/article/details/83899884</guid><author>qq_41333582</author><pubDate>Fri, 09 Nov 2018 16:38:34 +0800</pubDate><description><![CDATA[使用 Celery Once 来防止 Celery 重复执行同一个任务
在使用 Celery 的时候发现有的时候 Celery 会将同一个任务执行两遍，我遇到的情况是相同的任务在不同的 worker 中被分别执行，并且时间只相差几毫秒。这问题我一直以为是自己哪里处理的逻辑有问题，后来发现其他人 也有类似的问题，然后基本上出问题的都是使用 Redis 作为 Broker 的，而我这边一方面不想将 R...]]></description><category></category></item><item><title><![CDATA[django-crontab 定时任务]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83899360</link><guid>https://blog.csdn.net/qq_41333582/article/details/83899360</guid><author>qq_41333582</author><pubDate>Fri, 09 Nov 2018 16:13:53 +0800</pubDate><description><![CDATA[定时任务

对于首页的静态化，考虑到页面的数据可能由多名运营人员维护，并且经常变动，所以将其做成定时任务，即定时执行静态化。

在Django执行定时任务，可以通过django-crontab扩展来实现。
1. 安装
pip install django-crontab

2. 添加应用
INSTALLED_APPS = [
    ...
    'django_crontab',  # 定时任...]]></description><category></category></item><item><title><![CDATA[CKEditor富文本编辑器的使用及bug修改]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83898862</link><guid>https://blog.csdn.net/qq_41333582/article/details/83898862</guid><author>qq_41333582</author><pubDate>Fri, 09 Nov 2018 15:49:31 +0800</pubDate><description><![CDATA[CKEditor富文本编辑器的使用及bug修改

为什么要用富文本编译器？

在运营后台，运营人员需要录入并编辑详情信息, 详情信息不是普通的文本，可以是包含了HTML语法格式的字符串。为了快速简单的让用户能够在页面中编辑带格式的文本，我们引入富文本编辑器。富文本即具备丰富样式格式的文本。


1. 安装
pip install django-ckeditor

2. 添加应用
在INSTALLE...]]></description><category></category></item><item><title><![CDATA[Redis 事务]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83690123</link><guid>https://blog.csdn.net/qq_41333582/article/details/83690123</guid><author>qq_41333582</author><pubDate>Sat, 03 Nov 2018 19:47:40 +0800</pubDate><description><![CDATA[原文：https://blog.csdn.net/mindfloating/article/details/8121479

Redis 提供的事务机制与传统的数据库事务有些不同，传统数据库事务必须维护以下特性：原子性(Atomicity),  一致性(Consistency),  隔离性(Isolation),  持久性(Durability)，简称ACID。
我们逐项考察下 Redis 在事务...]]></description><category></category></item><item><title><![CDATA[DRF视图说明]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83540610</link><guid>https://blog.csdn.net/qq_41333582/article/details/83540610</guid><author>qq_41333582</author><pubDate>Thu, 01 Nov 2018 08:20:58 +0800</pubDate><description><![CDATA[视图说明

1. 两个基类
1）APIView
rest_framework.views.APIView
APIView是REST framework提供的所有视图的基类，继承自Django的View父类。
APIView与View的不同之处在于：

传入到视图方法中的是REST framework的Request对象，而不是Django的HttpRequeset对象；
视图方法可以返回REST ...]]></description><category></category></item><item><title><![CDATA[django2.0 关联表的必填on_delete参数的含义]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83539851</link><guid>https://blog.csdn.net/qq_41333582/article/details/83539851</guid><author>qq_41333582</author><pubDate>Tue, 30 Oct 2018 12:06:07 +0800</pubDate><description><![CDATA[django2.0 关联表的必填on_delete参数的含义

原文：https://blog.csdn.net/buxianghejiu/article/details/79086011
1.  一对多(ForeignKey)
class ForeignKey(ForeignObject):
    def __init__(self, to, on_delete, related_name=N...]]></description><category></category></item><item><title><![CDATA[Django项目中的session存储]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83240017</link><guid>https://blog.csdn.net/qq_41333582/article/details/83240017</guid><author>qq_41333582</author><pubDate>Sun, 21 Oct 2018 11:13:28 +0800</pubDate><description><![CDATA[Session

1 启用Session
Django项目默认启用Session。
可以在settings.py文件中查看，如图所示

如需禁用session，将上图中的session中间件注释掉即可。
2 存储方式
在settings.py文件中，可以设置session数据的存储方式，可以保存在数据库、本地缓存等。
2.1 数据库
存储在数据库中，如下设置可以写，也可以不写，这是默认存储方式。
...]]></description><category></category></item><item><title><![CDATA[错误：django.db.utils.InternalError: (1050, "Table 'tb_books' already exists")]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83105105</link><guid>https://blog.csdn.net/qq_41333582/article/details/83105105</guid><author>qq_41333582</author><pubDate>Wed, 17 Oct 2018 09:49:54 +0800</pubDate><description><![CDATA[django中同步数据库时出现错误(前面的忽略):
错误代码1050:
pymysql.err.InternalError: (1050, &amp;amp;quot;Table 'tb_books' already exists&amp;amp;quot;)

解决方法:
python manage.py migrate users --fake 

其中books是自己的应用名。

...]]></description><category></category></item><item><title><![CDATA[Flask项目实现防止CSRF攻击的流程]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83032375</link><guid>https://blog.csdn.net/qq_41333582/article/details/83032375</guid><author>qq_41333582</author><pubDate>Fri, 12 Oct 2018 20:30:38 +0800</pubDate><description><![CDATA[Flask项目实现防止CSRF攻击的流程

a)	使用 flask_wtf 中 CSRFProtect类，初始化该类并传入app
b)	使用 flask_wtf.csrf模块中的generate_csrf方法生成csrf_token
c)	使用请求勾子 after_request，取到响应，统一设置到cookie中
d)	如果前端使用form表单提交，需要在表单中添加隐藏的input，并设置其va...]]></description><category></category></item><item><title><![CDATA[CSRF 攻击的原理和防范措施]]></title><link>https://blog.csdn.net/qq_41333582/article/details/83032282</link><guid>https://blog.csdn.net/qq_41333582/article/details/83032282</guid><author>qq_41333582</author><pubDate>Fri, 12 Oct 2018 20:23:09 +0800</pubDate><description><![CDATA[CSRF 攻击的原理和防范措施

一. 攻击原理：

用户C访问正常网站A时进行登录，浏览器保存A的cookie
用户C再访问攻击网站B，网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交，传指定的参数
而攻击网站B在访问网站A的时候，浏览器会自动带上网站A的cookie
所以网站A在接收到请求之后可判断当前用户是登录状态，所以根据用户的权限做具体的操作逻辑，造成网站攻...]]></description><category></category></item></channel></rss>