2011년 5월 25일 수요일

Saboteur Data(파괴 데이터)

* 패턴 이름 : 파괴 데이터
* 증상 : 복잡한 입력 데이터를 다루고 저장하는 프로그램에서 아무런 문제가 없던 작업을 하던 도중 프로그램이 비정상적으로 종료되고 만다.
* 원인 : 내부 데이터 중 일부가 문법적으로 혹은 의미적으로 훼손되어 있다.
* 해결책과 예방책 : 입력 데이터에 대해 가능한 한 많이, 또 가능한 한 빨리 무결성 검사를 해야 한다.
저장된 데이터가 훼손되었을 경우에 대비해 무결성을 검사하여 그 데이터를 건너 뛸수있도록 한다.
- 데이터를 읽어들인 후 가장 먼저 데이터의 무결성을 검사해본 다음, 데이터에 접근하는 방식을 사용한다.
-파싱을 통한 방어
-타입 검사를 통한 방어
- 반복을 통한 방어
어쩔수 없는 한계점
1. 검사에 사용된 데이터가 언제나 준비된 상태인것은 아니다. 또한, 언제나 실행 전에 모든
데이터에 접근 가능한 것은 아니다.
2. 모든 제약 조건들이 계산 가능한것은 아니다.
3. 계산이 가능한 제약 조건들이라 할지라도 이를 위한 필요한 자원이 프로그램의 범위를 넘어서는 것일 수도 있다.

댓글 없음:

댓글 쓰기

블록체인 개요 및 오픈소스 동향

블록체인(block chain) 블록체인은 공공 거래장부이며 가상 화폐로 거래할때 발생할때 발생할 수 있는 해킹을 막는 기술. 분산 데이터베이스의 한 형태로, 지속적으로 성장하는 데이터 기록 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가...