Paralleles Ausführen von Curl-Prozessen in Bash

Paralleles Ausführen von Curl-Prozessen in Bash

Ich glaube, ich habe meine Daten damals mit dem Curl-Befehl im Terminal gepostet, aber tausende Male, um ein gutes Ergebnis zu erzielen. Ich habe den folgenden Bash-Code geschrieben:

  contents=$(< /Users/Andrea/Desktop/data.txt)
  eval "words=( $contents )”
  arguments=()
  for i in {1..10000}
  do
  arguments+=( "${words[@]}" );
  done;
  curl "${arguments[@]}”;

in dem meine JSON-Daten in data.txt gespeichert sind. Wenn ich den Code ausführe, dauert es lange, alle Anfragen an den Server zu senden, und ich bekomme keine sehr gute Antwort. Andererseits werden viele dieser Anfragen nach einiger Zeit an den Server gesendet, was nicht nützlich ist. Die data.txt enthält die folgenden Daten

 --next 
 'https://d.server.com/easy/api/Order' 
 -H 'Connection: keep-alive' 
 -H 'Pragma: no-cache' 
 -H 'Cache-Control: no-cache' 
 -H 'Accept: application/json, text/plain, */*' 
 -H 'Sec-Fetch-Dest: empty'  
 -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like 
 Gecko) Chrome/80.0.3987.132 Safari/537.36' 
 -H 'Content-Type: application/json' 
 -H 'Origin: https://d.server.com' 
 -H 'Sec-Fetch-Site: same-site' 
 -H 'Sec-Fetch-Mode: cors' 
 -H 'Referer: https://d.server.com/' 
 -H 'Accept- Language: en-US,en;q=0.9,fa;q=0.8' 
 --data-binary '{"name":"Andrea","Id":13647,"family":Bianda,"pr":5400}' 
 -- compressed"

Jetzt habe ich mich gefragt, wie ich das Posten dieser Curls beschleunigen und möglichst viele davon eine Sekunde vor Beginn der Zeit posten kann. Die Antwort dieses Curls ist nicht wichtig, und im Erfolgsfall schlägt die andere Anfrage fehl und ich werde an der Reihe sein.

verwandte Informationen