自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

wjcid的博客

勤思考,多学习

  • 博客(8)
  • 收藏
  • 关注

原创 Scrapy安装及爬虫示例

一、Windows下载安装python3.9.6,配置环境变量二、安装scrapycmd命令pip install scrapy三、创建运行项目创建项目:scrapy startproject pytest注意:新建项目需要将settings.py配置文件的 ROBOTSTXT_OBEY = True 改为 False示例:爬取百度首页创建爬虫文件:scrapy genspider baidu-spider www.baidu.com查看爬虫列表:scr...

2021-07-29 11:44:42 67

原创 设计模式之面向对象的基本原则

实际开发中虽然很少用到设计模式,但还是需要学习一下。扩宽一下解决问题时的思路。推荐一本设计模式的书《大话设计模式》,以两人对话的方式展开,结合实际且通俗易懂。今天先对面向对象的基础做个总结三大特征 封装、继承、多态 。基本原则1、单一职责就一个类而言,应该仅有一个引起它变化的原因(一个类只负责一项职责)一个类如果承担的职责过多,就等于把这些职责耦合在一起,变化放生时,会遭受意想不到的破坏。2、里式代换子类必须能够替换掉它们的父类一个软件实体如果使用的是一个父类的话,那

2021-02-01 15:59:19 84

原创 MySQL优化之查询优化

索引优化一、存储引擎以不同方式使用B-Tree索引1.MyISAM使用前缀压缩技术使索引更小,但InnoDB则按照原数据格式存储。2.MyISAM索引通过物理位置引用被索引的行,InnoDB则根据主键引用被索引的行二、使用索引索引的优点建立索引的目的是加快对表中记录的查找或排序!① 建立索引的列可以保证行的唯一性,生成唯一的rowId② 建立索引可以有效缩短数据的检索时间③ 建立索引可以加快表与表之间的连接④ 为用来排序或者是分组的字段添加索引可以加快分组和排序.

2021-01-26 18:13:50 205

原创 Redis持久化

Redis 提供了两种不同的持久化方法来将数据存储在硬盘中。1、快照(snapshotting)它可以将存在于某一时刻的所有数据都写入硬盘里面。(适用于容灾备份)2、只追加文件(append-only file,AOF)它会在执行写命令时,将被执行的写命令复制到硬盘里这两种方法即可同时使用,也可以单独使用缺点(互补关系就不写优点了)快照:如果系统发生崩溃,用户将丢失最近一次生成快照之后更改的所有数据。AOF:Redis不断的将被执行的写命令记录到AOF文件里面,随着Redis不断运行,AOF文

2021-01-22 16:51:43 121

原创 git 冲突解决

一、分支合并是的冲突解决二、多人协作时的冲突解决这种情况比较少见,我们一般在push 前,需要将远程的代码先pull 下来举个栗子A B两人都修改了config/log.php 中同一行的代码A先将代码push 到远程develop分支B 将代码push到远程分支时 出错解决方法:git pull 拉取更新,解决冲突,再次提交...

2021-01-19 18:32:47 1115

原创 git分支管理流程和命令

分支分类主要分支:master和develop分支支持性分支:特性分支,发布分支,热补丁分支各分支简介master 与产品环境代码保持一致的分支develop 开发的主分支feature 具体开发的功能分支,创建自develop分支,完成后合并到develop并删除分支。release 用于发布新版本的分支、修复测试BUG,创建自develop分支,合并到develop和master该发行版到达它的预定目标后删除分支。fixbug 修复线上bug,创建自master分支.

2021-01-18 18:28:33 138

原创 redis 分布式锁

WATCH乐观锁只会在数据被其他客户端抢先修改的情况下通知执行了这个命令的客户端,而不会阻止其他客户端对数据进行修改一般用 watch、multi、exec结构包裹SETNX悲观锁这个命令只有在键不存在的情况下为键设置值,将一个随机生成的值设置为键的值,并使用这个值防止锁被其他进程取得。程序尝试获取锁失败后会不断重试,直到成功或者超过给定时限细粒度锁在商品交易时前两种锁锁住的是整个市场,而我们关心的是某件商品,通过只锁住商品二不是整个市场,可以减少锁竞争,提升程序性能..

2021-01-15 11:41:05 72

原创 MySQL优化之设计优化

MySQL优化分为以下几个方面数据表设计 SQL查询优化 分库、分表、分区 配置主从复制、读写分离 其他配置由于总体篇幅过长,本篇先对第1点方法进行总结本篇内容详情参考《高性能MySQL(第3版)》第4章数据表设计一、遵循三范式,反三范式1.第一范式确保数据表中每列(字段)的原子性。如果数据表中每个字段都是不可再分的最小数据单元,则满足第一范式。例如:user用户表,包含字段id,username,password2.第二范式在第一范式的基础上更进一步.

2021-01-15 11:33:02 211

空空如也

空空如也

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

TA关注的人

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