Eventi
17 mar, 21 - 21 mar, 10
Partecipa alla serie meetup per creare soluzioni di intelligenza artificiale scalabili basate su casi d'uso reali con altri sviluppatori ed esperti.
Esegui registrazioneQuesto browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare le funzionalità più recenti, gli aggiornamenti della sicurezza e il supporto tecnico.
Il modulo client di PowerShell in Orleans è un set di cmdlet di PowerShell che esegue il wrapping dell'oggetto GrainClient. Il modulo fornisce un set di comandi pratici che consentono di interagire non solo con il ManagementGrain
, ma anche con qualsiasi IGrain
, proprio come una normale applicazione di Orleans può usare gli script di PowerShell.
Questi cmdlet rendono possibili vari scenari, dall'avvio di attività di manutenzione, test, monitoraggio a qualsiasi altro tipo di automazione, sfruttando gli script di PowerShell.
Per installare questo modulo dal codice sorgente, è possibile creare una build usando il progetto OrleansPSUtils
e importarla con:
Import-Module .\projectOutputDir\Orleans.psd1
Esiste comunque anche un modo molto più semplice e interessante per eseguire questa operazione, ossia l'installazione da PowerShell Gallery. I moduli di PowerShell sono facilmente condivisi, in modo molto simile ai pacchetti Nuget, ma sono ospitati in PowerShell Gallery invece che in nuget.org.
Per installare questo modulo da PowerShell Gallery, eseguire il comando seguente nella cartella desiderata:
Save-Module -Name OrleansPSUtils -Path <path>
Per installarlo nel percorso dei moduli di PowerShell (soluzione consigliata), eseguire:
Install-Module -Name OrleansPSUtils
Se si prevede di usare questo modulo in un'istanza di Automazione di Azure, usare questo collegamento.
Indipendentemente dalla modalità di installazione desiderata, è necessario importare il modulo nella sessione di PowerShell corrente, in modo da rendere disponibili i cmdlet, eseguendo questo comando:
Import-Module OrleansPSUtils
Importante
Se si è creata una build dal codice sorgente, è necessario importarla come suggerito nella sezione Installare il modulo usando il percorso del file con estensione .psd1
anziché il nome del modulo perché quest'ultimo non si troverà nella variabile di runtime di PowerShell $env:PSModulePath
. È comunque altamente consigliabile installare il modulo da PowerShell Gallery.
Dopo l'importazione del modulo, che verrà quindi caricato nella sessione di PowerShell, saranno disponibili i cmdlet seguenti:
Start-GrainClient
Stop-GrainClient
Get-Grain
Questo modulo è un wrapper per GrainClient.Initialize() e i relativi overload.
Questo cmdlet equivale a una chiamata a GrainClient.Initialize(), che cercherà i nomi di file di configurazione noti del client Orleans:
Start-GrainClient [-ConfigFilePath] <string> [[-Timeout] <timespan>]
Il comando precedente userà il percorso di file specificato, come in GrainClient.Initialize(filePath)
.
Start-GrainClient [-ConfigFile] <FileInfo> [[-Timeout] <timespan>]
Il comando precedente userà un'istanza della classe FileInfo che rappresenta il file di configurazione, come in GrainClient.Initialize(fileInfo)
.
Start-GrainClient [-Config] <ClientConfiguration> [[-Timeout] <timespan>]
Il comando precedente userà un'istanza di ClientConfiguration, come in GrainClient.Initialize(config)
.
Start-GrainClient [-GatewayAddress] <IPEndPoint> [[-OverrideConfig] <bool>] [[-Timeout] <timespan>]
Il comando precedente accetta un endpoint dell'indirizzo del gateway del cluster Orleans.
Suggerimento
Il parametro Timeout
è facoltativo e, se specificato e maggiore di TimeSpan.Zero, chiamerà GrainClient.SetResponseTimeout(TimeSpan) internamente.
Per arrestare l'oggetto GrainClient
, chiamare il comando seguente:
Stop-GrainClient
Il comando precedente non accetta parametri e, quando viene chiamato, annulla normalmente l'inizializzazione dell'oggetto GrainClient
, se inizializzato.
Per ottenere un oggetto Grain
, questo cmdlet è un wrapper per GrainClient.GrainFactory.GetGrain<T>()
e i relativi overload. Il parametro obbligatorio è -GrainType
, insieme a -XXXKey
, per i tipi di chiave dei grani correnti supportati da Orleans (string
, Guid
, long
), e a -KeyExtension
, che può essere usato sui grani con chiavi composte.
Questo cmdlet restituisce un riferimento al grano del tipo passato come parametro in -GrainType
. Ecco un esempio di chiamata al metodo MyInterfacesNamespace.IMyGrain.SayHelloTo
per un grano:
Import-Module OrleansPSUtils
$configFilePath = Resolve-Path(".\ClientConfig.xml").Path
Start-GrainClient -ConfigFilePath $configFilePath
Add-Type -Path .\MyGrainInterfaceAssembly.dll
$grainInterfaceType = [MyInterfacesNamespace.IMyGrain]
$grainId = [System.Guid]::Parse("A4CF7B5D-9606-446D-ACE9-C900AC6BA3AD")
$grain = Get-Grain -GrainType $grainInterfaceType -GuidKey $grainId
$message = $grain.SayHelloTo("Gutemberg").Result
Write-Output $message
Hello Gutemberg!
Stop-GrainClient
Esistono altri cmdlet non descritti qui, ma è disponibile il supporto per osservatori, flussi e altre funzionalità principali di Orleans in modo più nativo in PowerShell.
Nota
La finalità non è quella di reimplementare l'intero client in PowerShell, ma di offrire ai team IT e DevOps una soluzione per interagire con i grani senza dover implementare un'applicazione .NET.
Feedback su .NET
.NET è un progetto open source. Seleziona un collegamento per fornire feedback:
Eventi
17 mar, 21 - 21 mar, 10
Partecipa alla serie meetup per creare soluzioni di intelligenza artificiale scalabili basate su casi d'uso reali con altri sviluppatori ed esperti.
Esegui registrazioneTraining
Modulo
Creare la prima app Orleans con ASP.NET Core 8.0 - Training
Informazioni su come creare app distribuite native del cloud con Orleans.