分布式编译和测试

2019-11-20  本文已影响0人  镜中无我

分布式工具:distcc

简介

distcc是类unix系统下一款分布式的编译工具。所谓分布式编译,就是在由多台主机并行开发的大型项目中,为了提高编译效率,采取的分布式交叉编译的方式。

前期准备

distcc的安装
  1. 安装一些必须的软件
    sudo apt-get install gcc make python3 python3-dev libiberty-dev
  2. 编译和安装
    在没一台机器上下载源码
    git clone git@github.com:distcc/distcc/git.
    然后安装
cd distcc
./autogen.sh
./configure
make
make check
make install
make installcheck
update-distcc-symlinks
  1. 运行distcc服务
    distccd --user nobody --job 6 --daemon --allow 参与编译的所有主机ip用空格隔开
  2. 在每一台机器上添加我们的目标工程
make -j40 CC="distcc gcc"
make -j40 CXX="distcc g++"
对于cmake
CC="distcc cc" CXX="distcc g++" cmake . #注意有一个“.”

wrk

wrk是一种http的负载测试工具,下载链接:https://github.com/wg/wrk
使用方法见:wrk -t12 -c400 -d30s http://127.0.0.1:8080/index.html

介绍几个指标

在互联网的其他场景下经常会使用其他两个指标来衡量吞吐量

  • QPS:每秒处理查询的数量
  • TPS:每一秒处理事务的数量
  • 并发数:系统同时处理的request/transaction数量,等于QPS×平均响应时间

参数说明

-c,-connections:每线程开的连接数
-t,-threads:线程数
-s,script:LuaJIT script
-H,--header:HTTP header to add to request
--latency:print detailed latency statistics
--timeout:记录响应等待的超时

ab测试工具

Apache Bench是Apache服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据命令可以创建很多并发访问线程,模拟多个访问者同时对某一个URL地址进行访问,因此可以用来测试目标服务器的负载能力

redis bench

上一篇 下一篇

猜你喜欢

热点阅读