Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se muestra cómo parametrizar un archivo de configuración en Service Fabric. Si aún no está familiarizado con los conceptos básicos de administración de aplicaciones para varios entornos, lea Administración de aplicaciones para varios entornos.
Procedimiento para parametrizar archivos de configuración
En este ejemplo, invalida un valor de configuración mediante parámetros en la implementación de la aplicación.
Abra el <archivo MyService>\PackageRoot\Config\Settings.xml en su proyecto de servicio.
Establezca un nombre y un valor de parámetro de configuración, por ejemplo, el tamaño de la memoria caché igual a 25; para ello, agregue el siguiente XML:
<Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="25" /> </Section>
Guarde y cierre el archivo.
Abra el archivo <MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml.
En el archivo ApplicationManifest.xml, declare un parámetro y un valor predeterminado en el
Parameters
elemento . Se recomienda que el nombre del parámetro contenga el nombre del servicio (por ejemplo, "MyService").<Parameters> <Parameter Name="MyService_CacheSize" DefaultValue="80" /> </Parameters>
En la sección
ServiceManifestImport
del archivo ApplicationManifest.xml, agregue un elementoConfigOverrides
y un elementoConfigOverride
, haciendo referencia al paquete de configuración, la sección y el parámetro.<ConfigOverrides> <ConfigOverride Name="Config"> <Settings> <Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="[MyService_CacheSize]" /> </Section> </Settings> </ConfigOverride> </ConfigOverrides>
Nota:
En el caso de agregar configOverride, Service Fabric siempre elige los parámetros de la aplicación o el valor predeterminado especificado en el manifiesto de aplicación.
Acceso a configuraciones con parámetros en el código
Nota:
Demasiadas sobreescrituras o demasiado grandes pueden afectar al rendimiento de la API.
En lugar de usar FabricClient.QueryClient.GetApplicationListAsync, capture parámetros mediante el método descrito en esta sección. En el caso de los clústeres con muchas aplicaciones, intente usar valores predeterminados para mejorar el rendimiento. El impacto de los parámetros de aplicación en el rendimiento depende de factores como el tamaño de la máquina virtual, el número de parámetros, el número de aplicaciones y la longitud de los valores.
Puede acceder a la configuración en el archivo settings.xml mediante programación. Tome, por ejemplo, el siguiente archivo XML de configuración:
<Settings
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.microsoft.com/2011/01/fabric">
<!-- Add your custom configuration sections and parameters here -->
<Section Name="MyConfigSection">
<Parameter Name="MyParameter" Value="Value1" />
</Section>
</Settings>
Use el código siguiente para acceder a los parámetros:
CodePackageActivationContext context = FabricRuntime.GetActivationContext();
var configSettings = context.GetConfigurationPackageObject("Config").Settings;
var data = configSettings.Sections["MyConfigSection"];
foreach (var parameter in data.Parameters)
{
ServiceEventSource.Current.ServiceMessage(this.Context, "Working-{0} - {1}", parameter.Name, parameter.Value);
}
Aquí, Parameter.Name
es MyParameter y Parameter.Value
es Value1.
Pasos siguientes
Para obtener información sobre otras funcionalidades de administración de aplicaciones que están disponibles en Visual Studio, consulte Administración de aplicaciones de Service Fabric en Visual Studio.