2011-11-16 4 views
1

.NET에서 새로운 레코드를 찾기 위해 db 테이블을 폴링하는 Windows 서비스를 만들어야합니다. 새로운 기록이 있다면 그것은 약간의 처리를해야합니다. 타이머로 쉽게 할 수 있다는 것을 알고 있습니다.이 시나리오를 처리하는 더 좋은 방법이 있습니까?데이터베이스 폴링을위한 Windows 서비스 만들기

+0

귀하의 DB에 따라 다릅니다 - 일부 DB는 예를 들어 새 레코드에 대한 알림을 제공합니다 ... – Yahia

+0

SQL Server 2008 – VJAI

+0

에 알림 기능이 있으므로이 푸시 기반을 폴링하거나 구현할지 여부를 선택할 수 있습니다. .. – Yahia

답변

0

SQl 서버를 사용하는 경우 Notification Services를 사용할 수 있습니다. 표시되는 쿼리를 작성하여 일부 데이터를 검색하고 데이터가 변경되면 이벤트가 애플리케이션으로 전송됩니다.

따라서 데이터베이스를 지속적으로 폴링하는 대신 푸시 기반 솔루션을 사용하게됩니다.

은 여기에서 찾을 수있는 몇 가지 documentation

내가 어떤 외부 시스템 사이에 정기적으로 동기화를 할 것입니다 그 자신을 서비스 윈도우의 디자인에서 일하고 있어요

[편집]. 그것은 일정한 시간 간격으로 하루에 한 번 발생합니다. 개별 변경 사항에 대한 알림을받을 필요가 없으므로 현재 알림 서비스를 사용할 계획이 아닙니다. 그러나 어떤 경우에 업데이트가 발생할 수 있고 즉시 작업해야하는 경우에는 밀어 넣기 방식이 더 좋다고 생각합니다.

+0

고마워요. 타이머 기반 폴링과 언제 알림 기능을 사용해야하는지에 대한 몇 가지 지침이 있으면 좋을 것입니다. DB를 적게 자주 방문한다면 어떤 것이 좋은 선택일까요? – VJAI

+0

은 SQL Server 2008에서이 작업을 수행합니까? – VJAI

+0

예. 그들은 SQL Server 2005에서 어디에 소개되었습니다. –

관련 문제