- 博客(278)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 python3 多线程+队列实现并发
并发的实现有多种方式,本文仅给出多线程+队列的一个简单示例。import queueimport threading# 创建一个队列对象,并初始化值q = queue.Queue(maxsize=1000)for i in range(100): q.put(i)# 定义实际操作def do_something(i): print(i)# 从队列中取出值,并调用实际操作def f(queue): while not queue.empty():
2021-08-31 12:22:11
1937
原创 linux rz sz使用
安装教程在这里,https://www.huweihuang.com/linux-notes/keymap/iterm2-rzsz.html大佬写的很好。使用的时候不是太理解,踩了点坑,在这里说明下。常用参数-a 以文本方式传输(ascii)。 -b 以二进制方式传输(binary)。 -e 对控制字符转义(escape),这可以保证文件传输正确。 如果能够确定所传输的文件是文本格式的,使用 sz -a files 如果是二进制文件,使用 sz -be files实践发现,两种
2021-08-11 20:08:13
739
原创 python3 多线程实例
def downlod_app(): threads = [] for app in apps: # 起3个线程下载 t = threading.Thread(target=download_from_kodo, args=(app,)) t.start() threads.append(t) for t in threads: t.join()
2021-06-08 19:34:44
491
原创 linux Ubuntu安装两个python3环境
需求:机器上已经有了python3.7环境,且python3默认python3.7,在不改变默认的情况下,增加python3.8,使用时可以直接使用python3.8思路:在
2021-06-03 15:30:55
1521
转载 python gevent使用例子
gevent是基于IO切换的协程。from gevent import monkey; monkey.patch_all()import geventimport urllib2def f(url): print('GET: %s' % url) resp = urllib2.urlopen(url) data = resp.read() print('%d bytes received from %s.' % (len(data), url))gevent.j
2020-08-26 17:57:22
652
转载 ES--索引、分片、节点、集群等概念浅析
FAQ1.为什么一个分片只能存放 Integer.MAX_VALUE - 128 = 2,147,483,519 个 docs?索引一般意义上的索引是一种基于文档(数据)生成、建立的,用于快速定位指定文档的工具。而 ElasticSearch 对索引的定义有所不同,ElasticSearch 中的索引对应 MySQL 中的 Database ,也就说 ElasticSearch 中的索引更像是一种数据存储集合,即用于存储文档。ElasticSearch 中的数...
2020-07-01 14:20:43
3145
原创 python ftp上传文件超时
报错:ftplib.error_temp: 421 Timeout解决办法:在之前上传之前,把buf_size设置大一点buf_size = 1024 * 1024 def upload_file(self, local_file, remote_file): if not os.path.isfile(local_file): self.debug_print('%s 不存在' % local_file) return
2020-05-27 20:23:53
2059
1
原创 python实现ftp上传下载
背景:通过jenkins出了linux部署包后需要手动从jenkins下载,并scp到测试环境服务器,再解压替换重启服务等,手动操作太low,又碎片化时间,我打算做成自动化。只需要跑一下jenkins job,几分钟后打开页面验证功能就好了。方案1:通过ftp进行上传下载,目前是使用的这种方式方案2:通过SimpleHTTPServerWithUpload和SimpleHTTPSer...
2020-04-15 15:46:14
597
原创 python json编码解码
json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。Python和JSON转换对应表:PythonJSONdictobjectdictobjectlist, tuplearraystrstringint, float, int- & float-derived EnumsnumberT...
2020-04-07 18:36:33
334
原创 python文件读写
读写文件就是请求操作系统打开一个文件对象,进行读写。python读文本文件:# with已自动调用close()方法,避免文件对象占用资源with open('/path/to/file', 'r') as f: print(f.read())read:一次读取所有内容,适合小文件。保险起见,可以反复调用read(size)方法,size表示一次读取的大小。read...
2020-04-07 17:13:57
228
转载 python获取当前目录路径和上级路径
import osprint '***获取当前目录***'print os.getcwd()print os.path.abspath(os.path.dirname(__file__))print '***获取上级目录***'print os.path.abspath(os.path.dirname(os.path.dirname(__file__)))print os.path...
2020-04-02 18:28:38
598
原创 通过企业微信接口创建群聊及获取群聊id
通过企业微信接口创建群聊及获取群聊id# 获取tokencurl -XGET https://qyapi.weixin.qq.com/cgi-bin/gettoken\?corpid\=wwde7de530085bf\&corpsecret\=eT3KaFIyn7egjsCe2b0QIX6yPF_7-KO29tBYVoX1 response:{ "access_token":...
2020-04-01 16:38:03
9854
转载 找到Linux虚机Load高的"元凶"
问题描述有客户反馈他们的一台ECS周期性地load升高,他们的业务流量并没有上升,需要我们排查是什么原因造成的,是否因为底层异常?要弄清Linux虚机load高,我们要搞清楚Linux top命令中Load的含义。Load average的值从何而来在使用top命令检查系统负载的时候,可以看到Load averages字段,但是这个字段并不是表示CPU的繁忙程度,而是度量系统...
2019-12-26 16:21:46
536
原创 go vet静态检查
go tool vet . |& grep -Ev vendor可本地执行进行静态检查。另外参考github上的方案:https://github.com/thockin/go-build-template/blob/master/build/test.shTARGETS=$(for d in "$@"; do echo ./$d/...; done)echo -n...
2019-04-04 10:55:34
864
原创 golang interface转成其他类型
//i为interface{},i.(需要转的类型)//示例restlt := i.(map[string]interface{})fmt.Println(restlt["id"])
2018-12-07 17:06:44
10371
原创 golang post,get,put,delete请求示例代码
package mainimport ( "fmt" "io/ioutil" "net/http" "strings")func Post() { url := "http://xxxxx:8080/v2/repos/wh_flowDataSource1/data" payload := strings.NewReader("a=111") req, _
2018-09-12 11:33:40
16350
转载 apache-ab并发负载压力测试
ab 介绍 apache ab(Apache Bench)性能测试工具,这是[apache]免费自带的性能测试工具,就在apache的bin目录下,它能模拟多个并发请求,也就是说它主要是用来测试你的apache每秒能处理多少请求的。 Paste_Image.png 格式:ab [options] [http://]hostname[:port]/path 参数介绍 -A auth-use...
2018-04-27 14:13:51
626
转载 如何做好质保工作
https://zhidao.baidu.com/question/424273240003981092.html http://www.cnblogs.com/jinsdu/p/7507887.html
2018-02-27 10:02:51
731
原创 ElasticSearch学习-基本概念
以下内容整理学习自网络。es与关系型数据库的类比,便于理解:Relational DB ⇒ Databases ⇒ Tables ⇒ Rows ⇒ ColumnsElasticsearch ⇒ Indices ⇒ Types ⇒ Documents ⇒ Fieldshttps://pic1.zhimg.com/852fc8dbb2202cc228b105e5d6feed
2017-12-19 16:07:17
378
原创 scp Permission denied (publickey).
服务器A上执行scp到服务器B,报错:Permission denied (publickey).解决方法,在同账户下把A的公钥放到B上,注意你scp的账户,添加在该账户下。具体操作:A:cat .ssh/id_rsa.pubB: cat .ssh/authorized_keys 把A的公钥贴过来即可
2017-12-15 11:42:27
11562
1
原创 ssh设置别名
没有在ssh的config文件中设置,在.zshrc(使用zsh)中配置:alias cs1="ssh user@10.200.20.30"保存后记得source下.zshrcvpn连上后直接cs1就可以登陆了
2017-12-14 11:33:06
1094
原创 curl的使用
打点:curl -XPOST -H "Content-Type: text/plain" -H "Date: Mon, 15 Jan 2018 09:39:13 GMT" -H "Authorization: Pandora oqSBNbmgAAGI155F6MJ3N2Tk9ruL_6XQpx-uxkkg:X3uwLhKrfq1vReZgiFpypds=" http://10.200.20.
2017-11-30 20:09:32
287
原创 使用jenkins配置job-设置定时执行
配置-构建触发器Build periodically 无论数据有无变化,均执行定时化的构建任务Poll SCM 定时轮询数据变化,如果有变化,则执行构建任务若不考虑代码改动,则设置Build periodically,如 H 5 * * *,表示每天早上5点执行
2017-11-20 11:03:28
3322
转载 测试人员职业发展之路
图片描述 图B-1 测试人员职业发展方向 1、偏向于需求方面的测试人员。我们说过在敏捷开发模式中,测试前移,测试人员会更多地接触需求分析,从需求分析阶段尽可能地发现和预防问题。在这一方面现在已经有行为驱动开发和实例化需求等方法协助测试人员深入需求分析阶段并扩大自己的影响力,与此同时测试人员也需要更深
2017-08-14 11:43:06
699
转载 linux打包压缩命令
.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar z
2017-08-11 11:02:15
476
转载 测试基础知识
SeleniumSelenium就是一套专门用于自动化Web浏览器的工具。 而已! 你用这个东西来做什么完全取决于你。 主要是用于自动化Web应用程序进行测试,但肯定不仅限于此。 无聊的基于Web的管理任务也可以(也应该!)也是自动化的。 Selenium有一些最大的浏览器供应商的支持,他们已经采取(或正在采取)步骤使Selenium成为其浏览器的本地部分。 它也是无数其他浏览器
2017-08-07 12:26:40
857
转载 kafka 工作原理介绍
消息队列消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走。通过消息队列,应用程序可独立地执行--它们不需要知道彼此的位置、或在继续执行前不需要等待接收程序接收此消息。在分布式计算环境中,为了集成分布式应用,开发者需要对异构网络环境下的分布式应用提供有效的通信手段。为了管理需要共享的信息,对应用提供公共的信息交换机制是重要的。常
2017-07-18 13:55:15
540
原创 API接口测试用例设计
最近在做接口测试,顺便将接口测试用例的设计思路总结下,接口测试主要涉及2个大的方向:第一个大的方向就是: 独立接口的测试第二个大的方向就是: 构造情景,丰富接口测试数据,从而到达多维度测试接口的目的;用力设计:第一个方向:用例一基本功能,全部参数1.参照接口文档,了解接口功能后,首先判断是否符合业务需求逻辑2.验证基本功能,
2017-07-14 17:56:18
5065
转载 golang视频教程
- 《Go编程基础》 Unknwon/go-fundamental-programming · GitHub- 《Go Web基础》 Unknwon/go-web-foundation · GitHub- 《Go名库讲解》 Unknwon/go-rock-libraries-showcases · GitHub作者:无闻Unknwon链接:https://www
2017-07-05 11:31:11
6997
1
转载 [Go 语言] 指针,地址,形参,实参
学习Go语言的过程中,会发现它的指针,地址,还有函数参数跟平常我们理解的不太一样.上代码:package main//学习指针用法import ( "fmt")func main() { var i int; // i 的类型是int型 var p *int; // p 的类型是[int型的指针] i = 1;
2017-06-30 16:52:55
1883
原创 linux自动清理日志脚本
脚本:#!/bin/bashfor j in `du -h --max-depth=0 /home/zhanghu/*/_package/run/ |grep G|grep -v '/home/zhanghu/$' |awk -F 'G' '{print $1$2}'|awk ' {if($1 > 2 ) {print $2} }'`; doecho "$j need del";fi
2017-06-08 19:24:49
2230
转载 实现自动化测试,首先不是一个技术问题
背景介绍自动化常常是测试团队首先想要建设的内容,因为自动化的好处是明显的,但真正实现自动化测试的时候才发现,这条路上的“坑”比想象的多得多。想要少遇到这些“坑”,首先要用正确的姿势打开“自动化”。自动化常常是测试团队首先想要做的技术建设,因为自动化的好处是明显的:这个工作输出的成果—--工具、脚本框架、自动化用例都是可以长期重复使用的,是“实在”的、“可
2017-05-22 14:24:48
2605
转载 linux删除大量文件(十几G)
1、先安装rsync(which rsync检查是否已安装):yum install rsync2、建立一个空的文件夹:mkdir /tmp/test3、用rsync删除目标目录:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsy
2017-05-08 11:49:47
3965
1
转载 【质量管理改进】敏捷测试思想
个人思考:代码Review --> 单元测试 --> 集成测试,是为了提高提测质量。提测后仍需根据提测内容进行相应的自动化+手动测试。目前集成测试还在初始阶段,急需补充,但需注意,不为追求case的数量,case是否有效。以下为转载原文:最近公司又新上马一个项目,为了项目能够尽快抢占市场,产品、设计、开发、测试等小伙伴们在夜以继日地赶进度。除了
2017-04-20 15:17:51
612
cron表达式:我想表达:1.每天的3:10到6:40每隔20分钟执行一次,怎么写呢
2014-01-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人