2009-02-27 4 views
2

백그라운드에서 실행되고 내 데이터베이스로 이동하여 특정 로직을 기반으로 특정 행을 검색하고 업데이트해야하는 것이 필요합니다. 매시간처럼 실행하려면이 환경이 필요합니다. 내 환경은 Windows Server 2003, SqlServer 2005입니다.Windows 서비스 대 Windows Workflow Foundation?

WWF는 이러한 용도로 적합합니까? 아니면 Windows 서비스를 만들어야합니까? 그리고 WWF와 Windows Service의 차이는 무엇입니까? 아니면 단순히이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

감사합니다. 레이.

답변

2

나는 당신이라면 Windows 서비스를 사용합니다. 나는 WF에서 많은 작업을 해왔으며 WF에서 그렇게하지 않는다고 말하는 주된 이유는 MS가 10 월에 PDC에서 말한 내용에 따라 기본적으로 WF의 다음 버전을 완전히 다시 작성한다는 것입니다. 4.0에서 레거시 3.0/3.5 활동을 실행하려고했지만 내 인상은 큰 변화가있을 것이라는 것이 었습니다.

또한 WF에서 제공하는 모듈 식 활동 기능이 필요하지 않은 것처럼 들립니다. WF는 사용자가 필요로하지 않는 것처럼 들리는 추상화 계층을 추가 할 예정이며 사용자가 만든 워크 플로를 실행하기 위해 Windows 서비스를 작성해야합니다. WF는 비즈니스 인력이 끊임없이 변화하는 논리를 필요로하고 생성하고자하는 프로세스의 관리에 큰 투자를하기를 원할 경우 좋은 선택이 될 것입니다.

또한 데이터베이스에 직접 액세스 할 수 없다면 SQL Server에 SSIS 패키지를 만드는 것이 좋습니다.

3

워크 플로우가 아닌 Windows 서비스를 사용한다고 말하고 싶습니다. 워크 플로우를 사용하는 것은 관련된 프로세스가있을 때를위한 것입니다. 테이블의 레코드를 업데이트하는 중일 때 나는 서비스가 무엇이든간에 좋은 것이라고 말할 수 있습니다.

실제로 질문을 읽었으므로 이제 SQL Server 작업을 고려해야 할 것입니다. 원하는 간격으로 실행되도록 예약 할 수 있습니다.

Windows 서비스는 Windows의 백그라운드에서 실행되는 장기 실행 프로세스입니다. Windows Workflow Foundation 워크 플로는 비즈니스 프로세스 (또는 무언가)의 워크 플로를 레이아웃하는 데 사용됩니다. 무언가 (Console App, ASP.Net, Windows Service 등) 내에서 워크 플로우 런타임을 호스팅해야합니다.

+0

답변 해 주셔서 감사합니다. 나는 서버에서 ASP.NET 응용 프로그램을 실행합니다. 테이블을 스캔하기 위해서는 백그라운드 프로세스가 필요합니다. –

+0

예, SQL Server 작업을 제안합니다. 예약 된 간격으로 쿼리를 실행하면 작업을 수행 할 수 있습니다. – cbeuker

0

Windows 서비스는 과거 나를 위해 작동 했었습니다. 워크 플로의 기본 기능은 스케줄링이 아니며 Windows 서비스 인프라에이 모든 것이 포함되어 있고 잘 문서화되어있을 때 호스트를 제공해야합니다.

관련 문제