환경 최적화를 위한 구성 후 단계

구성 후 단계는 성능을 향상하고, BizTalk 환경을 유지 관리하며, EDI 스키마를 설치하는 데 도움이 됩니다.

SQL Server에서 공유 메모리 프로토콜을 사용하지 않도록 설정

  1. >MSSQLSERVER에 대한SQL Server 네트워크 구성> 프로토콜을 확장하기 SQL Server 구성 관리자 엽니다.
  2. 공유 메모리>사용 안 함을 마우스 오른쪽 단추로 클릭합니다.
  3. SQL Server 서비스를 선택하고 SQL Server(MSSQLServer)>다시 시작을 마우스 오른쪽 단추로 클릭합니다.
  4. SQL Server 구성 관리자 닫습니다.

SQL 에이전트 작업 구성

  1. SQL Server Management Studio 열고 데이터베이스 엔진에 연결합니다.

  2. SQL Server 에이전트 확장하고 작업을 확장합니다. 다음 작업을 구성합니다.

    • 백업 BizTalk Server: BizTalk Server 데이터베이스 및 로그 파일을 백업합니다. 이 작업을 구성할 때 주기 및 파일 위치와 같은 매개 변수가 지정됩니다.

      이 SQL 에이전트 작업과 해당 매개 변수에 대해서는 다음 링크를 참조하세요.

      SQL 에이전트 작업도 트랜잭션 로그를 잘라 성능 향상에 도움을 줍니다.

      이 작업은 이전 파일을 포함하여 백업 파일을 제거하거나 삭제하지 않습니다. 백업 파일을 삭제하려면 "시간이 지남에 따라 Microsoft BizTalk Server 데이터베이스 서버에서 백업 파일이 누적되면 'Backup BizTalk Server' 작업이 실패함"을 참조하세요.

    • DTA 제거 및 보관: BizTalk Server 추적 데이터베이스(BizTalkDTADb)를 잘라내고 보관합니다. 이 작업을 구성할 때 완성된 인스턴스의 보관 기간(일)과 모든 데이터의 보관 기간(일) 등의 매개 변수가 지정됩니다.

      이 SQL 에이전트 작업과 해당 매개 변수에 대해서는 다음 링크를 참조하세요.

      이 SQL 에이전트 작업은 추적 호스트를 유지하고 추적 이벤트를 제거하여 성능에 직접적인 영향을 줍니다.

백업 파일 유지 관리

BizTalk Server는 백업 파일을 삭제하기 위한 작업을 포함하지 않습니다. 따라서 백업 파일의 유지 관리 방법은 사용자에게 달려 있습니다. 많은 사용자가 sp_DeleteBackupHistoryAndFiles 저장 프로시저를 만들고 BizTalk Server 백업 작업에서 직접이 저장된 프로시저를 호출합니다. 일부 사용자는 유지 관리 계획을 만듭니다. 선택은 사용자의 몫입니다. 이 항목에서는 두 옵션을 모두 나열합니다.

