<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chainsmoker_的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chainsmoker_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chainsmoker_]]></copyright><item><title><![CDATA[pytest命令行参数说明]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/127952534</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/127952534</guid><author>chainsmoker_</author><pubDate>Sun, 20 Nov 2022 19:06:14 +0800</pubDate><description><![CDATA[pytest命令行参数说明]]></description><category></category></item><item><title><![CDATA[snmp学习1-SNMP 原理与实战详解]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/127928811</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/127928811</guid><author>chainsmoker_</author><pubDate>Fri, 18 Nov 2022 20:15:31 +0800</pubDate><description><![CDATA[SNMP 原理与实战详解]]></description><category></category></item><item><title><![CDATA[python封装configparser 读取ini配置文件]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124694055</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124694055</guid><author>chainsmoker_</author><pubDate>Tue, 10 May 2022 18:11:35 +0800</pubDate><description><![CDATA[python封装读取配置ini
1、ini文件说明
2、封装读取]]></description><category></category></item><item><title><![CDATA[python pytest接口自动化教程 - 01、了解]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124614991</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124614991</guid><author>chainsmoker_</author><pubDate>Fri, 06 May 2022 17:37:59 +0800</pubDate><description><![CDATA[一、pytest介绍

官网：https://docs.pytest.org/en/7.1.x/

什么是pytest？

pytest是一款非常成熟的全功能的Python测试框架～

为什么要用pytest？有什么优点吗？

简单！

支持单元测试，功能测试

支持参数化，重复执行，部分执行，测试跳过

兼容unittest，但是比unittest更加灵活

支持生成html报告，可以与allure生成非常美观...]]></description><category></category></item><item><title><![CDATA[K8s nodePort、port、targetPort、hostPort]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124449890</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124449890</guid><author>chainsmoker_</author><pubDate>Wed, 27 Apr 2022 14:13:08 +0800</pubDate><description><![CDATA[1. nodePort

外部流量访问k8s集群中service入口的一种方式（另一种方式是LoadBalancer），即nodeIP:nodePort是提供给外部流量访问k8s集群中service的入口。比如外部用户要访问k8s集群中的一个Web应用，那么我们可以配置对应service的type=NodePort，nodePort=30001。其他用户就可以通过浏览器http://node:30001访问到该web服务。而数据库等服务可能不需要被外界访问，只需被内部服务访问即可，那么我们就不必设置serv]]></description><category></category></item><item><title><![CDATA[linux下查看文件编码]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124277022</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124277022</guid><author>chainsmoker_</author><pubDate>Tue, 19 Apr 2022 16:31:48 +0800</pubDate><description><![CDATA[1、查看当前目录下所有文件编码:


find . -name '*' | xargs file





2、更换文件编码:


iconv -f 源编码 -t 目标编码 原文件名 -o 输出文件名

# 例如：将a.txt从UTF-8编码改为GBK编码
iconv -f UTF-8 -t GBK a.txt -o b.txt


...]]></description><category></category></item><item><title><![CDATA[计算机中的大小端规则]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/81606760</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/81606760</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 16:49:36 +0800</pubDate><description><![CDATA[大端（存储）模式，是指数据的低位保存在内存的高地址中，而数据的高位，保存在内存的低地址中；

 小端（存储）模式，是指数据的低位保存在内存的低地址中，而数据的的高位保存在内存的高地址中。

 为什么会有大小端模式之分呢？

 这是因为在计算机系统中，我们是以字节为单位的，每个地址单元都对应着一个字节，一个字节为 8bit。但是在C语言中除了8bit的char之外，还有16bit的shor...]]></description><category></category></item><item><title><![CDATA[Python-接口自动化流程（pytest）]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124251955</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124251955</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 16:46:51 +0800</pubDate><description><![CDATA[一、实现方法

python+requests+pytest框架来实现



二、接口自动化流程

确定业务范围，哪些业务功能的接口可以做自动化
	一般来说，比较稳定的业务适合来做接口自动化
	
	确定自动化测试框架
	这里使用pytest框架
	
	准备数据—准备接口用例数据
	编写接口自动化脚本


三、搭建接口自动化测试环境

1、安装python3.x，配置环境变量

2、安装PyCharm（python的IDE工具）

3、搭建测试环境

4、安装测试库

re......]]></description><category></category></item><item><title><![CDATA[linux下安装FTP服务]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124244852</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124244852</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 11:10:58 +0800</pubDate><description><![CDATA[1、FTP是什么？


    FTP指的是文件传输协议（File Transfer Protocol），是用于在网络上进行文件传输的一套标准协议，它工作在 OSI 模型的第七层， TCP 模型的第四层， 即应用层， 使用 TCP 传输， 客户在和服务器建立连接前要经过一个“三次握手”的过程， 保证客户与服务器之间的连接是可靠的， 而且是面向连接， 为数据传输提供可靠保证。

FTP允许用户以文件操作的方式（如文件的增、删、改、查、传送等）与另一主机相互通信。然而， 用户并不真正登...]]></description><category></category></item><item><title><![CDATA[linux下SFTP如何安装？如何创建SFTP用户组？]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124244514</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124244514</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 11:03:58 +0800</pubDate><description><![CDATA[1、SFTP协议说明

SFTP指的是SSH文件传输协议（SSH File Transfer Protocol），是一数据流连接，提供文件访问、传输和管理功能的网络传输协议。



2、如何安装SFTP呢？

    sftp是基于ssh协议的，所以只要系统安装了openssh，便可以直接创建SFTP用户，不用特别安装。

    如何查看是否安装openssh

    ssh -v



3、创建SFTP用户步骤


...]]></description><category></category></item><item><title><![CDATA[FTP和SFTP的区别]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/124243760</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/124243760</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 10:45:07 +0800</pubDate><description><![CDATA[1、FTP是什么？

    FTP指的是文件传输协议（File Transfer Protocol），是用于在网络上进行文件传输的一套标准协议，它工作在 OSI 模型的第七层， TCP 模型的第四层， 即应用层， 使用 TCP 传输， 客户在和服务器建立连接前要经过一个“三次握手”的过程， 保证客户与服务器之间的连接是可靠的， 而且是面向连接， 为数据传输提供可靠保证。

FTP允许用户以文件操作的方式（如文件的增、删、改、查、传送等）与另一主机相互通信。然而， 用户并不真正登录...]]></description><category></category></item><item><title><![CDATA[十大经典排序算法（4）---归并排序]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/90169389</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/90169389</guid><author>chainsmoker_</author><pubDate>Mon, 18 Apr 2022 10:31:02 +0800</pubDate><description><![CDATA[1.算法步骤

申请空间，使其大小为两个已经排序序列之和，该空间用来存放合并后的序列；
	设定两个指针，最初位置分别为两个已经排序序列的起始位置；
	比较两个指针所指向的元素，选择相对小的元素放入到合并空间，并移动指针到下一位置；
	重复步骤 3 直到某一指针达到序列尾；
	将另一序列剩下的所有元素直接复制到合并序列尾。
2.例如

数组 [ 2, 5, 4, 9, 7, 11, 6]

第一次...]]></description><category></category></item><item><title><![CDATA[java多线程——线程池]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/100121008</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/100121008</guid><author>chainsmoker_</author><pubDate>Wed, 28 Aug 2019 17:13:39 +0800</pubDate><description><![CDATA[1.什么是线程池？

juc包下提供了一个java.util.concurrent.Executor接口实现线程池。主要解决处理器单元内多个线程执行的问题，可以显著减少处理器单元的闲置时间，增加处理器单元的吞吐能力。

2.使用线程池有如下几个优点：

降低资源消耗：通过重复利用已创建的线程降低线程创建与销毁带来的损耗
	提高响应速度：当任务到达时，任务可以不需要等待线程创建就能立即执行
	提高线...]]></description><category></category></item><item><title><![CDATA[java多线程编程（打印三个线程名5次ABCABCABCABCABC）]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/100090070</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/100090070</guid><author>chainsmoker_</author><pubDate>Tue, 27 Aug 2019 09:48:15 +0800</pubDate><description><![CDATA[1.题目描述

启动三个线程，三个线程名称分别是A,B,C；每个线程将自己的名称在屏幕上打印5遍，打印顺序是ABCABCABCABCABC

2.解题思路

2.1写打印A、B、C的方法


//设置标记位，判断应该打印哪个线程名
    private int flag = 1;
//记录打印次数
    private int count = 1；
//打印线程名称A方法
//    顺序打印...]]></description><category></category></item><item><title><![CDATA[java多线程编程（打印12A34B...5152Z）]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/100089371</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/100089371</guid><author>chainsmoker_</author><pubDate>Tue, 27 Aug 2019 09:14:01 +0800</pubDate><description><![CDATA[1.题目描述

写两个线程，一个线程打印1-52，一个线程打印A-Z，打印顺序为12A34B56C...5152Z.

2.解题思路

2.1先写打印数字的方法


//    设置标记位，如果flag为true，打印两个数字；如果flag为false，打印一个字母
    private boolean flag = true;
//    创建一个变量count用来往后打印
    priva...]]></description><category></category></item><item><title><![CDATA[Java中的String类、StringBuff和StringBuilder]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/98319523</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/98319523</guid><author>chainsmoker_</author><pubDate>Mon, 05 Aug 2019 12:24:21 +0800</pubDate><description><![CDATA[Java中的String类、StringBuff和StringBuilder以及三大类区别]]></description><category></category></item><item><title><![CDATA[9.MySQL中的事务和视图]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/97914341</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/97914341</guid><author>chainsmoker_</author><pubDate>Wed, 31 Jul 2019 19:03:30 +0800</pubDate><description><![CDATA[一、事务

1.什么是事务

事务是一组由DML语句组成，这组语句要么全部成功，要么全部失败，是一个整体。

2.为什么需要事务



3.事务的基本操作

开始一个事务 start transaction;
	创建一个保存点 savepoint 保存点名;
	回到保存点 rollback to 保存点名;

--创建一张学生数学成绩表
mysql&gt; create table score(i...]]></description><category></category></item><item><title><![CDATA[8、MySQL中的索引]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/97748387</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/97748387</guid><author>chainsmoker_</author><pubDate>Wed, 31 Jul 2019 14:11:21 +0800</pubDate><description><![CDATA[1.什么是索引

用来提高数据库查询速度的东西。比如图书馆的检索系统。

2.索引的优缺点

优点：提高数据库的性能，查询速度提高（查询海量数据时，没有索引的话查询结果会等很久才显示）
	缺点：查询速度的提高是以插入、更新、删除的速度为代价的。
3.索引的常见种类

主键索引（primary key）
	唯一索引（unique key）
	普通索引（index）
	全文索引（fulltext）
4...]]></description><category></category></item><item><title><![CDATA[7.数据库中的内置函数]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/97289531</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/97289531</guid><author>chainsmoker_</author><pubDate>Sun, 28 Jul 2019 14:50:43 +0800</pubDate><description><![CDATA[1.日期函数

功能
			函数名称
		显示当前日期
			current_date()
		显示当前时间
			current_time()
		显示当前时间戳
			current_timestamp()
		返回datetime参数的日期部分
			date(datetime)
		在date中添加日期或时间
			date_add(date, interval 所添加的日期和时间)
		...]]></description><category></category></item><item><title><![CDATA[6.表的增删改查CURD]]></title><link>https://blog.youkuaiyun.com/chainsmoker_/article/details/97612823</link><guid>https://blog.youkuaiyun.com/chainsmoker_/article/details/97612823</guid><author>chainsmoker_</author><pubDate>Sun, 28 Jul 2019 14:47:25 +0800</pubDate><description><![CDATA[1.CREATE，数据的插入

创建一张学生表


mysql&gt; create table student(
    -&gt;     id int primary key comment '学生id',
    -&gt;     name varchar(32) comment '学生姓名',
    -&gt;     age int comment'学生年龄',
    -&gt;...]]></description><category></category></item></channel></rss>