自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 看完,再也不怕Git了【高质量】

Git全解

2019-09-29 16:49:32 464 1

原创 在Mac上实现git命令自动补全(详解)

具体步骤如下:1.安装bash-completionbrew info bash-completion2.添加以下代码到**~/.bash_profile**if [ -f $(brew --prefix)/etc/bash_completion ]; then . $(brew --prefix)/etc/bash_completionfi3.执行以下命令s...

2019-09-12 11:34:16 540

转载 Redis常见面试题

Redis有哪些数据结构?字符串String、字典Hash、列表List、集合Set、有序集合SortedSet。如果你是Redis中高级用户,还需要加上下面几种数据结构HyperLogLog、Geo、Pub/Sub。如果你说还玩过Redis Module,像BloomFilter,RedisSearch,Redis-ML,面试官得眼睛就开始发亮了。使用过Redis分布式锁么,它是什么回事?...

2019-07-27 11:41:28 203

转载 我是如何用单机实现亿级规模题库去重的?

我是如何用单机实现亿级规模题库去重的?背景最近工作中遇到了一个问题:如何对大规模题库去重?公司经过多年的积累,有着近亿道题目的题库,但是由于题目来源不一导致题库中有很多重复的题目,这些重复的题目在检索时,除了增加搜索引擎的计算量外,并不会提高准确率。此外由于题目过多,搜索引擎往往采取了截断策略,只对一部分题目进行计算,这导致了某些正确的题目反而得不到计算,拍搜准确率甚至不增反降。所以对于一个搜...

2019-07-19 16:45:13 466

转载 vscode写python时的代码错误提醒和自动格式化(转)

https://blog.csdn.net/BNK_along/article/details/84000953

2019-06-06 13:52:05 3842

原创 beego的几种输出方式,及使用方法。

2019-05-18 14:01:35 3012

原创 Mac解决bogon

早上一来,Mac终端里变成了bogon.然后解决了一下,直接输入下面三行即可。就是设置了一下hostnamesudo hostname MyMacBooksudo scutil --set LocalHostName $(hostname)sudo scutil --set HostName $(hostname)...

2019-05-13 10:45:44 2387 1

转载 Go的异常处理

