5 hpulfc

尚未进行身份认证

暂无相关简介

等级
TA的排名 1w+

python 中序列化方式的比较

python 中序列化方式的比较(pickle, json)相同点, 都能够用来序列化数据,返回字符串。下面主要是来说明一下区别性能这个便是第一个要说的,通过测试发现序列化相同数据,json速度显然要快一些,大约是20~30倍,同时得到的字符串的体积上也有不同json 相对较小,数据结构不同,差别也有不同。总结来说,json 性能较好。适用性json 适合跨语言的数据交换,pick...

2020-01-15 15:14:42

mongo 中的事务(一)

MongoDB中的事务注意:mongo version 4.2因为mongo db 里面的文档是可以内嵌,一般对于单个集合(表)一般用不到事务,然而对于多个集合、多个文档、多个数据库甚至于多个分片进行操作的时候就需要用到分布式事务,也就是多文档事务了首先看一个例子: 官网例子# For a replica set, include the replica set name and a ...

2019-12-20 15:26:51

关于mongodb中的GridFS的使用

关于mongodb中的GridFS的基本使用基本的说明mongo 作为一个非关系型数据库,使用非常方便,在项目中也经常的使用。这里主要是说一些他的 网格文件系统 的使用。在我们想要存储一些文件的时候,可以存放得到文件系统里面,然后使用的时候通过程序读取。当然还可以使用数据库进行存放一些小的文件,这里使用mongo的GridFS。GridFS 里面存放的主要是有两个集合,一个集合存放数据...

2019-06-29 11:11:59

http 请求测试,检验参数是否传入正确

http 请求测试,检验参数是否传入正确首先是一个测试的网址 http://www.httpbin.org可以测试各种http方法,返回数据格式等。这里主要是测试了tornado 中AsyncHttpClient的使用对于一些请求,主要是将数据放在form里进行发送,并且设置http请求类型为 application/x-www-form-urlencoded但是呢,有些时候可能因为参数传...

2019-06-29 11:10:03

python 装饰器做缓存

使用装python饰器做缓存装饰器在之前的文章中有讲过,这里主要是说了装饰器的用法和应该怎么理解。这片文章给出一片补充:主要说在缓存方面的应用。在此之前呢,需要补充一些知识点:就是 python 查找变量的顺序是什么?答案就是LEGB原则:也就是`Local -> Enclosed -> Global -> Built-in`也就是先在局部作用域内(例如函数内)进行查找...

2019-05-30 17:44:13

python 数据描述符的使用(附带装饰器)

