홈>
여러 원격 컴퓨터에서 클라이언트-서버 성능 실험을 실행하고 있습니다. 실험을 자동화하는 스크립트를 작성하려고합니다. 다음은 현재의 모습 (간단한 방법)입니다.
for t in 0 1 2 3 4 5 6 7 8 9; do
cmd1="ssh [email protected]${client1} runclient --threads=${t}"
cmd2="ssh [email protected]${client2} runclient --threads=${t}"
$cmd1 &
$cmd2 &
wait
runclient
수동으로 시작한 서버에 연결합니다. 잘 작동하지만 서버 시작 및 중지를 자동화하고 싶습니다. 그 의미는
몇 가지 제안을 찾았지만 어떤 것이 나에게 맞는지 잘 모르겠습니다. 일부는nohup을 권장하지만 사용 방법을 잘 모르겠으며 stdin, stdout 및 stderr을 리디렉션해야하는 이유를 이해하지 못합니다. 백그라운드 프로세스를 시작하기 위해 ssh하는"-f"옵션도 있습니다. 이 경우 나중에 중지하려면 어떻게해야하나요?
의견에 대한 응답으로수정 :서버는 성능 실험의 일부입니다. 클라이언트와 비슷한 방식으로 시작합니다.
ssh [email protected]${server} runserver
유일한 차이점은 서버를 한 번 시작하고 다른 매개 변수를 사용하여 클라이언트에서 여러 실험을 실행 한 다음 서버를 중지한다는 것입니다. 그런 식으로해볼 수 있어요
ssh [email protected]${server} runserver &
for t in 0 1 2 3 4 5 6 7 8 9; do
cmd1="ssh [email protected]${client1} runclient --threads=${t}"
cmd2="ssh [email protected]${client2} runclient --threads=${t}"
$cmd1 &
$cmd2 &
wait
그러나 서버가 멈추지 않기 때문에 스크립트는 절대로 첫 번째
wait
를 지나치지 않습니다.
- 답변 # 1
관련 자료
- java - 이전 프로젝트를 실행할 때"Unable to start the daemon process"가 표시됨
- c++ - 명령 줄 인수를 사용하여 백그라운드에서 실행중인 스크립트 업데이트
- python - 백그라운드 스크립트를 실행 한 Jenkins?
- c# - 백그라운드 프로세스 열린 창에서 WPF의 사용자로부터 입력을받습니다
- R 스크립트를 실행하는 R에서 장기 실행 병렬 프로세스를 생성하는 방법은 무엇입니까?
- powershell - invoke-command 스크립트 블록의 백그라운드에서 cmd 명령을 실행하는 방법
- c# - 독립적 인 프로세스 시작 (프로그램 종료 후 활성 유지)
- python - Selenium을 사용하여 여러 URL에 대해 동일한 프로세스를 스크립트로 실행하는 방법
- javascript - MS-Edge Extension의 백그라운드 스크립트에서 Windowprompt ()가 작동하지 않음
- npm - [email protected] 시작 스크립트에서 실패
- php - 자원이 제한된 백그라운드 프로세스
- xcode - bash 스크립트 시작시 터미널 입력 호출
- 데몬 프로세스 Android Studio 341을 시작할 수 없습니다
- multithreading - 자바 웹 애플리케이션의 백그라운드 프로세스
- webjob - 어떤 푸른 백그라운드 프로세스를 사용해야합니까?
- node.js - npm 시작 명령에서 스크립트 오류 누락
- unity3d - 맨 앞으로 가져 오기 전에로드 할 두 번째 Android 활동을 백그라운드에서 시작합니다
- reactjs - "반응 스크립트 시작"후 순차적 NPM 스크립트
- powershell - Windows에서 실행중인 서비스 및 프로세스와 연결하는 스크립트를 작성해야합니다 해시 테이블에 결과 입력
- shell script - Unix에서 백그라운드 프로세스 수를 제한하는 방법
관련 질문
- bash : (루트) 경고: 식별 파일 /dev/fd/62에 액세스할 수 없음: 해당 파일 또는 디렉터리가 없습니다.
- bash : 스크립트 또는 설정 LD_PRELOAD를 시작하는 경우 Docker 컨테이너 ssh가 시작되지 않음
- bash : 유닉스 셸 스크립트에 대한 Here Document의 함수 호출
- bash : 쉘 스크립트의 선언된 함수에서 강제 문자열 교체
- bash : TortiseSVN svn+ssh 오류: URL의 리포지토리에 연결할 수 없습니다... 네트워크 연결이 예기치 않게 닫혔습니다.
- python : 파이썬을 사용한 SFTP
- SSH가 bash 스크립트에서 호스트 이름을 확인할 수 없음
- bash : SSH 세션이 닫힌 후 백그라운드 프로세스가 종료되는 이유
- linux : 원격 평가로 SSH를 통해 원격 명령 실행
- Bash 기능에서 ssh 계정을 활성화하면 BATS 테스트가 중단됩니다.
PID를 추적하고 개별적으로 기다립니다.
또한 아래와 같이 실패를 추적 할 수 있습니다 :