본문 바로가기

아키텍처 종류 몇가지 정리해보기 들어가기 아키텍처 종류에 대해서 정리해보았는데 아키텍처만 정리하지 않고 아키텍처를 다루면서 같이 언급되는 대상까지 간단하게 정리했다. 개인적으로 한번 정리하고 싶었고 공유하면 괜찮을 듯해서 정리해보았다. 작성자: http://ospace.tistory.com/ (ospace114@empal.com) 모노리스(Monolith) 모노리스는 아키텍처라고는 할 수 없다. 전체 애플리케이션을 한 덩어리인 결과물이라고 할 수 있다. 즉, 배포할 때에 결과물도 하나인 경우를 말한다. 과거에 대부분의 애플리케이션이 모노리스 형식으로 많이 배포되었다. 성능 상에 이슈에는 여러 모노리스 애플리케이션을 배치해 수평확장하는 구조로 되어 있다. 모노리스라고 해서 아키텍처가 무시되지는 않는다. 내부적인 아키텍처는 다양한 형태로 .. 더보기
OpenPGP에서 인증 방식 최근 Beautiful Code을 보다가 보안통신을 보았다. 여기서 주요 내용은 perl을 이용해서 쉬우면서고 강력한 보안 메일 시스템을 만들었다는 것이다. perl 기반으로 암호화된 메일 구현하시는 분의 여기서 소개되는 메일관련 모듈을 참고하면 도움이 될 듯 하다. 그러나 나의 관심을 끈 것은 암호화에 사용되는 키 관리 및 인증 방식이다. 바로 PGP였다. 여러 명이 동시에 사용되고, 원격에서 이런 키 관리가 쉽지 않은 문제이다. 그렇기 때문에 더 관심을 가지게 되었다. 그러다가 OpenPGP에 대해서 알게 되었다. 그래서 여기에서는 OpenPGP에서 사용하는 키관리 및 인증 방식에 대해서 알아보려고 한다. 작성자: Ospace (ospace114 at empal.com) http://ospace.ti.. 더보기
디스패치 dispatch, 디스패칭 dispatching 디스패치 Dispatch, dispatching 둘 다 같은 의미로 쓰인다. 우리 말로는 "배정"이라 한다. dispatch의 사전적 의미로는 '빨리 처리하다. 죽이다. 급파, 급송문서 등' 컴퓨터에서 쓰이는 뜻은 다음과 같다. 컴퓨터에 CPU는 보통 1개이다. 당연히 처리을 하기 위해서는 작업을 CPU에 올려놔야 한다. 실제 환경에서는 처리해야할 작업이 무수히 많고, 동시에 처리해야 될 경우도 많다. 그러나 일하는 작업꾼인 CPU은 하나이기 때문에 필요에 따라 작업을 가져와서 하나씩 처리해야 한다. 바로 작업 처리위해 작업꾼에게 가져오는 것을 디스패치이다. 보통 이런 작업 단위를 "프로세스"라고 한다. 디스패치는 CPU에서만 쓰이는 것이 아니라 여러 부분에서 사용된다. 개념적으로 다음과 .. 더보기
윈도우 메모리 구조 아래 내용은 http://furyheimdall.tistory.com/34에 있는 내용을 그대로 가져왔습니다. 물리적 메모리 논리적 메모리 프로그램이 생성할 때부터 종료할 때까지 메모리에 상주하는 부분 main() 함수와 함수코드(Function) 전역변수(Global Variable) 정적변수(Static Variable) 프로그램 실행 도중에 생성 및 소멸되는 부분 지역변수(Local Variable) 매개변수(Parameter) Heap 메모리에 생성된 데이터 함수 또는 클래스 스택 영역(Stack) 지역변수, 매개변수와 같이 쓰고 지우는 일이 빈번한 데이터는 스택영역을 사용한다. 스레드 당 1개씩 생성되며, 기본 크기는 1MB이다. 용량이 작아서 이 용량을 초과할 경우 Stack Overflow라.. 더보기
16F84A 메모리 구조 16F84A 메모리 구조도 이다. 이전 다른 곳에서 가져왔는데 정확한 출처는 기억이... 저작자 분에게 죄송합니다.. 문제가 된다면 없에겠습니다. 더보기
통신 프로토콜 스팩 들어가기 여기서 말하는 프로토콜 스팩은 통신용 프로토콜을 말한다. 여기서는 단순히 뭐가 필요한지만 다룬다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 종류 통신에서 사용하는 프로토콜 포멧을 대표적인 형태로 사용된다. 바이너리 구조 Text형태의 Byte 구조 Tagged-Value 구조 XML 구조 1번이 가장 속도가 빠르지만 확장성이 떨어지며, 4번은 확장성은 좋지만 성능이 좋지 않다. 이외에 API Set형태로도 제공된다. 이런 경우는 벤더 종속적으로 특정 환경을 제공하는 목적이다. API로 제공한다면, 하부 프로토콜 스팩에 대해서 개발자가 신경쓸필요가 없으면, 필요에 따라서 다른 프로토콜을 교체할 수 있는 장점이 있다. API형태로 제공되는 경우 .. 더보기
코딩 스타일 파스칼, 카멜, 헝가리안, Underscore 작성:http://ospace.tistory.com/(ospace114@empal.com) 2008.12.19 명명 규칙은 일정한 형식의 코드 표기 방법이다. 물론 여러가지 정의가 있을 수 있지만, 인간이 쉽게 인지하고 읽을 수 있는 형식으로 표기하기 위한 것이다. 일단 적어도 난 이렇게 본다. 일정한 코딩 스타일을 작성하면 나중에 읽기가 쉬워지고, 읽기가 쉬워지면 수정도 쉬워진다. 즉, 유지보수가 쉬워진다는 의미이다. 그렇다고 누워서 떡먹기는 아니다. 먼저 대표적인 코딩 스타일을 살펴보고, 이런 규칙을 적용하기 위한 세부적인 프로그래밍 항목을 살펴보겠다. 코딩 스타일 파스칼(Pascal) 단어와 단어를 공배없이 연결하고 각 단어의 첫 글자를 대문자로 표시한.. 더보기
동영상 화질 이야기 동영상 화질 이야기 작성자: Ospace (ospace114@empal.com) DVD 화질 일반 DVD는 SD급이다. SD급 화질은 720x480이다. HD DVD는 HD급으로 1620x1080이다. 일반 PC에서 보는 보편적인 화질은 640x480이다. 때에 따라서 DVD 해상도 비율을 유지하기 위해서 720x400으로 하는 경우도 있다. 사용자에 따라서 취향이 틀리기 때문에 적당하다 싶으면 아무거나 쓰면 된다. ^^; 그냥 둘 중에 하나로 하자. 화면비율은 720x480인 경우는 16:9이고 640x480은 4:3이다. 후자로 하는 경우 화면비율을 16:9로 했을 때에 나머지 빈 공간은 검은색으로 채우거나 원하는 내용으로 채우면 된다. ^^; 다음으로 비트레이트인데 위의 두가지 해상도를 그냥 같이 .. 더보기

반응형