Java JDK动态代理 CGLib动态代理

代理(proxy):就是一个“中介”。 现在对象A可以直接调用对象B。 需求来了:在调用B的前后打印日志。 静态代理 创建一个新类(发生在编译时),来作为旧类的代理,从而增加功能。增加新功能的代码无法复用。 public class Hello{ public void say...

2018-12-25 15:55:37

阅读数 68

评论数 0

浅析Python3中的bytes和str类型

转自:https://www.cnblogs.com/chownjy/p/6625299.html Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式混用str...

2018-10-31 09:47:01

阅读数 141

评论数 0

IO模型、IO多路复用、select poll epoll

基础知识 同步、异步 进程的阻塞 理解 IO操作 Unix下可用的5种I/O模型 同步阻塞 IO 同步非阻塞 IO IO 多路复用 异步 IO 5中IO模型的比较 IO多路复用的理解 select poll epoll的区别 基础知识 高性能架构...

2018-08-17 18:06:31

阅读数 81

评论数 0

部署Django项目Nginx+uwsgi

部署方式:Nginx代理+uwsgi应用服务 操作系统:CentOS7 Django项目:https://github.com/zelinhehe/mysite.git为例:   1. 安装 Python3.6   获取安装包 wget https://www.python.org/...

2018-07-20 15:31:15

阅读数 86

评论数 0

分而治之的思想

分治 分治(Divide and Conquer)是一种算法范式,也是一种解决问题的思想。 步骤如下: 1.分解(Divide):将问题分解为同一类型的子问题; 2.治理(Conquer):递归地解决子问题; 3.合并(Combine):合并子问题的答案,得出原问题的答案。 任何一个可以用...

2018-07-20 09:17:16

阅读数 582

评论数 0

Django通过 Celery添加异步任务

转自 异步任务的重要性 大家在做web项目的时候经常会遇到一些耗时的操作, 比如: 发送邮件、发送短信、生成pdf。这些操作在某些情况下需要立即返回结果给用户,但是可以在后台异步执行。 比如用户邮箱注册的时候, 在发送邮件的时候可以先把”已经发送激活邮件到邮箱”返回给用户, 同时把邮件发送任...

2018-05-18 16:21:50

阅读数 971

评论数 0

Django从请求到返回都经历了什么

转自 从runserver说起 ruserver是使用django自己的web server,主要用于开发和调试中, 部署到线上环境一般使用nginx+uwsgi模式 manage.py 探秘 看一下manager.py的源码,你会发现上面的命令其实是通过Django的execute...

2018-05-18 16:19:45

阅读数 493

评论数 0

Python装饰器的函数式编程

        Python的修饰器的英文名叫Decorator,当你看到这个英文名的时候,你可能会把其跟Design Pattern里的Decorator搞混了,其实这是完全不同的两个东西。虽然好像,他们要干的事都很相似——都是想要对一个已有的模块做一些“修饰工作”,所谓修饰工作就是想给现有的模...

2018-04-11 14:41:49

阅读数 90

评论数 0

OpenID与OAuth

先说区别区别OpenID 和 OAuth 都可以用来认证身份,但是他们之间到底有哪些不同?OpenID — authentication 证明、鉴定、证实 ——“用户是谁”OAuth — authorization 授权、认可、批准——“用户能做什么”OpenID用户希望访问其在http:...

2018-04-04 11:53:34

阅读数 276

评论数 0

python -m

python -m xxx.py作用是:把xxx.py文件当做模块启动但是我一直不明白当做模块启动到底有什么用。python xxx.py和python -m xxx.py有什么区别!自问自答:python xxx.pypython -m xxx.py这是两种加载py文件的方式:1叫做直接运行2把...

2018-03-20 20:30:27

阅读数 6696

评论数 0

Django中修改字段时注意的一个问题

问题:Django 1.7.8表 Users 和 Tenant 做了多对多关联。django 会自动创建一个表 users_tenants(user_id与tenant_id的对应)class Users(models.Model):tenants = models.ManyToManyField...

2018-02-23 15:30:50

阅读数 722

评论数 0

virtualenv 创建隔离的 Python环境

virtualenv virtualenv 是一个工具。用来创建隔离的 Python环境。 一、安装 # pip install  virtualenv 二、创建python虚拟环境     命令:virtualenv [虚拟环境名称]。     # virtualenv env1...

2018-01-24 17:30:08

阅读数 186

评论数 0

apidoc: Inline Documentation for RESTful web APIs

apidoc:Inline Documentation for RESTful web APIs 安装 apidoc的过程记录: $ npm install apidoc -g The program 'npm' is currently not installed. You can...

2018-01-13 21:12:20

阅读数 172

评论数 0

Python的GIL锁

要想把N核CPU的核心全部跑满,就必须启动N个死循环线程。 用 Python 启动与CPU核心数量相同的N个线程,在4核CPU上可以监控到CPU占用率仅有102%,也就是仅使用了一核。 但是用C、C++或Java来改写相同的死循环,直接可以把全部核心跑满,4核就跑到400%,8核就跑到800%...

2018-01-13 21:02:29

阅读数 1422

评论数 0

Python中的ThreadingLocal

一旦在主线程实例化了一个local,它会一直活在主线程中,并且又主线程启动的子线程调用这个local实例时,它的值将会保存在相应的子线程中。 1.local_data具有全局访问权,主线程,子线程都能访问它。 2.但是 local_data的值却是线程隔离的,值只与各当前线程有关。 #! c...

2018-01-13 20:58:50

阅读数 246

评论数 0

什么是序列化与反序列化

在OSI七层协议模型中展现层的主要功能: 1.把 应用层的对象 转换成一段连续的二进制序列。——序列化 2.把二进制序列转换成应用层的对象。——反序列化 概念: 序列化: 将 数据结构或对象 转换成 二进制序列 的过程 反序列化:将 二进制序列 转换成 数据结构或对象 的过程 ...

2018-01-03 15:49:00

阅读数 253

评论数 0

Python的 enumerate zip map reduce filter

enumerate 功能:遍历一个序列的元素以及其索引号 例子: >>> list(enumerate('abc')) [(0, 'a'), (1, 'b'), (2, 'c')] >>> >>> for index, element in ...

2017-12-18 18:47:25

阅读数 86

评论数 0

字符编码 ASCII Unicode UTF-8

字符编码: ASCII 编码: 最早只有127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号,比如大写字母A的编码是65,小写字母z的编码是122。 Unicode 编码:  把所有语言都统一到一套编码里,这样就不会再有乱码问题了。 ASCII编码是1个字节,而Unico...

2017-12-18 10:59:58

阅读数 130

评论数 0

python 限制函数执行时间,自己实现 timeout

# coding=utf-8 import signal import time def set_timeout(num, callback): def wrap(func): def handle(signum, frame): # 收到信号 SIGALRM 后的回...

2017-08-24 15:03:28

阅读数 14054

评论数 2

Python 装饰器 decorator

高阶函数可以把 函数 作为参数,也可以返回一个函数。 那么,是否可以使用高阶函数,接受一个原函数,对其包装,然后返回一个新函数?

2017-08-09 11:53:22

阅读数 194

评论数 0

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