属性查找优先级类属性数据描述符 (同时实现__get__和__set__)实例属性非数据描述符 (只实现__get__)__getattr__通过代理实现属性懒加载这里是使用装饰器的方式实现的懒加载。在未使用的时候是一个方法,当第一次使用过后就会替换掉方法,并为之设置属性值关键代码:value = self.method(instance)setattr(instance...

2019-05-29 16:56:22

python 中判断一个对象是否为函数

python 中判断一个对象是否为函数两种方式:使用 hasattr ,通过验证有没有__call__函数进行判断def test(): print "hello"print hasattr(test, "__call__")通过使用 callable进行判断print callable(test)...

2019-05-28 14:30:10

python的重入锁(简单说明)

python 重入锁重入锁就是可以多次获取的锁.(条件是在同一线程下) 对应的是threading.RLock。普通的锁是threading.Lock,这个锁在同一线程下 未释放的情况下再次获取会造成死锁,所以就需要RLock如下:普通情况下 会死锁import threadinglock = threading.Lock()with lock: print "first g...

2019-05-22 12:06:09

基本进制转换

基本进制转换(记录)10 进制 到 2 进制使用bin()函数print bin(12)10 进制 到 8 进制使用oct()函数print oct(12)10 进制 到 16 进制使用hex()函数print hex(12)x 进制 到 10 进制使用int()函数x = 3print int(12, x)# 输出 5字符与10进制转换使用ord()、ch...

2019-05-22 11:03:13

SVN Clean up 失败和SVN is already locked情况解决

出现这个问题后使用“清理”即"Clean up"功能,如果还不行,就直接到上一级目录,再执行“清理”,然后再“更新”。有时候如果看到某个包里面的文件夹没有SVN的标志,直接用“Ctrl+Delete”手工删除,然后“清理”,最后“更新”或“提交”。有时候有的文件死活无法提交和更新,有lock字样的提示,:首先点击该文件,然后getLock,再选中stealLock,然后release ...

2019-05-13 09:54:23

openpyxl 的使用记录

这里主要是把之前用到的一些 python 操作excel的一些基本用法记录一下python 中的操作excel的库openpyxlopenpyxl中 Workbook 是工作簿的类, 其中sheet是一张工作表加载excelfrom openpyxl import load_workbookload_workbook("path_to_wxcel.xlsx")获取所有sheet...

2019-04-17 17:12:13

996icu

“工作996,生病ICU。”当互联网公司的程序员们在论坛上声讨“996”时,远在硅谷的工程师K,每天下午5点已经下班回家看娃了。K在Facebook做了多年的工程师。当我问他硅谷是否流行996时,他告诉我,在硅谷,尤其是大公司,加班并不常见。除非真的遇到特殊情况,大家基本上自觉自愿加班。“只要是大家都流程合理,其实不怎么用加班。很多加班都是内耗、内部流程不合理、会太多。”K对我举例,在Fa...

2019-04-16 10:33:01

Mysql show processlist 排查问题

一、命令概述:mysql show full processlist 用来查看当前线程处理情况,具体信息请参考官网:https://dev.mysql.com/doc/refman/5.7/en/show-processlist.htmlshow full processlist 返回的结果是实时变化的,是对mysql链接执行的现场快照,所以用来处理突发事件非常有用。一般用到show...

2019-04-11 17:51:20

为什么评论点赞的都是小哥哥,就没有小姐姐来交流一下 微信:hpulfc

为什么评论点赞的都是小哥哥,就没有小姐姐来交流一下 ,来一场稀里哗啦的恋爱呢

2019-03-30 14:33:08

mysql 出现了 Waiting for table metadata lock的解决方案

在使用pt进行ddl 的时候需要创建触发器,然后在创建的过程中,出现了Waiting for table metadata lock, 下面是一些解决办法,本质是一样的,这里总结来说就是:kill 掉某些事物占用的锁,使DDL成功,然后进而不阻塞其他DML操作。设置锁超时短些 lock_wait_timeout另外可以参考以下链接:https://www.cnblogs.com/digd...

2019-03-05 10:04:46

python代码模拟sqlalchemy懒加载注入属性

sqlalchemy 代码模拟懒加载注入属性偶然再次看到有人提到了orm 的一些关联属性的懒加载问题,这里就按照自己的想法实现了一下class Base(object): passclass User(Base): # .... 很多列 @property def address(self): if not hasattr(sel...

2019-03-01 17:26:50

在线修改大表结构之pt-online-schema-change (alter-foreign-keys-method)

安装sudo yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpmsudo yum install percona-toolkit查看触发器:方式一:use information_schema;select * from TRIGGERS;方式二:use database_nam...

2019-02-26 17:05:34

percona-toolkit 之 【pt-online-schema-change】说明

背景:      MySQL 大字段的DDL操作:加减字段、索引、修改字段属性等,在5.1之前都是非常耗时耗力的,特别是会对MySQL服务产生影响。在5.1之后随着Plugin Innodb的出现在线加索引的提高了很多,但是还会影响(时间缩短了),主要是出现了MDL锁。不过5.6可以避免上面的情况,但目前大部分在用的版本都是5.6之前的,所以DDL操作一直是运维人员“头疼"的事。那如何在不锁表...

2019-02-25 16:56:23

mysql 避免重复写入数据的三种方式 和insert ...on duplicate updt... 死锁

mysql在存在主键冲突或者唯一键冲突的情况下,根据插入策略不同,一般有以下三种避免方法。1、insert ignore2、replace into3、insert on duplicate key update注意,除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用以上三个语句没有意义,与使用单纯的INSERT INTO相同。一、insert ignoreinsert ...

2019-02-18 18:29:19

如何清空linux 中的history

记录是先在缓存中,然后会话结束的时候写到 .bash_history 中的。所以可以使用 history -c 清除, 然后再退出exit 就可以简单的抹除痕迹了

2019-02-16 18:20:34

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。