高效开发工具
2024-10-07 20:03:16 4 举报
AI智能生成
高效开发工具
作者其他创作
大纲/内容
测试
单元测试
Java
junit
单元测试工具。
压力测试
jmeter
负载功能测试和性能测试开源工具软件
安装
Windows下安装jmeter
JMeter篇01:JMeter在Mac下的安装
使用
JMeter性能测试,完整入门篇
看这个使用
jmeter添加body
Wrk
HTTP压测工具
HTTP压测工具
先使用单线程不断增加连接数,直到QPS保持稳定或响应时间超过业务要求限制。在当期数值取得单线程最优连接数。
单个连接线程数保持不变,不断增加线程数(建议到CPU核心数为止即可),直到整体出现QPS水平。
如果QPS没有出现随着线程数增长则是目标服务器性能已经达到瓶颈,wrk单线程即可压测出目标机器最优QPS。
如果QPS一直没有出现水平趋势,则说明wrk压测机性能出现了瓶颈,需要扩大wrk压测机性能或者增加压测机器集群。
单个连接线程数保持不变,不断增加线程数(建议到CPU核心数为止即可),直到整体出现QPS水平。
如果QPS没有出现随着线程数增长则是目标服务器性能已经达到瓶颈,wrk单线程即可压测出目标机器最优QPS。
如果QPS一直没有出现水平趋势,则说明wrk压测机性能出现了瓶颈,需要扩大wrk压测机性能或者增加压测机器集群。
结果详解
这个参数比较细致,建议看这个
功能测试
回归测试
bug修复和功能更新后,不影响原功能的测试
冒烟测试
大规模测试前的基本功能测试
调试工具
Postman
下载地址
Apifox
下载地址
Apifox = Postman + Swagger + Mock + JMeter
BloomRPC
下载地址
Delve
远程调试工具
远程调试工具
关闭
dlv connect {HOST_IP}:2345
exit
Java测试框架
Mock
走进Java接口测试之Mock(概念篇)
java的mock测试框架
测试用例管理
AgileTC平台
抓包工具/监控
抓包工具
tcp dump
抓取网络信息的工具,然后使用wireshark查看网络情况。
抓包工具 tcpdump 用法说明
charles
下载地址
用法
解决<unknown>问题
在Charles中,设置Proxy->SSL Proxying Settings中的SSL Proxying的代理网址。
直接点击Add->OK即可,不用输入host和port。
android手机在mac版charles上抓不到包
如果是android7以上的手机,默认不信任证书,所以抓包失败
出现
You may need to configure your browser or application to trust the Charles Root Certificate. See SSL
You may need to configure your browser or application to trust the Charles Root Certificate. See SSL
激活
破解工具
监控
参考3H开发工具
可视化
go-mod-graph-chart
依赖分析工具
依赖分析工具
go mod 依赖分析
安装
go get -u github.com/PaulXu-cn/go-mod-graph-chart/gmchart
使用
进入 golang 项目,输入命令:
go mod graph | gmchart
go mod graph | gmchart
Grafana
可视化工具【日志】
可视化工具【日志】
Redis可视化工具
QuickRedis
Kafka可视化工具
offset explorer
offset explorer
下载
使用
use
RabbitMQ可视化工具
RabbitMQ Clinet:15672 网页
应用工具
浏览器
chrome
插件
FeHelper
功能
浏览器启动的时候打开一组特定的页面
或者直接点击这里设置
将chrome设置默认浏览器
MacOS Chrome 的最大化与全屏
Chrome 全屏
Command + Shift + F
Chrome 的窗口模式
Command + Control + =/+
safari
Mac截图工具
Xnip
下载:APPStore
代码扫描/认证/代码管理
代码扫描
SonarQube搭建和使用教程
Tsunami
公司级别的漏洞扫描工具
IDEA(及其他)插件级本地代码扫描工具
认证工具
fossid
开源认证工具。
BlackDuck
黑鸦扫描
黑鸦扫描
分别由
protex、
Codecenter、和
Export三个产品组成
protex、
Codecenter、和
Export三个产品组成
Protex用于代码扫描、审计和管理,能够清楚的发现源代码中开源代码的使用情况,
帮助用户清楚的了解已有代码中存在的风险(确认license合规性/知识产权风险)
帮助用户清楚的了解已有代码中存在的风险(确认license合规性/知识产权风险)
Codecenter用于帮助用户在软件开发生命周期中寻找和管理使用有效的开源代码,
并能够提示开源代码中是否存在安全漏洞问题
并能够提示开源代码中是否存在安全漏洞问题
Export能够帮助用户发现源代码中是否含有受到出口管制的加密算法
代码管理工具
插件
jenkins
代码持续集成、一键部署的环境。
gerrit
代码入库前的review工具,一般和jenkins合用,jenkins先编译集成,然后由PL review代码,通过gerrit合入库
工具
git
敏捷开发
devops
Azure DevOps
代码合并,必须让某人进行审批
分支和标记管理
jira
缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理
DTS
华为的bug追踪系统
SSH/文本/UML画图
SSH
bash
mac系统,如何切换终端使用zsh或者bash
查看当前的终端是zsh还是bash
echo $0
切换到zsh
chsh -s /bin/zsh
切换到bash:
chsh -s /bin/bash
git bash
下载: brew install git
putty
xshell
mobaxterm
MobaXterm以图形界面GUI形式登录打开远程linux ubuntu服务器桌面
Linux推荐
MultiDesk
Windows推荐
Iterm
下载地址
使用技巧
iTerm2 设置字体(Mac OS X)
分窗口操作:横向 shift+command+d, 竖向 command+d
iTerm2 快捷键大全
新建标签:command + t
oh-my-zsh
mac安装oh-my-zsh
sh -c "$(curl -fsSL https://gitee.com/shmhlsy/oh-my-zsh-install.sh/raw/master/install.sh)"
HomeBrew
mac安装brew
先判断是zsh还是bash
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
mac系统,如何切换终端使用zsh或者bash
查看当前的终端是zsh还是bash
echo $0
切换到zsh
chsh -s /bin/zsh
切换到bash:
chsh -s /bin/bash
brew下载
brew update 更新brew;
brew install {应用名,如mysq} 安装软件
brew cask install {应用名,如myql} 也是下载安装
与上面的区别, 请查看
安装问题
因为执行的终端不一样,可能会导致brew不显示,
记得在起作用的脚本比如zsh对应的.zshrc或者 对应的 bash.bash_profile,
加上一句 source ~/.zprofile
记得在起作用的脚本比如zsh对应的.zshrc或者 对应的 bash.bash_profile,
加上一句 source ~/.zprofile
如果出现不识别
source /Users/jove.liu/.zprofile
安装配置的 备忘录 【maven/提示补全/环境变量】
mac的使用
Mac zsh: command not found zsh 所有命令在终端失效
以下命令请在终端中运行:
PATH=/bin:/usr/bin:/usr/local/bin:${PATH}
export PATH
但是这样治标不治本,在命令可以使用之后,
通过open .bash_profile
把上面设置添加到文件末尾,编辑保存后,别忘了
source .bash_profile
然后关掉终端,再次打开命令就都可以使用了
PATH=/bin:/usr/bin:/usr/local/bin:${PATH}
export PATH
但是这样治标不治本,在命令可以使用之后,
通过open .bash_profile
把上面设置添加到文件末尾,编辑保存后,别忘了
source .bash_profile
然后关掉终端,再次打开命令就都可以使用了
zsh command not found brew
文本工具
vim
notepad++
Notepad JSON格式化
Beyond Compare
文本对比工具
下载地址
sublimetext
下载地址
sublime 给每行text添加字符
调整字体
UML画图工具
StarUML
StartUML反向(逆向)Java工程通过代码生成类图
startUML之遇到tool工具栏没有显示java插件
在StarUML的安装目录下,有一个个的插件的文件夹,
如staruml-java,staruml-xmi,staruml-standard,staruml-rose,staruml-cpp,
staruml-csharp,staruml-generator,staruml-pattern。
如staruml-java,staruml-xmi,staruml-standard,staruml-rose,staruml-cpp,
staruml-csharp,staruml-generator,staruml-pattern。
每个插件目录下都有一个脚本文件unreg.bat
把所有插件目录下的unreg.bat都执行了一下,然后重新启动StarUML
Power Design
PowerDesigner导出 完整的文件,有图有表
Report-->Generate Reports
:Generate html导出的是一个html格式的),还有就是不要忘记设置为简体中文
通过浏览器打开
性能分析
Google-trace
适用于页面性能分析:包括对 js、net 等的分析。
binary size analysis
位于chromium/tools/binary_size下面,二进制分析工具,一般用于对.so、.jar、.aar等进行分析内部代码构造,
使用tools / binary_size / supersize html_report chrome . size -- report - dir ~/ chromereport 语句生成html报告。
使用tools / binary_size / supersize html_report chrome . size -- report - dir ~/ chromereport 语句生成html报告。
Java性能工具
查看堆栈
Intellij IDEA中查看System.gc()堆栈日志
Run–>Edit Configuration,在VM Options中设置:
-XX:+PrintGCDetails
-XX:+PrintGCDetails
如何看JAVA运行栈
jstack
jstack是jdk自带的线程堆栈分析工具,
使用该命令可以查看或导出 Java 应用程序中线程堆栈信息
使用该命令可以查看或导出 Java 应用程序中线程堆栈信息
通过使用 jps 命令获取需要监控的进程的pid,
然后使用 jstack pid 命令查看线程的堆栈信息
然后使用 jstack pid 命令查看线程的堆栈信息
jps命令的使用方法
jps -l
jhat命令使用
JMap
Java性能调优:利用JMC分析性能
查看字节码
javac 和 javap
javac 是用来编译.java文件的
javac -d destdir srcFile
1、-d destdir:指定存放编译生成的 .class 文件的路径
1、-d destdir:指定存放编译生成的 .class 文件的路径
java 命令运行一个.class文件
java com/stopTalking/test/JavacTest
javap 主要用于帮助开发者深入了解 Java 编译器的机制
反编译
javap -c xx
javap -verbose xx /简写为javap -v
反编译
javap -c xx
javap -verbose xx /简写为javap -v
javap -c com/zxk/test/SoftReferenceTest
会输出字节码
会输出字节码
注意
Javac 缺依赖包jar包
javac -classpath d:\test\jxl-2.6.10.jar Txt2Excel.java
需要使用 -classpath 后面接jar包路径,注意”-“的存在
javac和java的时候,出现问题,1、注意package是否正确,必要的时候删除import
2、配置环境变量:classpath\JAVA_HOME\path等等。
3、classpath必须包括你需要的jar包,你得jdk/jre所在位置,比如:
.;D:\Java\jdk\jxl-2.6.10.jar;D:\Java\jdk\lib;D:\Java\jdk\jre\bin;
注意第一个“.”
2、配置环境变量:classpath\JAVA_HOME\path等等。
3、classpath必须包括你需要的jar包,你得jdk/jre所在位置,比如:
.;D:\Java\jdk\jxl-2.6.10.jar;D:\Java\jdk\lib;D:\Java\jdk\jre\bin;
注意第一个“.”
idea 查看java字节码工具
jclasslib Bytecode viewer插件
查看方法调用
Intellij IDEA查看方法的调用栈
先双击选定要查看的方法,
使用快捷键Ctrl+Alt+h,在右侧就会显示该方法的详细信息
使用快捷键Ctrl+Alt+h,在右侧就会显示该方法的详细信息
获取网络信息\报文
linux:wireshark + tcp dump
windows:wireshark
windows:wireshark
jvm调优工具jvisualvm
位置
D:\Java\jdk\bin\jvisualvm.exe
性能分析模块
大方向的定位可以使用top以及stat系列来定位(vmstat,iostat,netstat…),
针对单个进程,可以使用pidstat来分析
针对单个进程,可以使用pidstat来分析
vmstat
iostat
netstat
pidstat
top
JVM 线上故障排查基本操作
通过 top 命令找到 CPU 消耗最高的进程,并记住进程 ID。
再次通过 top -Hp [进程 ID] 找到 CPU 消耗最高的线程 ID,并记住线程 ID.
通过 JDK 提供的 jstack 工具 dump 线程堆栈信息到指定文件中。具体命令:jstack -l [进程 ID] >jstack.log。
由于刚刚的线程 ID 是十进制的,而堆栈信息中的线程 ID 是16进制的,因此我们需要将10进制的转换成16进制的,
并用这个线程 ID 在堆栈中查找。使用 printf "%x\n" [十进制数字] ,可以将10进制转换成16进制。
通过刚刚转换的16进制数字从堆栈信息里找到对应的线程堆栈。就可以从该堆栈中看出端倪。
再次通过 top -Hp [进程 ID] 找到 CPU 消耗最高的线程 ID,并记住线程 ID.
通过 JDK 提供的 jstack 工具 dump 线程堆栈信息到指定文件中。具体命令:jstack -l [进程 ID] >jstack.log。
由于刚刚的线程 ID 是十进制的,而堆栈信息中的线程 ID 是16进制的,因此我们需要将10进制的转换成16进制的,
并用这个线程 ID 在堆栈中查找。使用 printf "%x\n" [十进制数字] ,可以将10进制转换成16进制。
通过刚刚转换的16进制数字从堆栈信息里找到对应的线程堆栈。就可以从该堆栈中看出端倪。
常用Java profiling工具的分析与比较
JAVA 线上故障排查完整套路!牛掰!
todo delete
面试问我,创建多少个线程合适
todo delete
go性能分析工具
pprof
数据库性能分析工具
见SQLPractice - 性能分析
Linux下排查工具
Linux下CPU使用率过高的排查方法
火焰图
如何安装
Mac电脑使用火焰图async-profiler
async-profiler
如何抓取
这篇文章的参考不错
如何分析
开发/集成/编译
开发工具
Go
Visual Studio
本文搜索 Visual,在另一处展示使用
Goland相关,见GO_Practice
Java
myeclipse 和 eclipse
适用于 Java 开发 :myeclipse 是 eclipse的插件,但是size比eclipse大,
自带jdk、jre,使用方便,无需配置环境变量,ctrl + / 会自动补全,适合初学者
自带jdk、jre,使用方便,无需配置环境变量,ctrl + / 会自动补全,适合初学者
spring tool suite
专职spring的eclipse开发工具
IDEA,具体见Java_Practice---》安装/开发/调试工具
JDK相关,见Java_Practice
数据库相关,见SQL_Practice
Python
jetbrains xxx
C#
jetbrains rider
Visual Studio
Visual Studio(vs) 如何快速查找接口的实现类
输入:[\s\S]*ITypedCache
VS2017中如何查看解决方案中项目的类图
查找接口的实现方法
直接全局搜索
快捷键格式化代码
Ctrl+K+F 快捷键
注意顺序不能乱
docker
安装
brew install docker
docker -v
docker可视化工具
Docker Desktop
卸载
使用
Android
Android studio
适用于 Android 开发 :自带各种性能分析工具。
集成
todo
编译工具
Protocol Buffers
下载安装
方式一
https://github.com/protocolbuffers/protobuf/releases/tag/v3.19.4
方式二
brew install protobuf
验证
protoc --version
卸载
which protoc
rm /usr/local/bin/protoc
rm /usr/local/bin/protoc
使用
0 条评论
下一页