自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux常用命令

1.常用什么查看log?cat,tail2.如何查找一个文件大小超过5M的文件find -size +5M-size:表示文件大小,+表示大于某个数,-表示小于某个数。3.如何查看进程?1、ps命令——查看静态的进程统计信息(Processes Statistic)常见的选项: a:显示当前终端下的所有进程信息,包括其他用户的进程。 u:使用以用户为主的格式输出进程信息。 x:显示当前用户在所有终端下的进程。 -e:显示系统内的

2022-05-10 21:09:24 512

原创 什么是事务

1、什么是事务 (1) 事务的定义 事务就是用户定义的一系列数据库操作,这些操作可以视为一个完成的逻辑处理工作单元,要么全部执行,要么全部不执行,是不可分割的工作单元。 (2)事务的使用: begin transaction commit/rollback. begin transaction 表示事务的开启标记, commit 表示事务的提交操作,表示该事务的结束,此时将事务中处理的数据刷到磁盘中物理数据库磁盘中去...

2022-05-09 21:52:59 1901

原创 什么是索引

什么是索引:索引是数据库中用于提高查询效率的技术,类似于目录一个索引是存储的表中一个特定列的值数据结构(最常见的是B-Tree)。索引是在表的列上创建。所以,要记住的关键点是索引包含一个表中列的值,并且这些值存储在一个数据结构中。请记住记住这一点:索引是一种数据结构 。为什么使用索引:如果不使用索引,数据会零散的保存在磁盘块中,查询数据需要挨个遍历每一个磁盘块,直到找到数据为止,使用索引后会将磁盘块以树桩结构进行保存,查询数据时会大大降低磁盘块的访问数量,从而提高查询效率。索引是越多越好吗?

2022-05-08 21:08:01 870

原创 delete,drop,truncate 区别

一、相同点: truncate和不带where自居的delete,以及drop都会删除表内的数据二、不同点: 1、truncate和delete只删除数据不删除表的结构(定义),而drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index);依赖于该表的存储过程/函数将保留,但是变为invalid状态。 2、delete命令是DML,删除的数据将存储在系统回滚段中,需要的时候,数据可以回滚恢复。 而trunc...

2022-04-26 21:17:45 7227

原创 进程与线程的区别

进程与线程的区别总结线程具有许多传统进程所具有的特征,故又称为轻型进程(Light—Weight Process)或进程元;而把传统的进程称为重型进程(Heavy—Weight Process),它相当于只有一个线程的任务。在引入了线程的操作系统中,通常一个进程都有若干个线程,至少包含一个线程。根本区别:进程是操作系统资源分配的基本单位,而线程是处理器任务调度和执行的基本单位资源开销:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做轻量级的进程,同一类线程

2022-04-26 20:48:32 43

原创 Python GIL锁

一、什么是GIL锁  GIL锁的英文全称:Global Interpreter Lock ,中文意思是:全局解释器锁。由于全局解释器锁的存在,在同一时间内,python解释器只能运行一个线程的代码,这大大影响了python多线程的性能。而这个解释器锁由于历史原因,现在几乎无法消除。二、Python语言与GIL锁的关系  Python语言和GIL解释器锁没有关系,它是在实现Python解析器(CPython)时所引入的一个概念,同样一段代码可以通过CPython,PyPy,Jpython等不同的P

2022-04-26 20:34:21 1051

原创 jmeter分布式测试

在使用Jmeter进行性能测试时,如果并发数比较大(比如最近项目需要支持1000并发),单台电脑的配置(CPU和内存)可能无法支持,这时可以使用Jmeter提供的分布式测试的功能。一、Jmeter分布式执行原理:  1、Jmeter分布式测试时,选择其中一台作为调度机(master),其它机器做为执行机(slave)。  2、执行时,master会把脚本发送到每台slave上,slave 拿到脚本后就开始执行,slave执行时不需要启动GUI,我理解它应该是通过命令行模式执行的。  3、执行

2022-04-04 21:51:37 824

原创 appium原理

一、appium-Android工作流在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调⽤用UiAutomator的命令,实现App的自动化测试具体的步骤:1.客户端是我们写的webdriver测试脚本。2.中间是Appium的服务,Appium在服务端启动一个Server(4723端口),跟selenium Webdriver测试框架类似, Appium⽀持标准的WebDriver JSONWireProtocol。在这里提供它提供

2022-04-04 19:41:54 116

原创 selenium原理

讲述Selenium WebDriver原理之前,我们先来看下w3c WebDriver协议,这里以 ChromeDriver 为例。WebDriver术语解释:W3C WebDriver是一个浏览器协议,又称WebDriver 协议/WebDriver 规范/WebDriver API Driver 是 WebDriver API 的特定实现,比如 Chrome 浏览器的 ChromeDriver。 ChromeDriver是一个可以独立运行的服务器程序,...

2022-04-04 19:07:30 2432

原创 mq消息队列概念

MQ初窥门径全称(message queue)消息队列,一个用于接收消息、存储消息并转发消息的中间件应用场景用于解决的场景,总之是能接收消息并转发消息 用于异步处理,比如A服务做了什么事情,异步发送一个消息给其他B服务。 用于削峰,有些服务(秒杀),请求量很高,服务处理不过来,那么请求先放到消息队列里面,后面按照能力处理,相当于蓄水池。 应用解耦、消息通讯等等 总之MQ是可以存放消息并转发消息的中间件,场景取决于拿这个能力去解决什么问题MQ概念模型MQ向别人

2022-04-03 16:53:44 116

原创 redis缓存3类问题

设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。缓存穿透描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求。由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,...

2022-04-03 15:57:03 59

原创 redis缓存优缺点

1、为什么要使用Redis?速度快,完全基于内存,使用C语言实现,网络层使用epoll解决高并发问题,单线程模型避免了不必要的上下文切换及竞争条件;注意:单线程仅仅是说在网络请求这一模块上用一个线程处理客户端的请求,像持久化它就会重开一个线程/进程去进行处理丰富的数据类型,Redis有8种数据类型,当然常用的主要是 String、Hash、List、Set、 SortSet 这5种类型,他们都是基于键值的方式组织数据。每一种数据类型提供了非常丰富的操作命令,可以满足绝大部分需求,如果有特

2022-04-03 15:49:35 912

原创 Django学习笔记(二)

一.数据模型配置在model.py中编写类然后建立数据库表:python manage.py makemigrations查看代码实际执行的sql语句:python manage.py sqlmigrate xxx 0001创建数据库:python manage.py migrate然后会在项目中生成一个db.sqllite3文件二.后台admin配置创建超级管理员:python manage.py createsuperuser...

2021-03-14 18:17:06 65

原创 Django学习笔记(一)

一.django项目基本操作创建项目:django-admin startproject +项目名创建应用:python manage.py startapp +应用名 or django-admin startapp +应用名运行项目:python manage.py runservermanage.py 基于django-admin封装,如下图查看两个命令参数...

2021-03-14 11:07:06 112 1

原创 linux挂载u盘并测试读写速度

挂载u盘1,将u盘插入机器,在目录/mnt下回出现一个sda2,确定在 目录 /mnt 下建立了 文件夹 /usb,如果未建立可键入一下命令:mkdir /mnt/usb,成功后进行下一步。3,载入 u 盘,需键入以下命令:mount /dev/sda /mnt/usb成功后,即可使用 u 盘了, 文件就在目录 /mnt/usb 下。4,卸载u...

2019-05-10 14:17:29 4639 2

空空如也

空空如也

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

TA关注的人

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