Поделиться через


Как указать номер порта службы с помощью параметров в Service Fabric

В этой статье показано, как указать номер порта службы с помощью параметров в Service Fabric, используя Visual Studio.

Процедура указания номера порта службы с помощью параметров

В этом примере задается номер порта веб-API ASP.NET Core с помощью параметра.

  1. Откройте Visual Studio и создайте приложение Service Fabric.

  2. Выберите шаблон "ASP.NET Core без отслеживания состояния".

  3. Выберите "Веб-API".

  4. Откройте файл ServiceManifest.xml.

  5. Обратите внимание на имя конечной точки, указанное для службы. По умолчанию — ServiceEndpoint.

  6. Откройте файл ApplicationManifest.xml.

  7. В элемент ServiceManifestImport добавьте новый элемент RessourceOverrides со ссылкой на конечную точку в файле ServiceManifest.xml.

      <ServiceManifestImport>
        <ServiceManifestRef ServiceManifestName="Web1Pkg" ServiceManifestVersion="1.0.0" />
        <ResourceOverrides>
          <Endpoints>
            <Endpoint Name="ServiceEndpoint"/>
          </Endpoints>
        </ResourceOverrides>
        <ConfigOverrides />
      </ServiceManifestImport>
    
  8. Теперь в элементе Endpoint можно с помощью параметра переопределить любой атрибут. В этом примере указывается атрибут Port, и ему присваивается значение — имя параметра в квадратных скобках, например [MyWebAPI_PortNumber].

      <ServiceManifestImport>
        <ServiceManifestRef ServiceManifestName="Web1Pkg" ServiceManifestVersion="1.0.0" />
        <ResourceOverrides>
          <Endpoints>
            <Endpoint Name="ServiceEndpoint" Port="[MyWebAPI_PortNumber]"/>
          </Endpoints>
        </ResourceOverrides>
        <ConfigOverrides />
      </ServiceManifestImport>
    
  9. Затем в файле ApplicationManifest.xml можно указать этот параметр в элементе Parameters.

      <Parameters>
        <Parameter Name="MyWebAPI_PortNumber" />
      </Parameters>
    
  10. После этого определите DefaultValue.

      <Parameters>
        <Parameter Name="MyWebAPI_PortNumber" DefaultValue="8080" />
      </Parameters>
    
  11. Откройте папку ApplicationParameters и откройте файл Cloud.xml.

  12. Чтобы указать другой порт для публикации на удаленный кластер, добавьте в этот файл параметр с номером порта.

      <Parameters>
        <Parameter Name="MyWebAPI_PortNumber" Value="80" />
      </Parameters>
    

При публикации приложения из Visual Studio с помощью профиля публикации Cloud.xml служба будет использовать порт 80. Если приложение развертывается без указания параметра MyWebAPI_PortNumber, то служба использует порт 8080.

Следующие шаги

Чтобы узнать больше о некоторых основных понятиях, рассмотренных в данной статье, ознакомьтесь с разделом Управление параметрами приложения для нескольких сред.

Сведения о других возможностях управления приложениями, доступными в Visual Studio, см. в статье Использование Visual Studio для упрощения создания приложений Service Fabric и управления ими.