옵션 1: sp_DeleteBackupHistoryAndFiles 저장 프로시저를 만듭니다.

  1. SQL Server Management Studio에서 BizTalk 관리 데이터베이스(BizTalkMgmtDb)를 선택합니다.

  2. 새 쿼리를 선택하고 다음 T-SQL 스크립트를 실행하여 (BizTalk Server 2016) 또는 sp_DeleteBackupHistoryAndFiles2013 (BizTalk Server 2013 R2 이상) 저장 프로시저를 만듭니 sp_DeleteBackupHistoryAndFiles 다.

    sp_DeleteBackupHistoryAndFiles(BizTalk Server 2016 이상)

    CREATE PROCEDURE [dbo].[sp_DeleteBackupHistoryAndFiles] @DaysToKeep smallint = null
    AS
    
    BEGIN
    set nocount on
    IF @DaysToKeep IS NULL OR @DaysToKeep <= 1
    RETURN
    /*
    Only delete full sets
    If a set spans a day in such a way that some items fall into the deleted group and the other does not, do not delete the set
    */
    
    /*
    First delete MarkName from all other databases
    */
    declare @BackupServer sysname ,@BackupDB sysname, @tsql nvarchar(1024), @MarkToBeDeleted nvarchar(128)
    DECLARE BackupDB_Cursor insensitive cursor for
    SELECT	ServerName, DatabaseName
    FROM	admv_BackupDatabases
    ORDER BY ServerName
    open BackupDB_Cursor
    
    SELECT @MarkToBeDeleted = MAX([MarkName])
    FROM [dbo].[adm_BackupHistory] [h1]
    WHERE [BackupType] = 'lg' AND datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND	[BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [h1].[BackupSetId] AND datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep AND [h2].[BackupType] = 'lg')
    AND EXISTS( SELECT TOP 1 1 FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] > [h1].[BackupSetId] AND [h2].[BackupType] = 'lg')
    fetch next from BackupDB_Cursor into @BackupServer, @BackupDB
    
    while @@fetch_status = 0
    	begin
    	set @tsql = '[' + @BackupServer + '].[' + @BackupDB + '].[dbo].[sp_CleanUpMarkLog]'
    	exec @tsql @MarkName=@MarkToBeDeleted
    	fetch next from BackupDB_Cursor into @BackupServer, @BackupDB
    	end
    
    close BackupDB_Cursor
    deallocate BackupDB_Cursor
    
    DECLARE DeleteBackupFiles CURSOR
    -- xp_delete_file variant
    FOR SELECT [BackupFileLocation] + '\' + [BackupFileName] FROM [adm_BackupHistory]
    -- xp_cmdshell variant
    -- FOR SELECT 'del "' + [BackupFileLocation] + '\' + [BackupFileName] + '"' FROM [adm_BackupHistory]
    WHERE  datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND [BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [BackupSetId] AND datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep )
    
    DECLARE @cmd varchar(400)
    OPEN DeleteBackupFiles
    FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    WHILE (@@fetch_status <> -1)
    BEGIN
        IF (@@fetch_status <> -2)
        BEGIN
    -- xp_delete_file variant
            EXECUTE master.dbo.xp_delete_file 0, @cmd
    -- xp_cmdshell variant
    --        EXEC master.dbo.xp_cmdshell @cmd, NO_OUTPUT
            delete from [adm_BackupHistory] WHERE CURRENT OF DeleteBackupFiles
            print @cmd
        END
        FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    END
    
    CLOSE DeleteBackupFiles
    DEALLOCATE DeleteBackupFiles
    END
    GO
    

    sp_DeleteBackupHistoryAndFiles2013(BizTalk 2013 R2 이상)

    CREATE PROCEDURE [dbo].[sp_DeleteBackupHistoryAndFiles2013] @DaysToKeep smallint = null
    AS
    
    BEGIN
    set nocount on
    IF @DaysToKeep IS NULL OR @DaysToKeep <= 1
    RETURN
    /*
    Only delete full sets
    If a set spans a day in such a way that some items fall into the deleted group and the other does not, do not delete the set
    */
    
    DECLARE DeleteBackupFiles CURSOR
    FOR SELECT 'del "' + [BackupFileLocation] + '\' + [BackupFileName] + '"' FROM [adm_BackupHistory]
    WHERE  datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND [BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [BackupSetId] AND  datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep )
    
    DECLARE @cmd varchar(400)
    OPEN DeleteBackupFiles
    FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    WHILE (@@fetch_status <> -1)
    BEGIN
        IF (@@fetch_status <> -2)
        BEGIN
            EXEC master.dbo.xp_cmdshell @cmd, NO_OUTPUT
            delete from [adm_BackupHistory] WHERE CURRENT OF DeleteBackupFiles
            print @cmd
        END
        FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    END
    
    CLOSE DeleteBackupFiles
    DEALLOCATE DeleteBackupFiles
    END
    GO
    
  3. 백업 BizTalk Server 작업을 > 열고 단계를 선택합니다.

  4. 이전 sp_DeleteBackupHistory 저장 프로시저 대신 새 sp_DeleteBackupHistoryAndFiles 또는 sp_DeleteBackupHistoryAndFiles2013 저장 프로시저를 호출할 있도록 백업 기록 지우기 단계를 편집합니다.

  5. 확인을 선택하여 변경 내용을 저장합니다.

