etcd & benchmark 常用命令

写入一条key:

etcdctl --endpoints=192.168.43.104:12379 put mytestkey fox

获取一条key:

etcdctl --endpoints=192.168.43.104:12379 get mytestkey

获取所有key:

etcdctl --endpoints=192.168.43.104:12379 get --prefix ""

删除所有key:

etcdctl --endpoints=192.168.43.104:12379 del --prefix "mytestkey"

删除一条key:

etcdctl --endpoints=192.168.43.104:12379 del mytestkey

查询etcd节点状态:

etcdctl --endpoints=http://192.168.43.104:12379,http://192.168.43.105:22379,http://192.168.43.106:32379 endpoint status -w table

查询etcd节点健康:

etcdctl --endpoints=http://192.168.43.104:12379,http://192.168.43.105:22379,http://192.168.43.106:32379 endpoint health -w table

循环写入etcd的bash脚本:

复制代码

#!/bin/bash

beginTime=$(date "+%Y-%m-%d %H:%M:%S")
echo "beginTime:" $beginTime

number=0
while [ "${number}" -lt 90000 ]; do
etcdctl --endpoints=192.168.43.104:12379,192.168.43.105:22379,192.168.43.106:32379 put "name${number}" ${number}
number=$((number + 1))
done

endTime=$(date "+%Y-%m-%d %H:%M:%S")
echo "endtime:" $endTime

duration=$(($(date +%s -d "${endTime}")-$(date +%s -d "${beginTime}")));
echo "时间差:" $duration"s"

复制代码

循环读取etcd的bash脚本:

复制代码
#!/bin/bash

beginTime=$(date "+%Y-%m-%d %H:%M:%S")
echo "beginTime:" $beginTime

number=0
while [ "${number}" -lt 90000 ]; do
  
  result="$(etcdctl --endpoints=192.168.43.104:12379 get "name${number}")"
  if test -z "${result}"; then
      echo "The result is empty. 192.168.43.104:12379的name${number}"
  elif [ "${result}" != "name""${number}"$'\n'"${number}" ];then
      echo "The result is wrong. 192.168.43.104:12379的name${number}"
  fi

  result="$(etcdctl --endpoints=192.168.43.105:22379 get "name${number}")"
  if test -z "${result}"; then
      echo "The result is empty. 192.168.43.105:22379的name${number}"
  elif [ "${result}" != "name""${number}"$'\n'"${number}" ];then
      echo "The result is wrong. 192.168.43.105:22379的name${number}"
  fi

  result="$(etcdctl --endpoints=192.168.43.106:32379 get "name${number}")"
  if test -z "${result}"; then
      echo "The result is empty. 192.168.43.106:32379的name${number}"
  elif [ "${result}" != "name""${number}"$'\n'"${number}" ];then
      echo "The result is wrong. 192.168.43.106:32379的name${number}"
  fi
  
  number=$((number + 1))

done

endTime=$(date "+%Y-%m-%d %H:%M:%S")
echo "endtime:" $endTime

duration=$(($(date +%s -d "${endTime}")-$(date +%s -d "${beginTime}")));
echo "时间差:" $duration"s"
复制代码

 

posted @   larybird  阅读(185)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示