StartTask Sınıf
Düğüm Azure Batch hizmetindeki bir Havuza katıldığında veya İşlem Düğümü yeniden başlatıldığında veya yeniden oluşturulduğunda çalıştırılan görev.
Batch, Düğümde bir kurtarma işlemi tetiklendiğinde Görevleri yeniden dener. İyi durumda olmayan bir Düğüm yeniden başlatıldığında veya konak hatası nedeniyle bir İşlem Düğümü kaybolduğunda kurtarma işlemlerine örnek olarak verilebilir (ancak bunlarla sınırlı değildir). Kurtarma işlemleri nedeniyle yeniden denemeler şunlardan bağımsızdır ve maxTaskRetryCount'a göre sayılmaz. maxTaskRetryCount değeri 0 olsa bile, kurtarma işlemi nedeniyle bir iç yeniden deneme gerçekleşebilir. Bu nedenle, tüm Görevler bir kez etkili olmalıdır. Bu, Görevlerin bozulmaya veya yinelenen verilere neden olmadan kesintiye uğramasına ve yeniden başlatılmasına tolerans göstermesi gerektiği anlamına gelir. Uzun süre çalışan Görevler için en iyi yöntem, bir tür denetim noktası kullanmaktır. Bazı durumlarda İşlem Düğümü yeniden başlatılmamış olsa bile StartTask yeniden çalıştırılabilir. Ayrık işlem oluşturan veya StartTask çalışma dizininden hizmet yükleyen/başlatan StartTask'lerden kaçınmak için özel özen gösterilmelidir, bu da Batch'in StartTask'ı yeniden çalıştırabilmesini engeller.
Azure'a göndermek için tüm gerekli parametrelerin doldurulması gerekir.
- Devralma
-
StartTask
Oluşturucu
StartTask(*, command_line: str, container_settings=None, resource_files=None, environment_settings=None, user_identity=None, max_task_retry_count: int = None, wait_for_success: bool = None, **kwargs)
Parametreler
- command_line
- str
Gereklidir. Komut satırı bir kabuk altında çalışmaz ve bu nedenle ortam değişkeni genişletmesi gibi kabuk özelliklerinden yararlanamaz. Bu tür özelliklerden yararlanmak istiyorsanız, kabuğu komut satırında çağırmanız gerekir; örneğin, Windows'ta "cmd /c MyCommand" veya Linux'ta "/bin/sh -c MyCommand" kullanın. Komut satırı dosya yollarına başvuruyorsa, göreli bir yol (Görev çalışma dizinine göre) veya Batch tarafından sağlanan ortam değişkenini (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables kullanmalıdır).
- container_settings
- TaskContainerSettings
StartTask'ın altında çalıştığı kapsayıcının ayarları. Bu belirtildiğinde, AZ_BATCH_NODE_ROOT_DIR (düğümdeki Azure Batch dizinlerinin kökü) altında özyinelemeli olarak tüm dizinler kapsayıcıyla eşlenir, tüm Görev ortamı değişkenleri kapsayıcıya eşlenir ve Görev komut satırı kapsayıcıda yürütülür. AZ_BATCH_NODE_ROOT_DIR dışında kapsayıcıda üretilen dosyalar ana bilgisayar diskine yansıtılmayabilir; bu da Batch dosya API'lerinin bu dosyalara erişemeyeceği anlamına gelir.
- resource_files
- list[ResourceFile]
Bu öğe altında listelenen dosyalar Görevin çalışma dizininde bulunur.
- environment_settings
- list[EnvironmentSetting]
- user_identity
- UserIdentity
StartTask'ın altında çalıştığı kullanıcı kimliği. Atlanırsa, Görev, Göreve özgü yönetici olmayan bir kullanıcı olarak çalışır.
- max_task_retry_count
- int
Görevin yeniden denenebileceği en fazla sayı. Batch hizmeti, çıkış kodu sıfır olmayan bir Görevi yeniden denenir. Bu değerin özellikle yeniden deneme sayısını denetlediğini unutmayın. Batch hizmeti Görevi bir kez dener ve bu sınıra kadar yeniden deneyebilir. Örneğin, en fazla yeniden deneme sayısı 3 ise, Batch Görevi en fazla 4 kez dener (ilk bir deneme ve 3 yeniden deneme). Yeniden deneme sayısı üst sınırı 0 ise, Batch hizmeti Görevi yeniden denemez. Yeniden deneme sayısı üst sınırı -1 ise, Batch hizmeti Görevi sınırsız olarak yeniden dener, ancak bu bir başlangıç görevi veya herhangi bir görev için önerilmez. Varsayılan değer 0'dır (yeniden deneme yoktur).
- wait_for_success
- bool
İşlem Düğümünde herhangi bir Görev zamanlamadan önce Batch hizmetinin StartTask'ın başarıyla tamamlanmasını (yani çıkış kodu 0 ile çıkmak için) beklemesi gerekip gerekmediği. True ise ve StartTask bir Düğümde başarısız olursa, Batch hizmeti StartTask'i en fazla yeniden deneme sayısı (maxTaskRetryCount) kadar yeniden dener. Tüm yeniden denemelerden sonra Görev yine de başarıyla tamamlanmamışsa, Batch hizmeti Düğümü kullanılamaz olarak işaretler ve Görevler'i buna zamanlamaz. Bu koşul İşlem Düğümü durumu ve hata bilgileri ayrıntıları aracılığıyla algılanabilir. False ise, Batch hizmeti StartTask'ın tamamlanmasını beklemez. Bu durumda, StartTask hala çalışırken diğer Görevler İşlem Düğümünde yürütülmeye başlayabilir; Ve StartTask başarısız olsa bile, yeni Görevler İşlem Düğümünde zamanlanmaya devam eder. Varsayılan değer true'dur.
Yöntemler
as_dict |
json.dump kullanarak JSONify olabilecek bir dikte döndürebilirsiniz. Gelişmiş kullanım isteğe bağlı olarak parametre olarak bir geri çağırma kullanabilir: Anahtar, Python'da kullanılan öznitelik adıdır. Attr_desc, meta verilerin bir diktesidir. Şu anda msrest türüyle 'type' ve RestAPI kodlanmış anahtarıyla 'key' içerir. Değer, bu nesnedeki geçerli değerdir. Döndürülen dize, anahtarı seri hale getirmek için kullanılır. Dönüş türü bir listeyse, bu hiyerarşik sonuç diktesi olarak kabul edilir. Bu dosyadaki üç örne bakın:
XML serileştirme istiyorsanız, kwargs is_xml=True geçirebilirsiniz. |
deserialize |
RestAPI söz dizimini kullanarak bir str ayrıştırın ve bir model döndürün. |
enable_additional_properties_sending | |
from_dict |
Verilen anahtar ayıklayıcıyı kullanarak bir dikteyi ayrıştırma bir model döndürür. Varsayılan olarak anahtar ayıklayıcıları (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor ve last_rest_key_case_insensitive_extractor) göz önünde bulundurun |
is_xml_model | |
serialize |
Bu modelden Azure'a gönderilecek JSON kodunu döndür. Bu, as_dict(full_restapi_key_transformer, keep_readonly=False) için bir diğer addır. XML serileştirme istiyorsanız, kwargs is_xml=True geçirebilirsiniz. |
validate |
Bu modeli yinelemeli olarak doğrulayın ve ValidationError listesini döndürür. |
as_dict
json.dump kullanarak JSONify olabilecek bir dikte döndürebilirsiniz.
Gelişmiş kullanım isteğe bağlı olarak parametre olarak bir geri çağırma kullanabilir:
Anahtar, Python'da kullanılan öznitelik adıdır. Attr_desc, meta verilerin bir diktesidir. Şu anda msrest türüyle 'type' ve RestAPI kodlanmış anahtarıyla 'key' içerir. Değer, bu nesnedeki geçerli değerdir.
Döndürülen dize, anahtarı seri hale getirmek için kullanılır. Dönüş türü bir listeyse, bu hiyerarşik sonuç diktesi olarak kabul edilir.
Bu dosyadaki üç örne bakın:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
XML serileştirme istiyorsanız, kwargs is_xml=True geçirebilirsiniz.
as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)
Parametreler
- key_transformer
- <xref:function>
Anahtar transformatörü işlevi.
- keep_readonly
Döndürülenler
JSON uyumlu bir dikte nesnesi
Dönüş türü
deserialize
RestAPI söz dizimini kullanarak bir str ayrıştırın ve bir model döndürün.
deserialize(data, content_type=None)
Parametreler
- content_type
- str
JSON varsayılan olarak, XML ise application/xml değerini ayarlayın.
Döndürülenler
Bu modelin bir örneği
Özel durumlar
enable_additional_properties_sending
enable_additional_properties_sending()
from_dict
Verilen anahtar ayıklayıcıyı kullanarak bir dikteyi ayrıştırma bir model döndürür.
Varsayılan olarak anahtar ayıklayıcıları (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor ve last_rest_key_case_insensitive_extractor) göz önünde bulundurun
from_dict(data, key_extractors=None, content_type=None)
Parametreler
- content_type
- str
JSON varsayılan olarak, XML ise application/xml değerini ayarlayın.
- key_extractors
Döndürülenler
Bu modelin bir örneği
Özel durumlar
is_xml_model
is_xml_model()
serialize
Bu modelden Azure'a gönderilecek JSON kodunu döndür.
Bu, as_dict(full_restapi_key_transformer, keep_readonly=False) için bir diğer addır.
XML serileştirme istiyorsanız, kwargs is_xml=True geçirebilirsiniz.
serialize(keep_readonly=False, **kwargs)
Parametreler
- keep_readonly
- bool
Salt okunur öznitelikleri seri hale getirmek istiyorsanız
Döndürülenler
JSON uyumlu bir dikte nesnesi
Dönüş türü
validate
Bu modeli yinelemeli olarak doğrulayın ve ValidationError listesini döndürür.
validate()
Döndürülenler
Doğrulama hatası listesi
Dönüş türü
Azure SDK for Python