옵션 2: 유지 관리 계획 만들기

  1. SQL Server Management Studio 관리를 확장하고 유지 관리 계획을 마우스 오른쪽 단추로 클릭한 다음 유지 관리 계획 마법사를 선택합니다.
  2. 계획의 이름을 지정한 다음(예: 백업 파일 제거) 일정 옆에 있는 변경 단추를 선택합니다.
  3. 백업 파일 제거 빈도를 선택합니다. 이러한 설정은 사용자가 원하는 대로 지정할 수 있습니다. 확인선택하고 다음을 선택합니다.
  4. 유지 관리 정리 작업>다음을 선택합니다.
  5. 정리 작업 창에서 폴더 검색 및 파일 삭제...로 이동하여 백업 폴더(예: f:\BizTalkBackUps)를 선택하고 파일 확장명에서 .bak를 입력합니다. 기간을 기반으로 파일을 삭제할 수도 있습니다. 예를 들어 3주보다 오래된 파일을 삭제하려면 3을 입력합니다. 다음을 선택합니다.
  6. 마법사를 통해 완료하고 원하는 추가 정보를 입력합니다. 마침을 선택합니다.

EDI 스키마 설치 및 추가 EDI AS2 구성

EANCOM, EDIFACT, HIPAA 및 X12 스키마 파일은 MicrosoftEdiXSDTemplates.exe 라는 자체 추출 실행 파일에 포함됩니다. EDI 솔루션을 만들려면 이러한 파일을 추출하고 프로젝트와 함께 배포합니다. 이러한 파일을 설치 및 추출하려면:

  1. BizTalk Server 설치를 실행하고 개발자 도구 및 SDK 구성 요소를 설치합니다. 이 구성 요소는 MicrosoftEdiXSDTemplates.exe EDI 스키마 파일을 \XSD_Schema\EDI 폴더에 다운로드합니다.

    참고

    BizTalk Server 업그레이드하는 경우 설치의 MicrosoftEdiXSDTemplates.exe 파일이 업그레이드와 연결된 새 MicrosoftEdiXSDTemplates.exe 파일로 대체됩니다. 이전 스키마가 필요한 경우 이전 MicrosoftEdiXSDTemplates.exe 파일을 백업합니다.

    참고

    BizTalk Server 이후 빌드로 업그레이드할 때 메시지 스키마를 업그레이드하는 경우 업데이트된 스키마를 사용하는 데 문제가 발생하거나 추가 업데이트 단계를 수행해야 할 수 있습니다. 애플리케이션 업데이트에 대한 중요 고려 사항의 "스키마 업데이트 고려 사항" 섹션을 참조하세요.

  2. \Program Files (x86)\Microsoft BizTalk Server <VERSION>\XSD_Schema\EDI로 이동하고 MicrosoftEdiXSDTemplates.exe 두 번 클릭합니다.

  3. \Program Files (x86)\Microsoft BizTalk Server VERSION>\XSD_Schema<\EDI로 스키마를 추출합니다. 스키마를 추출하면 EANCOM, EDIFACT, HIPAA 및 X12 폴더에 저장됩니다.

BizTalk Server EDI 응용 프로그램에 참조 추가

EDI 스키마, 파이프라인 및 오케스트레이션은 BizTalk EDI 애플리케이션에 배포됩니다. 다른 애플리케이션을 EDI 애플리케이션으로 사용하려면 BizTalk EDI 애플리케이션에 대한 참조를 추가합니다. 단계:

  1. BizTalk Server 관리 콘솔에서 애플리케이션을 확장합니다. EDI에 사용할 애플리케이션(예: BizTalk 애플리케이션 1)을 마우스 오른쪽 단추로 클릭하고 추가를 선택한 다음 참조를 선택합니다.

  2. BizTalk EDI 애플리케이션을 선택하고 확인을 선택하여 변경 내용을 저장합니다.

다른 애플리케이션에 대한 참조를 보려면 애플리케이션을 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다. 참조를 선택합니다. 새 참조를 추가하고 기존 참조를 제거할 수도 있습니다.

참고

BizTalk EDI 응용 프로그램에 사용자 지정 아티팩트를 추가하면 안 됩니다. 이 응용 프로그램은 있는 그대로 두는 것이 가장 좋습니다.

일괄 처리 오케스트레이션 시작

파티에서 EDI 일괄 처리를 받거나 보낼 수 있도록 설정하려면 일괄 처리 오케스트레이션을 시작합니다. 이러한 오케스트레이션은 설치 마법사나 구성 마법사를 통해 시작되지 않습니다. 단계:

  1. BizTalk Server 관리 콘솔에서 BizTalk EDI 애플리케이션을 확장하고오케스트레이션을 선택합니다.

  2. 다음 오케스트레이션을 각각 마우스 오른쪽 단추로 클릭하고 시작을 선택합니다.

    • Microsoft.BizTalk.Edi.BatchSuspendOrchestration.BatchElementSuspendService(어셈블리: Microsoft.BizTalk.Edi.BatchingOrchestration.dll)

    • Microsoft.BizTalk.Edi.BatchingOrchestration.BatchingService(어셈블리: Microsoft.BizTalk.Edi.BatchingOrchestration.dll)

    • Microsoft.BizTalk.Edi.RoutingOrchestration.BatchRoutingService(어셈블리: Microsoft.BizTalk.Edi.RoutingOrchestration.dll)

