Assegnazione della priorità dei processi - Amazon Simple Storage Service

Assegnazione della priorità dei processi

È possibile assegnare a ciascun processo una priorità numerica, che può essere qualsiasi numero intero positivo. Le operazioni in batch S3 danno la precedenza ai processi in base alla priorità assegnata. I processi con priorità superiore (o un valore numero più alto per il parametro di priorità) vengono valutati per primi. La priorità viene determinata in ordine decrescente, ad esempio a una coda di processi con valore di priorità 10 viene assegnata una preferenza di pianificazione rispetto a una coda di processi con valore di priorità 1.

Puoi modificare la priorità di un processo mentre è in esecuzione. Se invii un nuovo processo con una priorità più alta mentre un processo è in esecuzione, il processo di priorità inferiore può essere sospeso per consentire l'esecuzione del processo con priorità più alta.

La modifica della priorità del lavoro non influisce sulla velocità di elaborazione dei processi.

Nota

Le operazioni in batch S3 rispettano le priorità dei processi sulla base del miglior tentativo. Sebbene i processi con priorità più alta abbiano la precedenza sui processi con priorità più bassa, Amazon S3 non garantisce un ordinamento rigoroso dei processi.

Come aggiornare la priorità del processo nella AWS Management Console
  1. Accedi alla AWS Management Console e apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/.

  2. Nel pannello di navigazione a sinistra, scegli Operazioni in batch.

  3. Scegli il processo specifico che desideri gestire.

  4. Scegli Actions (Operazioni). Nell'elenco a discesa, scegli Update priority (Aggiorna priorità).

Nell'esempio seguente viene aggiornata la priorità dei processi utilizzando l AWS CLI. Un numero più alto indica una priorità di esecuzione più alta.

aws s3control update-job-priority \ --region us-west-2 \ --account-id acct-id \ --priority 98 \ --job-id 00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c

Nell'esempio seguente viene aggiornata la priorità di un processo di operazioni in batch S3 tramite la AWS SDK for Java.

Per ulteriori informazioni sulla priorità dei processi, consulta Assegnazione della priorità dei processi.

package aws.example.s3control; import com.amazonaws.AmazonServiceException; import com.amazonaws.SdkClientException; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.services.s3control.AWSS3Control; import com.amazonaws.services.s3control.AWSS3ControlClient; import com.amazonaws.services.s3control.model.UpdateJobPriorityRequest; import static com.amazonaws.regions.Regions.US_WEST_2; public class UpdateJobPriority { public static void main(String[] args) { String accountId = "Account ID"; String jobId = "00e123a4-c0d8-41f4-a0eb-b46f9ba5b07c"; try { AWSS3Control s3ControlClient = AWSS3ControlClient.builder() .withCredentials(new ProfileCredentialsProvider()) .withRegion(US_WEST_2) .build(); s3ControlClient.updateJobPriority(new UpdateJobPriorityRequest() .withAccountId(accountId) .withJobId(jobId) .withPriority(98)); } catch (AmazonServiceException e) { // The call was transmitted successfully, but Amazon S3 couldn't process // it and returned an error response. e.printStackTrace(); } catch (SdkClientException e) { // Amazon S3 couldn't be contacted for a response, or the client // couldn't parse the response from Amazon S3. e.printStackTrace(); } } }