自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(253)
  • 资源 (7)
  • 收藏
  • 关注

转载 理解和配置Out of memory: Kill process

今天在服务器上更新训练模型,五个小时后发现进程被kill了理解 OOM killer最近有位 VPS 客户抱怨 MySQL 无缘无故挂掉,还有位客户抱怨 VPS 经常死机,登陆到终端看了一下,都是常见的 Out of memory 问题。这通常是因为某时刻应用程序大量请求内存导致系统内存不足造成的,这通常会触发 Linux 内核里的 Out of Memory (OOM) killer,OOM killer 会杀掉某个进程以腾出内存留给系统用,不致于让系统立刻崩溃。如果检查相关的日志文件..

2021-02-03 15:01:31 1046

原创 linux下allure安装及生成测试报告

一、安装allure命令行工具1上传allure-commandline-2.13.1.zip上传到服务器的/opt目录下2解压unzip allure-commandline-2.13.1.zip3配置环境变量将解压后allure下bin目录的路径/opt/ allure-commandline-2.13.1/bin配置进环境变量vi /etc/profile# 在PATH后追加以下内容,保存:$PATH:/opt/allure-commandline-2.13.1/b

2020-09-29 19:59:51 9879

原创 python 压缩字符串

题目描述:字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。示例1: 输入:"aabcccccaaa" 输出:"a2b1c5a3"示例2: 输入:"abbccd" 输出:"abbccd" 解释:"abbccd"压缩后为"a1b2c2d1",比原字符串长度更长。提示:字符串长度在[0, 50000].

2020-09-28 00:19:23 10362 1

原创 centos vi或者vim编辑器中显示或者隐藏行号

1、显示:到vi或者vim编辑器的末行模式下,输入set number或者set nu,按下回车就显示行号了2、取消显示只要再到vi或者vim编辑器的末行模式下输入set nonumber或者set nonu,按下回车行号就没了3、打开文件默认显示行号打开 /etc/vimrc(/etc/virc)配置文件:vim /etc/vimrc可以看到都是一些配置vim环境的信息,我们只需要在行首或者行尾新建一行然后写入set number或者set nu,输入...

2020-09-27 14:48:41 1077

转载 cookie 和session 的区别详解

这些都是基础知识,不过有必要做深入了解。先简单介绍一下。二者的定义:当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都纪录下来。当下次你再光临同一个网站,WEB 服务器会先看看有没有它上次留下的 Cookie 资料,有的话,就会依据 Cookie里的内容来判断使用者,送出特定的网页内容给你。 Cookie 的使用很普遍,许多有提供个人化服务的网站,都是利用 Cookie来辨认使用者,以方便送出使用者量身定做的内容,

2020-09-27 14:24:10 290

原创 python中break,continue,pass,else

python中有两个循环保留字:break和continue。作用:辅助的控制程序的循环执行。 break语句和continue语句的区别:break语句是结束整个循环的过程,不在判断执行循环的条件是否成立;continue语句是只结束本次循环,并不终止整个循环的执行。1. break 作用:用来跳出最内层的for循环或者while循环,脱离该循环后程序从循环代码后面继续执行。即break语句只能跳出当前层次的循环。 例子: for i in "python": for j

2020-09-22 10:04:56 1050

原创 python requests完成接口文件上传测试

# 接口的urlurl = "http://127.0.0.1:8090/api/xx/xx/search"header={"ct":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"}files = {'file':open(r'D:\M000001.wav','rb')}#此处是重点!我们操作文件上传的时候,把目标文件以open打开,然后存储到变量file里面存到一个字典里面upload_data={"parentId":"","fileCategory":"per.

2020-09-21 14:09:15 534

转载 接口测试

序章​ 说起接口测试,网上有很多例子,但是当初做为新手的我来说,看了不不知道他们说的什么,觉得接口测试,好高大上。认为学会了接口测试就能屌丝逆袭,走上人生巅峰,迎娶白富美。因此学了点开发知识后,发现接口测试其实都是人们玩的名词罢了。接口测试,真心很简单。它只不过是数据传递是一种表现而已。请求模型​ 看下图中“A”线,可以理解为接口就是一个电灯的开关,它在接口里面给你提供了一个参数,参数的值一个是“开”,一个是“关”。​ 说起来,怎么才能让灯亮?一个灯头接两根线,一根线接火线,一根线接零线

2020-09-21 14:06:37 892

转载 MySQL中count(字段) ,count(主键 id) ,count(1)和count(*)的区别

