C#.NET Q&A

DB의 특정 테이블에 지속적으로 값이 있는지 확인할때 타이머기능이 최선일까요? 발..남았다. 평점: 없음 조회: 98
여기에 이 질문을 해도 되는지 모르겠네요..ㅠ아직 모든게 초보라 일단 C#이기에 질문 올려요~~
Infrastics 기능 중에 Desktop Alert 기능을 사용하고 하는데요.

팝업 기능을 사용해서 알림 기능을 개발하려고 합니다.
특정 테이블에 값이 있을때, 해당 PC에 팝업 알림을 주려고 하는데,
테이블에 언제 값이 들어올지 알 수 없어서 지속적으로 커넥션을 해서 값의 유무를 알려고 하는데요..

타이머 기능을 사용해서 프로그램이 실행되면 계속해서 디비 커넥션하고 테이블 값 유무를 판단하는게 나을까요?
아니라면 다른 방법이 있을까요???

혹시 비슷한 개발하신 분 있으시다면 도움 부탁 드립니다.ㅠㅠ

태그 : 알림 접속 테이블 팝업 DB
작성자 정보
발..남았다.
Level 16
 [EXP.69/70]

메일:  비공개
글등록 +12 192 덧글등록 +3 99
자기소개
C# 개발하고 있는 사원입니다.
글 공유하기 |
  tweet facebook
2018-02-06 오후 2:06:09
나도한마디
사용자
행숨            [2018-02-06]
Level 17
 [EXP.47/70]
타이머로 하시면 됩니다. 다만 실행할 간격 조정이 중요하지요.
OS도 사용자가 언제 입력장치를 통해서 명령을 내려줄지 알 수 없는 상태이기에 항상 체크를 하지요?
마찬가지 맥락입니다.
Client에서 항상 Sever에 물어봐서 체크를 해야됩니다.
실시간에 가깝게 체크를 하시는거면 반복실행하시는 부분을 줄이시면 되고
일정간격으로 체크를 하시는거면 문제가 안되는 선에서 반복실행하시면됩니다.
사용자
행숨            [2018-02-06]
Level 17
 [EXP.47/70]
아니면 별도의 쓰레드를 만들어서 무한루프돌리는 방법도 있지요.
사용자
발..남았다.            [2018-02-06]
Level 16
 [EXP.69/70]
답변 감사합니다 행숨님!
타이머를 사용하면서 혹여나 걱정했던게 지속적인 커넥션으로 인해 부하가 많이 걸리지 않을까 했었는데, 일정 주기를 두고 해보는건 괜찮군요!!
10~15초 주기로 테이블을 조회할까 생각을 하고 있거든요!
감사합니다 많은 도움되었습니다~!
사용자
몬난아            [2018-02-06]
Level 71
 [EXP.67/250]
얼마나 많은 사용자 인지가 중요한데, 만약에 10초에 한번씩 db를 가서 데이터가 변경내역을 확인했고
10만명이 변경된걸 알림을 보내고 알림종료이후 10초이후에 다시 변경내역보고
이런식이면 크게 문제 되지 않습니다.

쿼리가 얼마나 무거우냐가 관건인데 쿼리가 가벼우면 별 문제 되지 않습니다.

잘기억은 안나는데 .NET2.0 부터 sqlserver를 사용중이라면 테이블 정보가 변경되면 노티를 받을수 있는 라이브러리가 생겼던것으로 기억하는데 찾질못하겠내요
사용자
몬난아            [2018-02-06]
Level 71
 [EXP.67/250]
https://docs.microsoft.com/ko-kr/dotnet/framework/data/adonet/sql/query-notifications-in-sql-server

이거인것 같기도 하군요
사용자
발..남았다.            [2018-02-06]
Level 16
 [EXP.69/70]
참고로 올려주신 사이트 잘 참고해보겠습니다! 감사합니다 덕분에 많은 것이 해결되었습니다 Good~
사용자
발..남았다.            [2018-02-06]
Level 16
 [EXP.69/70]
감사합니다 몬난아님!
이전에도 도움을 받았던것 같은데, 또 한번 도와주시는군요! 감사합니다!
제 생각에도 10~15초 사이의 주기로 테이블 조회를 할까 생각하고 있었는데, 덕분에 의문과 걱정이 사라졌습니다! 쿼리는 단순히 테이블에 있는 값을 조회(단순 select)로 컬럼 값만 가지고 와서 팝업으로 뿌려주는 것뿐이라 괜찮을것 같네요!
감사합니다 많은 도움되었습니다!~
태그로 엮인글
[C#.NET Q&A] 서버, 클라이언트 소켓통신 구현해서 각 클라이언트에 팝업 알림을 주려고하는데, 아이디어 차원에서 문의드립니다![1]  발..남았다.
[C#.NET Q&A] 디비 테이블이 존재하는지 확인하려면 어떻게하면될까요?[3]+2  엿장수
[C#.NET Q&A] c# 데이터그리드뷰 클리어 및 리로드 방법.  악어
[C#.NET Q&A] DB검색쿼리 질문[1]+1  악어
[C#.NET Q&A] c# 데이터그리드뷰 및 DB연동관련 질문있습니다.[2]+1  악어
[C#.NET Q&A] C# with mysql connection 문의[2]+3  필승불패
[C#.NET Q&A] 데이터베이스 테이블 구조  아이프리드
[C#.NET Q&A] 다른 PC의 로컬 DB에 접속할수 있을까요?[2]  은빛늑대
[C#.NET Q&A] access 에서 이미지 가져오기 
[C#.NET Q&A] WCF wsDualHttpBinding 활용 문의드려요  능능능능
글리스트
DB저장시 중복검사 관련...  오롱통통
중복된 문자열을 인식하는 방법...[1]+1  발강이
text에서 원하는 값 가져오기[3]+1  saki
C#에서 다이렉트X 버전을 가져올 수 있는 방법이 있나요?[1]+1  LeeMalone
메모장 열기좀 알려주세요[3]+1  베베아트릭
Tcpclient로 주기적으로 연결해서 데이터를 가져오는데  fame
설정에서 디스플레이 텍스트,크기 변경  민성
서버, 클라이언트 소켓통신 구현해서 각 클라이언트에 팝업 알림을 주려고하는데, 아이디어 차원에서 문의드립니다![1]  발..남았다.
NFC를 이용해 받은 값 중복방지방법[2]+2  발강이
insert 문에서 자동증가항목값을 구하려면 어떻게해야될까요?  엿장수
 ★현재글->   DB의 특정 테이블에 지속적으로 값이 있는지 확인할때 타이머기능이 최선일까요?[2]+5  발..남았다.
윈폼으로 우리 사이트를 신뢰성있는 사이트로 등록하고 팝업차단해제를 하고싶은데요  민성
디비 테이블이 존재하는지 확인하려면 어떻게하면될까요?[3]+2  엿장수
소켓 이미지 전송 질문드립니다.  제스
[문의].Net Framework 4.x 이상에서 DebugView 4.81 사용 방법  inhi5869
OCX 관련[2]  joon
컴퓨터의 사운드카드종류, 헤드셋종류,웹캠종류를 가져오고 싶습니다.[2]  민성
string 은 숫자인지 확인하는 메소드 없나요?[3]  엿장수
c# exe형태로 웹과의 연동[2]+1  민성
C# 타 프로그램을 관리자 권한으로 실행시키는 프로그램 관련 질문 있습니다.[3]+1  박민첩
c++ 로 만들어진 프로그램을 c# 프로그램으로 변환할 수 있나요?  절대반지