- 博客(22)
- 收藏
- 关注
原创 Redis缓存穿透,缓存击穿,缓存雪崩解决方案分析
前言设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。解决方案有很多种方法可以有效地解决缓存穿透问题,最常见的则是采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的bitmap中,
2020-09-29 11:06:01
167
原创 python re正则模块详解
一. 正则表达式正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模
2020-08-11 10:19:45
674
原创 centos7配置mysql8并允许外网访问
1.安装环境linux版本:CentOS 7.+ x64Mysql:8.0在CentOS中默认安装有MariaDB,但是我们需要的是MySQL,安装MySQL可以覆盖MariaDB.2.安装步骤1.从mysql官网下载MySQL的Yum Repository。根据CentOS和Mysql的版本,选择下载相对应的文件。下载命令:wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm2.用yum命令安装
2020-07-30 09:29:45
2365
原创 centos7GitLab搭建详解
GitLab的安装及使用教程GitLab简介GitLab,是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目安装。它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。安装配置yum源vim
2020-07-02 16:41:33
335
原创 sql时间戳按照天统计数据
select DATE_FORMAT(FROM_UNIXTIME(add_date),’%Y-%m-%d’) as day,count(*) from tbkt_task.yw_task_practice_test group by day limit 100
2019-12-23 10:43:05
1855
原创 基于python的apk安装包热更新
基于python的apk安装包热更新1.为什么要试用热更新安装包更新的时候,一般是将整个安装包下载然后进行覆盖安装,然后这个接口只需要将当前版本号和需要的更新的版本号传入,然后进行对应的安装包下载,然后进行解压比对,将差异文件放到一个文件夹里面,压缩以后传入到对应的文件服务器地址,然后app可以根据后台返回的地址进行文件下载,然后解压覆盖2.用户版本接口需要的参数和返回的参数{ ...
2019-09-29 16:48:58
895
原创 CentOS7 yum方式安装MySQL5.7并配置外网访问
1.安装依赖环境yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel2.在user/local下面新建一个python文件夹mkdir user/loc...
2019-06-27 17:31:31
492
原创 Vue项目的搭建、配置与发布教程
第一步:Vue项目的搭建1:首先需要安装node.js和npm 打开cmd命令行,首先安装node 步骤:https://nodejs.org/en/download/ node官网,选择跟自己的电脑匹配的版本进行下载,然后一步步的安装即可,输入node -v,如果出现版本信息即表示安装成功。(附百度网盘链接链接:https://pan.baidu.com/s/1_tTMryRt...
2018-08-14 15:49:06
1403
原创 Python ElasticSearch基础教程
ElasticSearch简介 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 我们建立一个网站或应用程序,并要添加...
2018-06-15 17:22:44
6096
1
原创 docker使用的基本命令(超全)
1: 打开gitbash 2: 查看docker镜像的状态: 可查看镜像的ip docker-machine.exe ls 3: 启动你所需要的镜像 docker-machine.exe start dev1 4: 进入你所需要的镜像 docker-machine.exe ssh dev1...
2018-05-24 09:32:36
475
原创 django实现自带登录注册功能
1.通过django-admin startproject xxx 建立一个django工程 2.进入到和manage.py同级目录下,通过Python manage.py startapp zzz项目 3.在zzz文件下的urls中设置将要访问的路由 url(r'^login/',login), url(r'^register/',regist), 注意引用views文件 ...
2018-03-20 12:55:01
4082
1
原创 Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"
在python3.6以上版本安装scrapy框架是会报错缺少Microsoft Visual C++ Build Tools 1.pip install scrapy 然后安装会出现下面错误 2.去http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 下载twisted对应版本的whl文件,这里对应版本是只对应你安装的python的版本,寻...
2018-02-24 17:28:37
15934
原创 认识函数的同步、异步、协程
1.同步#引用时间片段,系统import timeimport os#同步进程阻塞def rep_a(): print("开始请求处理rep_a"); time.sleep(5) print("完成处理rep_a");def rep_b(): print("开始请求处理rep_b"); print("完成请求处理rep_b");#主函...
2018-02-12 16:56:19
257
翻译 sql语句集锦
创建数据库 创建之前判断该数据库是否存在 if exists (select * from sysdatabases where name=’databaseName’) drop database databaseName go Create DATABASE databasename on primary– 默认就属于primary文件组,可省略 ( /–数据文件的具体描述–/
2018-02-04 23:50:28
252
原创 Python 京东爬虫抢手机小程序
1.需要插件chromedriver.exe,这个可以从网上直接下载 2.给大家附上代码`#京东抢手机脚本 from splinter.browser import Browser import time登录页def login(b): #登录京东 b.click_link_by_text(“你好,请登录”) time.sleep(3) b.cli
2018-02-03 00:27:35
9836
原创 scrapy 爬取腾讯招聘几千条数据
1.先通过 scrapy startproject mytencent 命令创建一个爬虫文件 2.再通过scrapy genspider tencent www.hr.tencent.com 创建一个蜘蛛 3.查看原网页分析数据,通过xpath选择要爬取的数据,然后再item.py文件中添加需要保存的数据列名positionName = scrapy.Field()#职位名称posi...
2018-02-02 01:10:26
627
原创 pip安装软件时出现Command “python setup.py egg_info“ failed with error code 1 in /tmp/pip-build*的解决方案
1.报错原因是缺少依赖,正确的安装应该是先安装python36U yum install python36u python36u-devel 2,如果还是不行再通过 yum install gcc mariadb-devel 安装 gcc mariadb-devel3.最后直接pip install mysqlclient
2018-01-31 19:10:43
13189
2
原创 centos7.3 安装scrapy出错Could not find a version that satisfies the requirement Twisted>=13.1.0
1错误原因,通过pip install 安装scrapy是报错Could not find a version that satisfies the requirement Twisted>=13.1.0 (from Scrapy) (from versions: ) No matching distribution found for Twisted>=13.1.0 (from Scrapy)
2018-01-31 16:17:34
16965
原创 python爬取拉钩网数据
import requestsimport re#引用正则匹配from bs4 import BeautifulSoupheaders = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537
2018-01-31 00:01:34
437
原创 centos 7.3安装配置Python3.6.1
1.先安装一些依赖问题提示安装 yum install xz gcc zlib zlib-devel 2.官网下载源码包 地址:https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz 也可在windows下载,把下载好的文件放到桌面上,然后通过filezilla上传,找到下载好的文件,右键点击上传到指定文件目录下 3.cd
2018-01-27 16:39:37
508
1
原创 scarpy中crawl Unknown command:报错解决办法
1.写scrapy遇到crawlUnknown command:错误: 2,问题出在scrapy.cfg文件丢失,所以在工程文件下放一个scrapy.cfg文件 3.注意把文件中的default和project改成自己的工程名 4.加完scrapy.cfg文件后,在运行之后就可饮料
2018-01-27 12:03:23
26107
4
原创 Python正则爬取全书网上万条数据
import requests import re import pymysql连接MySQL创建数据库conn = pymysql.connect( host=’localhost’, port=3306, user=’root’, db=’noveltest’, charset=’utf8’ ) cursor = conn.
2018-01-25 01:12:04
697
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人