注:下面的讨论和结论是基于 InnoDB 引擎的。首先要弄清楚 count() 的语义。count() 是一个聚合函数,对于返回的结果集,一行行地判断,如果 count 函数的参数不是 NULL,累计值就加 1,否则不加。最后返回累计值。所以,count(*)、count(1)和count(主键 id) 都表示返回满足条件的结果集的总行数;而 count(字段),则表示返回满足条件的数据行里面,参数“字段”不为 NULL 的总个数。至于分析性能差别的时候,记住这么几个原则: server

2020-09-18 17:34:08 514

原创 python 合并两个有序的数组

方法一:双指针-将2个数组元素合并到新的数组中去def merge_two_sort_list(a, b): i = j = 0 new_list = [] while i >= len(a) + 1 and b >= len(b) + 1: if a[i] <= b[j]: new_list.append(a[i]) i += 1 if a[i] >= b[j]: .

2020-09-18 16:59:21 1317

原创 python 数组中的第K个最大元素

题目描述:在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明:你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。def findKthLargest(nums, k): """ :type nums: Li..

2020-09-18 09:52:56 1871 2

原创 python 整数反转

题目描述:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231, 231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。def resverse_int(x): yy = [] if >= 0: ...

2020-09-17 17:56:00 700

原创 python 排序链表

题目描述:在O(nlogn) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5class ListNode(object): '''定义创建链表节点的类''' def __init__(self, val, next = None...

2020-09-17 17:02:51 782 1

原创 python 链表反转

class ListNode(object): '''定义创建链表节点的类''' def __init__(self, val, next = None): self.val = val self.next = next#方法一:递归实现def resverse_linked_list(head): if not head: return head if not head.next: return hea.

2020-09-17 16:22:09 520

原创 python 打印输出链表

class ListNode(object): '''创建生成链表节点的类''' def __init__(self, val, next = None): self.val = val self.next = nextdef print_linked_list(head): if not head or not head.next: return [] result = [] while head: .

2020-09-17 16:05:58 3460

原创 python 合并两个有序链表

# 创建生成链表节点的类class ListNode(object): '''创建生成链表节点的类''' def __init__(self, val, next = None): self.val = val self.next = next#递归合并链表def merge_two_linked_list(l1, l2): if not l1: return l2 if not l2: return .

2020-09-17 15:57:02 285

原创 无重复字符的最长子串

题目描述:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是"wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"pwke"是一个子...

2020-09-17 15:47:52 121

原创 mysql 求第二高的薪水

题目描述:编写一个 SQL 查询,获取 Employee表中第二高的薪水(Salary)。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述Employee表,SQL查询应该返回200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。+---------------------+|...

2020-09-15 10:27:16 156

转载 mysql:名次排名 (并列与不并列)

说明做后台的难免与sql接触,到目前为止搞过的sql大致都是一些简单的sql语句构造,在这里准备把自己在写sql时遇到的一些比较少见的用法记录一下。 又学习了一些之前一直没搞清的: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 正文mysql用户最近自己安装了一个mysql,需要配置上和测试

2020-09-14 17:29:24 1478

转载 mysql 查询获取排名的方法

需求:获取分类平均值的名次? 比如10个班级的平均分,按照班级名称排序,后面跟着名次。记录表:student ;字段:banji 班级;AvgS 平均分;pm 排名;解决方法:SELECT class, AVG(score) AS avgs FROM student GROUP BY class ORDER BY avgs DESC;SELECT A.*, @rank:=@rank+1 AS pm FROM (SELECT class, AVG(score) AS avgs FROM s.

2020-09-14 17:28:16 4117 1

原创 mysql alter add一列、drop一列、change列名

如果想在一个已经建好的表中添加一列,可以用以下代码:alter table 表名 add column 列名 varchar(20) not null;这条语句会向已有的表中加入一列,这一列在表的最后一列位置。如果我们希望添加在指定的一列,可以用:alter table 表名 add column 列名 varchar(20) not null after user1;注意,上面这个命令的意思是说添加addr列到user1这一列后面。如果想添加到第一列的话,可以用:alter tabl.

2020-09-14 16:41:28 610

原创 mysql id自增长

mysql 修改id为自增: alter table 表名 modify column 列名 类型 not null auto_increment ; 例: alter table classmodify column id int(100) not null auto_increment;mysql 把id自增去掉:alter table 表名 modify column 列名 类型 not null ; 例:alter table classmodify colum...

2020-09-14 16:29:59 194

原创 mysql 常用语句

limit和offset用法mysql里分页一般用limit来实现1. select* from article LIMIT 1,32.select * from article LIMIT 3 OFFSET 1上面两种写法都表示取2,3,4三条条数据当limit后面跟两个参数的时候,第一个数表示要跳过的数量,后一位表示要取的数量,例如select* from article LIMIT 1,3 就是跳过1条数据,从第2条数据开始取,取3条数据,也就是取2,3,4三条数据当.

2020-09-14 16:17:29 225

转载 mysql中in的用法

in常用于where表达式中,其作用是查询某个范围内的数据。用法:select * from where fieldin(value1,value2,value3,…)示例:查询book表中id为2和4的所有数据:有book数据表,内容如下:查询语句和查询结果见如下图示:PS: not in与in作用相反,用法和示例如下:用法:select * from where fieldnot in(value1,value2,value3,…)。not in 示例:...

2020-09-14 16:16:29 697

转载 MYSQL 连表查询及别名用法

MYSQL连表查询是两个表之间的查询或者更多表之间查询,通过外键的方式查询所有的数据,在查询过程中产生字段的重复,为了区分这种情况数据库设计别名,有的表很长,也可以用别名。1,连表查询 INNER JOIN ,LEFT JOIN,RIGHT JOININNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有

2020-09-14 16:15:44 1783

转载 MySQL 笔记(三)round函数、百分比显示并加百分号

最近发现一个SQL学习网站,感觉很实用,对于零基础的初学者来说很好用,练习题很多,很实用,推荐给大家学习网站sqlzoo:http://zh.sqlzoo.net/在做数据提取时,经常会遇到数据所占百分比的问题,在SQL中有专门的语句可以实现。语法:selectconcat(round(值A/值B*100,m),'%')round函数返回数字表达式并四舍五入为指定的长度或精度。ROUND的格式:ROUND(p1,p2,p3),其作用是取四舍四入值P1:要被四舍五入的数字P2..

2020-09-14 16:14:21 3005

原创 给定一个文本文件 file.txt,请只打印这个文件中的第十行。

方法一:使用sed命令sed -n '10p' file.txt方法二:使用awk命令awk 'NR == 10' file.txt方法三:使用head和tail命令本题如果先head再tail的话会导致【假如文件不到10行依然会显示某一个错误的行】。所以先tail -n +10选#出从第10行开始的所有行(保证了假如文件不到10行时,不应该有任何输出),然后再用head -1输出筛选出#的内容的第1行。head -10 file.txt | tail -1tail -n +10 file

2020-09-14 15:14:56 1420

原创 哈希表和字典的不同点

哈希表和字典的不同点哈希表和字典有些许不同━━━━━━━━━━━━━━━━━━━━━━━━━字典:找不到返回error不拆箱,装箱所以比hashtable快只有公共的静态成员都是线程安全的。Dictionary 是一个泛型类型,这意味着我们可以使用它与任何数据类型。哈希表:找不到返回null需要拆箱装箱所以比dictionary慢所有成员都是线程安全的不是一个泛型类型主要的区别是,哈希表使用多线程做,可以多线程读取,字典单线程读取...

2020-09-11 18:04:06 2340

原创 ASCII简介

ASCII全称“American Standard Code for Information Interchange”代表“美国信息交换标准代码”。ASCII字符编码提供了一种使用数字代码表示字符的标准方法,这些包括大写和小写英文字母、数字和标点符号。ASCII用7位表示每个字符,例如,大写的“T”由数字84表示,小写的“T”由116表示。其他键盘键也映射到标准ASCII值,例如,Escape (ESC)键表示为27,Delete (DEL)键表示为32。ASCII码也可以显示为十六进制值,而不是上

2020-09-11 16:03:12 3711

原创 windows10安装jdk

1、下载jdk,官网下载:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 或者2、运行jdk-8u261-windows-x64.exe,一步步安装就行,如果需要修改安装目录,可以自行修改,我是直接发在c盘目录下3、设置环境变量在桌面右键单击 我的电脑→属性→高级系统设置→高级选项→环境变量在下侧系统变量处点击新建CLASSPATH和JAVA_HOME变量输入变量名:JA...

2020-09-10 09:42:48 171

原创 python 冒泡算法

冒泡排序(Bubble Sort),是经典的排序算法,基本上我们学习任何语言都会接触到冒泡排序。它的算法思想是,重复地遍历要排序的列表,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历列表的工作是重复地进行直到没有再需要交换,也就是说该列表已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。比如我们有下面这样一个列表:lists =[10,8,4,7,5]每次遍历列表每个元素,然后比较前后两个元素的大小,如果前面的数大于后面的数,就交换位置,否.

2020-09-09 17:08:58 859

原创 C语言中unsigned

无符号整数,计算机里的数是用二进制表示的,最左边的这一位用来表示这zhi个数是正数还是负数,这样的话这个数就是有符号整数。如果最左边这一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整数。有符号和无符号的差别int是有符号的,unsigned是无符号的。它们所占的字节数其实是一样的,但是有符号的需要安排一个位置来表达我这个数值的符号,因此说它能表示的绝对值就要比无符号的少一半。举个例子:有一个1个1字节的整数,那么无符号的就

2020-09-09 14:22:08 20615

转载 什么是Docker?为什么要使用Docker?

什么是 DockerDocker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在GitHub 上进行维护。Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc。Redhat 已经在其 RHEL6.5 中集中支持 Docker;Google 也在其 PaaS 产品中广泛应用

2020-09-09 10:56:07 412

转载 通俗的解释docker

Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被集装箱标准化了,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送水果的船和专门运送化学品的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。docker就是类似的理念。现在都流行云计算了,云计算就好比大货轮。docker就是集装箱。1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安

2020-09-09 10:52:55 252

原创 docker 常见面试题及答案

什么Docker Docker是一个容器化平台,它以容器的形式将您的应用程序及其所有依赖项打包在一起,以确保您的应用程序在任何环境中无缝运行。 Docker与虚拟机有何不同 Docker不是虚拟化方法。它依赖于实际实现基于容器的虚拟化或操作系统级虚拟化的其他工具。为此,Docker最初使用LXC驱动程序,然后移动到libcontainer现在重命名为runc。Docker主要专注于在应用程序容器内自动部署应用程序。应用程序容器旨在打包和运行单个服务,而系统容器则设计为运行多个进程,如虚拟机..

2020-09-09 10:51:26 6029

转载 2019年最新docker面试题和答案!

Q1DevOps需要什么?主题:DevOps难度:⭐如今,公司不再发布大量功能,而是尝试将小的功能传输给客户。这有许多优点,如来自客户的快速反馈,更好的软件质量等,从而导致高客户满意度。为了实现这一目标,公司必须: 增加部署频率 降低新版本的故障率 缩短修复之间的准备时间 新版本崩溃时更快的平均恢复时间 DevOps满足所有这些需求,并帮助实现无缝的软件交付。Q2DevOps有哪些优势?主题:DevOps难度:⭐⭐技术优势:.

2020-09-09 10:50:14 1323

转载 K8S简介

k8s全称kubernetes,这个名字大家应该都不陌生,k8s是为容器服务而生的一个可移植容器的编排管理工具,越来越多的公司正在拥抱k8s,并且当前k8s已经主导了云业务流程,推动了微服务架构等热门技术的普及和落地,正在如火如荼的发展。那么称霸容器领域的k8s究竟是有什么魔力呢?首先,我们从容器技术谈起,在容器技术之前,大家开发用虚拟机比较多,比如vmware和openstack,我们可以使用虚拟机在我们的操作系统中模拟出多台子电脑(Linux),子电脑之间是相互隔离的,但是虚拟机对于开发和运维人员而

2020-09-09 10:47:58 848

原创 python 什么是迭代器

本文主要讲解python中的迭代器Iterator。什么是迭代器迭代器是访问可迭代对象的工具迭代器是指用iter(obj)函数返回的对象(实例)迭代器是指用next(it)函数获取可迭代对象的数据迭代器函数(iter和next)iter(iterable)从可迭代对象中返回一个迭代器,iterable必须是能提供一个迭代器的对象next(iterator) 从迭代器iterator中获取下一了记录,如果无法获取下一条记录,则触发stoptrerator异常说明:1.迭代器

2020-09-04 17:30:56 164

原创 python3 map

安装Pycharm,在运行时出现:map object at ,<0x02629E50>原因:python3里面,map()的返回值已经不再是list,而是iterators, 所以想要使用,只用将iterator 转换成list 即可, 比如 list(map())

2020-09-04 17:28:36 96

转载 Python 列表解析List Comprehensions

列表解析  根据已有列表,高效创建新列表的方式。  列表解析是Python迭代机制的一种应用,它常用于实现创建新的列表,因此用在[]中。语法:  [expression for iter_val in iterable]  [expression for iter_val in iterable if cond_expr]实例展示:要求:列出1~10所有数字的平方####################################################1、普通

2020-09-04 17:26:24 154

jdk_20200910.rar

jdk-8u261-window/linux-x64jdk-8u261-window/linux-x64jdk-8u261-window/linux-x64jdk-8u261-window/linux-x64jdk-8u261-window/linux-x64jdk-8u261-window/linux-x64

2020-09-10

centos7.5-ntp安装包.rar

centos7.5-ntp安装包.rar

2020-08-07

centos6.5-ntp安装包.rar

centos6.5-ntp安装包.rar

2020-08-07

redis-3.0.5-rew.rar

redis安装包

2020-08-06

redis_cluster.tar.gz

redis主从配置文件

2020-08-06

iftop-1.0-0.21.pre4.el6.x86_64.rpm

iftop-1.0-0.21.pre4.el6.x86_64.rpm

2020-08-05

redis_6380.conf

Redis 3.2.12linux版本配置文件,官网下载的

2020-04-27

空空如也

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

TA关注的人

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