참고

EDI 일괄 처리를 받거나 보내려는 경우에만 EDI 일괄 처리 오케스트레이션을 시작해야 합니다. 시스템에서 EDI 일괄 처리를 받거나 보내지 않을 때 이러한 오케스트레이션을 시작하면 시스템 성능에 영향을 줄 수 있습니다.

이전 BizTalk 버전에서 EDI 아티팩트 마이그레이션

거래 파트너가 BizTalk Server 관리되는 방식은 BizTalk Server 2010년 이상 버전에서 업데이트되었습니다. 이전 BizTalk Server 버전에서는 BizTalk Server 호스팅하는 파트너가 아닌 거래 업체에 대해서만 파티가 만들어졌습니다. BizTalk Server 2010 이상에서는 BizTalk Server 호스팅하는 파트너를 포함하여 모든 거래 파트너를 위한 파티를 만들어야 합니다. 이전 BizTalk Server 버전에서는 인코딩(X12 및 EDIFACT) 및 AS2(전송) 프로토콜 속성이 파티 수준에서 정의됩니다. BizTalk Server 2010 이상 버전에서는 이러한 속성이 규약을 통해 정의됩니다.

이전 버전에서 파티 데이터를 마이그레이션하기 위해 BizTalk Server 파티 마이그레이션 도구를 포함합니다. 다음 마이그레이션 경로를 고려해 보십시오.

BizTalk Server 버전 마이그레이션 경로
BizTalk Server 2006 R2 BizTalk Server 2009로 업그레이드합니다. 그런 다음 BizTalk Server 2013/2013 R2에 포함된 파티 마이그레이션 도구를 사용하여 BizTalk Server 2013/2013 R2로 마이그레이션합니다.

또는 BizTalk Server 2013/2013 R2에 포함된 파티 마이그레이션 도구를 사용하여 BizTalk Server 2010으로 마이그레이션합니다. 그런 다음 BizTalk Server 2013/2013 R2로 업그레이드합니다.
BizTalk Server 2009 BizTalk Server 2013/2013 R2에 포함된 파티 마이그레이션 도구를 사용하여 BizTalk Server 2013/2013 R2로 직접 마이그레이션합니다.
BizTalk Server 2010 BizTalk Server 2013/2013 R2로 업그레이드합니다.

파티 마이그레이션 도구는 \PartyMigrationTool 폴더 아래의 BizTalk Server 미디어에서 사용할 수 있습니다.

BHM(BizTalk 상태 모니터) 설치

BizTalk 상태 모니터는 MessageBox 뷰어 보고서 보기, 사용자 지정 쿼리 만들기, 종결자 작업 실행, 여러 BizTalk 환경 모니터링 등을 수행하기 위한 대시보드를 제공합니다. BizTalk 환경 담당자의 경우 이 도구를 설치하고 사용하여 BizTalk 환경의 상태를 점검하고 유지 관리하는 것이 좋습니다.

주요 링크:

BHM설치 BHM공식 블로그 다운로드

호스트 및 호스트 인스턴스 만들기

몇 가지 주요 작업을 별도의 호스트로 분리하는 것이 좋습니다. 예를 들어 추적만 수행할 별도의 호스트를 만들 수 있습니다. 메시지 수신, 메시지 전송, 오케스트레이션을 위한 각각의 호스트/호스트 인스턴스를 만듭니다.

이 영역에는 많은 권장 사항이 있습니다. 시작하기 위한 몇 가지 사항은 다음과 같습니다.

BizTalk 호스트 및 호스트 인스턴스 관리

고가용성 BizTalk 호스트 제공

모범 사례: BizTalk Server 호스트를 만들고 구성한 후 호스트

동일한 컴퓨터의 여러 호스트에서 오케스트레이션 실행

PowerShell을 사용하여 BizTalk Server 호스트, 호스트 인스턴스 및 처리기 만들기 및 구성

TechNet Wiki의 BizTalk Server 리소스