使用defer, panic, recover捕获异常package main import "fmt" func main(){ defer func(){ //defer的作用就是在此函数运行完毕之后执行(无论是否正常运行) fmt.Println("a") if err:=recover();err!=nil{ fm...

2019-05-10 18:16:09 157

原创 用redis实现“排行榜”、“计数器”、“限速器”

1、排行榜话不多说直接上代码,但是需要考虑,并发!并发!!并发!!!输入: ZINCRBY rank 1 aaa ZINCRBY rank 2 bbb ZINCRBY rank 3 ccc ZINCRBY rank 4 ddd ZINCRBY rank 5 eee ZREVRANGE rank 0 4 withscores输出: 1) "eee...

2019-05-07 16:36:44 816

转载 常见的开源搜索引擎,按需接入到项目之中~

LuceneLucene的开发语言是Java,也是Java家族中最为出名的一个开源搜索引擎,在Java世界中已经是标准的全文检索程序,它提供了完整的查询引擎和索引引擎,没有中文分词引擎,需要自己去实现,因此用Lucene去做一个搜素引擎需要自己去架构.另外它不支持实时搜索,但linkedin和twitter有分别对Lucene改进的实时搜素. 其中Lucene有一个C++移植版本叫CLuce...

2019-04-30 12:19:41 1378

原创 坑 -> 关于Django orm queryset的update方法

场景:1.需要批量修改库中的某个值2.修改完之后还需要使用queryset马上想到的解决方案:关于这个场景想到了使用queryset.update(xxx=yyy)然后继续使用queryset错误:使用queryset.update(xxx=yyy)会清空整个queryset,返回受影响行数所以无法在之后继续使用queryset可选的一个性能不高的解决方案:for query ...

2019-04-19 11:59:01 4019 1

转载 Celery常见问题

译文出处http://docs.celeryproject.org/en/latest/faq.htmlThis document describes the current stable version of Celery (4.1).本文长期更新地址: Celery4.1常见问题术语翻译对照英文 中文celery celeryworker workerqueue 队列mess...

2019-04-18 16:27:18 2957 3

转载 分库分表利弊分析(mysql)

为什么要分库分表?当一张表的数据达到几千万时,查询一次所花的时间会变长。这时候,如果有联合查询的话,可能会卡死在那儿,甚至把系统给拖垮。而分库分表的目的就在于此:减小数据库的负担,提高数据库的效率,缩短查询时间。另外,因为分库分表这种改造是可控的,底层还是基于RDBMS,因此整个数据库的运维体系以及相关基础设施都是可重用的。目前我们系统将近20亿数据,每张表最大的接近600w条/表,每条数据...

2019-03-12 13:58:01 7317

转载 django获取某一个字段的列表,values/values_list/flat

class Building(models.Model): corporation = models.ForeignKey('company.Corporation', verbose_name=u'学校', related_name='buildings') number = models.CharField(u'楼栋编号', max_length=10, unique=...

2019-03-12 10:53:55 4764

原创 python3实现微信公众号确认己方服务器

def wechat_auth_required(log_base='[wechat_api]'): def decorator(view_func): @wraps(view_func) def wrapper(instance, request, *args, **kwargs): signature = request.GET...

2019-03-04 11:48:18 201

转载 pip清华大学镜像

临时使用可以在使用pip的时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gevent,这样就会从清华这边的镜像去安装gevent库。永久修改Linux下,修改 ~/.pip/pip.conf (没有就创建一个), 修改 in...

2018-12-26 12:14:50 3102

原创 python安装某些包出错SNIMissingWarning或者InsecurePlatformWarning

简单粗暴的解决方法:pip install pyopenssl ndg-httpsclient pyasn1

2018-12-22 16:59:32 1119 2

转载 IP代理池及做成服务

起因做过爬虫的人应该都知道,抓的网站和数据多了,如果爬虫抓取速度过快,免不了触发网站的防爬机制,几乎用的同一招就是封IP。解决方案有2个:同一IP,放慢速度(爬取速度慢)使用代理IP访问(推荐)第一种方案牺牲的就是时间和速度,来换取数据,但是一般情况下我们的时间是很宝贵的,理想情况下是用最短的时间获取最多的数据。所以第二种方案是推荐的,那么从哪里能找到这么多代理IP呢?寻找代理程序猿不...

2018-12-21 16:36:12 235

转载 nohup的使用及其中各部分内容的解释

我们在Linux下经常会碰到nohup command>/dev/null 2>&1 &这样形式的命令。首先我们把这条命令大概分解下首先就是一个nohup表示当前用户和系统的回话下的进城忽略响应HUP消息。&是把该命令以后台的job的形式运行。那么就剩下command>/dev/null 2>&1,command>/dev/null较好...

2018-11-30 10:54:16 437

转载 蓄水池算法

题目:给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。请写出一个随机选择算法,使得数据流中所有数据被选中的概率相等。抽象:从n中取出k个数,n未知大小,保证最后n中每个元素被抽取的概率一样为k/n。做法:假设我们从3个数{1,2,3}中取一个数,那么就要求每个数被抽取的概率为1/3,我们先读取前2个数{1,2},我们以1/2的概率选取其中一个数,加入选择{1},...

2018-11-29 17:17:45 236

转载 MySQL Explain详解

在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描,这都可以通过explain命令来查看。所以我们深入了解MySQL的基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略...

2018-11-20 11:00:33 97

转载 tmux的session

//创建一个新的sessiontmux new -s SESSION_NAME;//查看所有sessiontmux ls;//删除指定的sessiontmux kill-session -t SESSION_NAME;//临时退出session 让其在后台继续运行 注意脱离了会话才能关闭xshell 不然当前会话开启的服务会被停掉ctrl + b d注意:上面命令是ctrl和b...

2018-11-16 14:44:37 6347

转载 python虚拟环境--virtualenv

virtualenv 是一个创建隔绝的Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。安装pip install virtualenv  基本使用为一个工程创建一个虚拟环境:$ cd my_project_dir$ virtualenv venv  #venv为虚拟环境目录名,目录名自定义  virtualenv...

2018-11-15 20:48:07 162

转载 Django restframework 认证、权限、限流

认证Authentication可以在配置文件中配置全局默认的认证方案REST_FRAMEWORK = {‘DEFAULT_AUTHENTICATION_CLASSES’: (‘rest_framework.authentication.BasicAuthentication’, # 基本认证‘rest_framework.authentication.SessionAuthenti...

2018-11-14 16:24:55 169

转载 django命令管理

【简介】django-admin.py是Django的一个用于管理任务的命令行工具。本文将描述它的大概用法。另外,在每一个Django project中都会有一个manage.py。manage.py是对django-admin.py的简单包装,它额外帮助我们做了两件事情:它将你的project的包放到sys.path中它将DJANGO_SETTINGS_MODULE环境变量设置为了你的p...

2018-11-12 17:43:27 272

转载 tmux会话的基本命令

安装tmuxsudo yum install tux运行tmux并开启一个新的会话tmux # 显示所有会话 tmux ls新建会话并指定会话名称(建议制定会话名称,以便了解该会话用途)tmux new -s 新建会话(不指定会话名称)tmux new接入上一个会话tmux a #接入指定名称的会话tmux a -t 断开当前会话(还可以使用快捷键:control+b,再按...

2018-11-06 19:13:25 3535

转载 KMP算法理解

https://blog.csdn.net/starstar1992/article/details/54913261先留个链接,以后继续深究

2018-10-13 10:42:26 104

转载 linux下执行python脚本的两种方式

1、直接使用python xxxx.py执行。其中python可以写成python的绝对路径。使用which python进行查询。2、在文件的头部(第一行)写上#!/usr/bin/python2.7,这个地方使用python的绝对路径,就是上面用which python查询来的结果。再用chmod改变文件的执行权限,然后在外面就可以使用./xxx.py或xxx.py执行了。...

2018-10-11 10:02:45 29042

转载 mysql的一些问题详解

1.数据库事务的四个特性及含义数据库事务transanction正确执行的四个基本要素。ACID,原子性(Atomicity)、一致性(Correspondence)、隔离性(Isolation)、持久性(Durability)。原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这...

2018-10-09 18:55:22 102

原创 python中单例模式的线程安全问题

看了好多文章都是java实现的,特此写一篇python的。这个问题的两种解决方案:1.最简单粗暴的就是在系统中先生成一个单例,就不存在线程安全问题了2.用双重同步锁去实现,一把锁加外面,一把锁加里面:class Singleton(object): __instance = None def __new__(cls, age, name): # 加锁 ...

2018-10-07 21:26:33 1422

原创 如何将n个有序大文件,有序的存入一个磁盘?

如何将n个有序大文件,有序的存入一个磁盘?通常会给定一个内存空间(如2G),但是每个有序大文件都在10G以上,所以无法全部读取到内存中进行合并。这问题是一个归并排序的运用!为了方便解说,假设问题中的n=2,并且文件为升序。并设文件一为file_one,文件二为file_two。文件中的数据用1,2,3,4…来表示步骤如下:一、拿到file_one1放入内存。二、拿到file_two1与...

2018-10-06 22:29:43 556

转载 视图,存储过程,触发器

视图的特点视图只是一种逻辑对象,是一种虚拟表,它并不是物理对象,因为视图不占物理存储空间,在视图中被查询的表称为视图的基表,大多数的select语句都可以用在创建视图中优点:集中用户使用的数据,掩码数据的复杂性,简化权限管理以及为向其他应用程序输出而重新组织数据等等语法:  create view view_name [(column[,…n])]with encryptionas se...

2018-10-01 16:48:55 138

转载 常见的开源分布式存储系统

系统整体对比开源协议说明GPL:不允许修改后和衍生的代码做为闭源的商业软件发布和销售,修改后该软件产品必须也采用GPL协议;GPLV2:修改文本的整体就必须按照GPL流通,不仅该修改文本的源码必须向社 会公开,而且对于这种修改文本的流通不准许附加修改者自己作出的限制;GPLV3:要求用户公布修改的源代码,还要求公布相关硬件;LGPL:更宽松的GPLTFSTFS(Taobao File...

2018-10-01 15:26:46 1880

转载 Redis持久化保存方式

一.概念介绍redis提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Apend Only File)。RDB方式RDB方式是一种快照式的持久化方法,将某一时刻的数据持久化到磁盘中。•redis在进行数据持久化的过程中,会先将数据写入到一个临时文件中,待持久化过程都结束了,才会用这个临时文件替换上次持久化好的文件。正是这种特性,让我们可以随时来进行备份,因为快...

2018-10-01 10:50:47 181

转载 用python写定时任务

https://www.jianshu.com/p/ab8d9e576ac4

2018-09-27 19:47:33 495

原创 mysql去重,只留一个(id最小的)

今天爬了一堆数据,结果发现有些重复的,无奈之下只好写个sql把mysql里去重了。如果大家有一样的需求可以直接拿去改吧改吧用。表名:你自己数据库的表名字段名:根据什么字段去重delete from 表名 where 字段名 in (select 字段名from (select 字段名 from 表名 group by 字段名 having count(字段名)>1)a) and...

2018-09-27 18:21:45 2907

原创 python用协程池异步爬取音乐的json数据

# -*- coding: utf-8 -*-# @Author : Acmimport gevent.monkeygevent.monkey.patch_all()from gevent.pool import Poolfrom Queue import Queueimport jsonimport jsonpathimport requestsimport timei...

2018-09-22 15:59:33 514

原创 用python2.7的requests模块下载图片(案例是200张)

用python2.7的requests模块下载图片(案例是200张)想要增加数据量自己改参数就行了。其中是有些数据重复,可能不到200,但是不会差太远。# -*- coding: utf-8 -*-# @Author : Acmimport jsonimport jsonpathimport requestsbase_url = "https://unsplash.com/...

2018-09-20 19:37:22 883

原创 用python爬虫下载20张图片到本地

数据全都是写死的,有需要可以自行修改。import requestsfrom lxml import etreebase_url = "https://unsplash.com/search/photos/flower"headers = {"User-Agent": "Mozilla/5.0 (Linux; Android

2018-09-20 17:47:50 1080

转载 Response.iter_content的用法

Response.iter_content原始响应内容在罕见的情况下,你可能想获取来自服务器的原始套接字响应,那么你可以访问 r.raw。 如果你确实想这么干,那请你确保在初始请求中设置了 stream=True。具体你可以这么做:>>> r = requests.get('https://github.com/timeline.json', stream=True)&g...

2018-09-20 16:53:10 4665 1

空空如也

空空如也

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

TA关注的人

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