TCP 서버, 각종 통신 중계, 데이터 컨트롤, SQL 데이터 중계. 각종 디버깅, 공유 메모리관리, 중간 통계 데이터생성
서버소프트웨어는 다중 클라이언트를 관리하고 Chart 데이터를 발송하는 메인 Program입니다.
Server는 다음의 기능을 모두 수행하도록 개발 하였습니다.
1. Process Type
서버 프로그램은 서비스가 아닌 화면이 있는 프로그램으로 개발 합니다.
화면을 통해 각종 제어를 할수 있는 Multi Thread형 화면 UI Program입니다.
서버이며, Socket을 대기해야 하므로 프로그램에서 사용하는 모든 포트를 사용하기위해
프로그램 자체를 Firewall에서 Exception하는 기능을 포함하여 개발 합니다.
Client Socket에 대한 기본 기능을 제공 합니다.
Socket Server는 다음과 같은 기능을 수행해야 합니다.
- Client 접속 관리.
- 접속 거부 관리.
- 접속 Client의 PC 정보등 상세한 접속 기록.
- 비정상적인 소켓 관리 (Keep-Alive Check 이용)
- 전체 Client 연결 해지 통보 (업그래이드시는 자동 공지)
- 특정 사유에 의한 모든 연결 Blocking 기능. (이미 연결되어 있는 Client도 모두 연결해지)
- Real Time 공지 기능. (접속된 모든 사용자에게 Program 상에서 메시지 발송)
모든 Client에게 동일한 차트가 보일수 있도록 차트 설정을 서버에서 관리 합니다.
Chart Config는 파일로 저장 및 환원되어 관리 합니다.
아이콘을 클릭하면 프로그램을 구동합니다.
시작 폴더에는 다음과 같이 폴더를 구성합니다.
시작 > GachonUniv™> Solution> DERChart Server v1.0.0
서버는 Tray 기능을 지원합니다. 로딩 시나 시스템의 중요한 메시지는 Tray Popup 메세지로
화면이 Tray로 내려져 있어도 표시되도록 합니다.
서버가 구동되거나 화면을 표시할때 Wizard에서 입력한 암호를 확인한후 진행됩니다.
암호가 틀리면 각 경우에 맞추어 진행됩니다.
(1) 서버 프로그램 실행시: 암호가 틀리면 프로그램 구동이 취소됩니다.
(2) Tray -> 화면 보일 때: 암호가 틀리면 Tray에서 나오지 않습니다.
(3) 서버 프로그램 종료시: 암호가 틀리면 프로그램이 종료되지 않습니다.
입력된 암호를 변경합니다.
서버가 구동 되면 서버 메뉴 표시전에 화면에 디자인된 배경 화면을 표시 합니다.
서버의 메인 화면에 대한 구성안
서버의 설정을 하는 화면이며, 서버 시작과 무관한 항목을 실시간으로 바꿀 수 있도록 합니다.
서버를 구동하는 화면
연결 검사를 클릭하면 입력한 정보로 DB에 접속되는지 미리 검사해 볼 수 있습니다.
서버에 접속한 현재 사용자를 조회 합니다.
접속자의 목록을 표시합니다.
-[접속자 더클릭시 화면
서버에 접속한 사용자의 기록을 조회 합니다. 실패한 정보도 표시됩니다.
-[접속 결과]
- 성공 :로그인 성공,
- Ban : Ban User 로그인 시도.
- ID 오류 : ID가 틀린 시도,
- PW 오류 : PW이 틀린 시도.
서버의 CPU와 네트워크 사용량을 표시합니다.
클라이언트와 통신한 내용을 조회 합니다.
서버의 사용되는 정보에 대한 통계를 제공합니다. (개수등의 통계)
해당 내용은 서버에서 차트 검사에 사용된 SQL 디버깅 정보입니다.
ID 또는 IP를 등록하여 서버에 접속 못하게 할 접속 거부자를 관리 합니다.
* 해당 관리메뉴는 클라이언트 프로그램에서도 동일하게 제공됩니다.
버전별 Release 일자와 Release된 내용을 조회 합니다.
- 남은 작업 목록 보기는 개발 완료 시점까지만 보입니다.
프로그램 업그레이드를 진행 합니다.
예를 누르면 진행 상태가 표시되면 완료되면 새로운 프로그램이 구동됩니다.
각 언어별 (한국어/영어)로 4개 가젯을 제공합니다.
프로그램 About 화면을 표시합니다.
차트 Client 툴입니다.
1. 기본 정보
Client 는 다음의 기능을 모두 수행 합니다.
- 클라이언트는 서버에 접속하면 프로그램의 메인 기능이 수행됩니다.
- 동시성 문제가 발생되지 않도록 차트를 관리하는 클라이언트는 동시에 한 클라이언트로 제한 됩니다.
- 속도를 위해 차트 갱신 데이터는 클라이언트가 요청하는 것이 아니라 서버가 검사후
모든 클라이언트에게 동시에 결과를 통보 합니다.
1. 프로그램 실행
바탕화면에서 클라이언트 프로그램 아이콘을 실행 합니다.
초기 1회 설치시 시스템에 필요한 데이터를 압축 해제 하여, 프로그램 구동을 준비 합니다.
클라이언트가 로딩되는 동안 화면에 Splash 화면이 표시되며, 로딩 상태에 대한 메시지가
화면중간에 표시됩니다
클라이언트가 로딩되면 뭔가를 클릭하기전까진 시작 화면이 표시되어 있습니다.
해당 상태에서도 차트 데이터를 계속 수신되고 있습니다.
메인 메뉴에서 차트 조회를 클릭하면 메인 영역에 스크롤 가능하게 표시 됩니다.
조회 방식은 우측 위에 ComboBox를 선택하여 조절 할 수 있습니다.
(1) 열 방식 : 1~5열
(2) 탭 방식 : 탭으로 표시 합니다.
-[열 방식 - 1열]
-[열 방식 - 2열]
-[탭 방식]
옵션 보기를 체크하면 우측에 설정 가능한 옵션이 표시 됩니다. 해당 옵션은 클라이언트의 옵션이며
전체 차트 설정에는 아무런 영향을 주지 않습니다.
새창 조회를 클릭하면 해당 차트를 새창으로 크게 조회 합니다.
차트 조회의 Drop Down Item을 클릭하면 기록 차트를 조회 할수 있습니다.
기존 데이터를 조회 할수 있는 창이 구동 됩니다.
위의 기간 설정으로 통계하여 그래프를 표시 합니다.
옵션등을 변경한 상태를 원래대로 초기화 합니다.
인쇄에 필요한 설정을 수행 합니다.
인쇄할 정보를 미리보기 합니다.
* 미리보기에서도 프린트 버튼을 클릭하여 바로 인쇄 할 수 있습니다.
그래프를 실제 인쇄 합니다.
그래프의 이미지를 저장 합니다.
확장되는 형식은 JPG/GPEG/TIF/BMP/GIF/PNG/WMF가 가능 합니다.
그래프의 원본 데이터를 파일로 저장 합니다.
확장되는 형식은 다음 2가지가 가능 합니다.
(1) csv : 엑셀로 내보냅니다.
(2) html : HTML로 내보냅니다.
차트 설정 관리 메뉴를 클릭 합니다.
* 차트 설정
다른 사람이 이미 차트를 관리 중이면, 관리중이라는 메시지가 표시되며 다른곳에서 관리를 완료하면
진입할 수 있습니다.
닫기시에 변경된 내용이 있으면 서버로 통보되며, 서버에 연결된 모든 클라이언트도 바로 설정을 적용 합니다.
* 각 차트 설정
* 차트샘플
설정된 내용으로 차트를 샘플 합니다.
프로그램 폴더 보기: 프로그램이 실행중인 폴더 (온/오프라인 설치시 다를수 있음)
데이터 폴더 보기: c:\회사명\프로그램이름\Client\
해당 환경설정은 프로그램의 전체 클라이언트(오프라인)별 설정을 모아두는곳입니다.
Login 옵션
- 아이디 저장 여부 설정
- 암호 저장 여부 설정
- 자동 로그인 설정
- 연결 해지시 자동 재연결 설정
Keep Alive는 PC/네트워크 비정상 종료시 연결이 유지되는것으로 인식되는 TCP/IP 문제점을 해결하기 위해
주기적으로 네트워크로 패킷을 주고 받아 상대방이 실제 응답하는지 확인하는 과정입니다.
-Keep Alive 사용 여부
- 검사 주기 : Keep Alive 과정을 수행할 주기
- 제한 시간 : 1회 응답에 대한 응답 제한 시간
- 재시도 수 : 1회 응답이 없는경우 최대 재시도수
통신 데이터의 한 개 단위가 되는 Pakcet의 옵션을 설정 합니다.
- 사용여부
- 최대 로그 용량 : 해당 용량이 넘으면 자동으로 오래된 자료부터 정리 됩니다.
* 로그 자료는 파일->로그조회기를 통해 조회 할 수 있습니다.
로그파일을 열어 조회 할 수 있습니다.
계정 관리에 기본적으로 사용될 직급을 관리 합니다.
표시상의 데이터 관리이며, 실제로 직급별로는 구분되는 기능은 없습니다.
(계정은 Level 별로 권한을 구분 할 수 있습니다)
시스템에 로그인 할 수 있는 계정을 관리 합니다.
설치 관리자는 서버의 Wizard에서 입력 관리되는 정보 이며, 클라이언트에서는 수정/삭제 할 수 있습니다.
1. SetupManager : 모든 권한
2. 최고 관리자 : 모든 권한
3. 관리자 : 메뉴 권한 버튼을 클릭하여 사용 가능한 메뉴를 할당하며, 해당 메뉴만 사용 가능 합니다.
- 메인 숨기기를 체크하면 해당 사용자는 메인 화면을 조회하지 못합니다.
원하는 메뉴의 체크박스를 체크하면 해당 메뉴를 사용 가능하도록 설정 합니다.
시스템에 로그인 할 수 있는 계정의 로그인 거부를 관리 합니다.
- 이곳에 등록된 ID가 시스템에 접속하려고 하는경우 접속 거부 메시지를 표시하고 접속을 막습니다.
- 시스템 입장에서는 관리자 계정 자체를 삭제 하는것보다 계정을 유지하고 로그인을 막는 것이 데이터 유지에 바람직 합니다.
- 아이디 / 메시지를 입력하고 저장을 클릭하면 접속 거부자 계정이 등록 됩니다.
시스템에 접속한 사용자의 성공/실패 별로 기록을 조회 합니다.
-[성공 기록 조회]
-[실패 기록 조회]
종류별로 실패한 정보를 조회 합니다.
초기 배경 화면을 다시 표시 합니다.
클릭시 지정된 크기로 창 크기가 바로 변경됩니다.
창을 원래 시스템에서 제공한 크기로 변경 합니다.
현재 열려 있는 모든 창을 닫습니다.
해당 매뉴얼을 표시 합니다.
프로그램 사용자에게 Tip을 제공합니다.
버전별 Release 일자와 Release된 내용을 조회 합니다.
- 남은 작업 목록 보기는 개발 완료 시점까지만 보입니다.
프로그램 업그래이드를 진행 합니다.
예를 누르면 진행 상태가 표시되면 완료되면 새로운 프로그램이 구동됩니다.
프로그램 Splash 화면을 표시합니다. 클릭하면 창이 닫힙니다.
각 언어별 (한국어/영어)로 4개 가젯을 제공합니다.
특정 단어로 메뉴를 검색 합니다.
검색한 결과 화면입니다.
시스템의 전체 메뉴를 조회하고 실행 할 수 있습니다.
클라이언트의 모든 자료를 지우고 프로그램을 새로 초기화하여 설치후 초기 상태로 복귀 합니다.
프로그램 로딩에 보였던 Splash가 표시 되고, 클릭하면 사라 집니다.
프로그램 About 화면을 표시합니다.