(Architectural pattern)은 웹로그와 같은 텍스트 기반의 데이터 또는 프로그램 소스 코드 등과 같은 데이터 스트림을 처리하는데 적합합니다.

각각의 프로세스는 필터 컴포넌트 내에서 처리되며, 데이터는 파이프를 통해 전달되어 처리되어집니다. 이러한 파이프는 버퍼링을 하거나 동기화 하는 목적으로 사용됩니다.

Pipe-filter pattern은 컴파일러와 같이 통해 연속되는 필터링 기법을 통한 분석을 하는 아키텍쳐에 주로 이용

, 소프트웨어가 (Architectural pattern)기반이라고 할 수 있습니다.

(Architectural pattern)은 다음과 같은 장점이 있습니다.

  • 필터 추가가 쉬움
  • 시스템 확장성이 좋음
  • 필터 재사용 가능
  • 주어진 필터들을 재구성하여 또 다른 파이프라인을 구축할 수 있음

반면에 단점이라 하면, 특정 필터 연산의 성능이 전체 효율에 영향을 미칠 수 있다는 것입니다.



facebook posting twit

  • Blackboard pattern은 오늘날 NLU(Natural Language Understanding)이나 차량인식 등에 응용되는 아키텍쳐
  • MVC(Model-view-controller) pattern은 Django, Rails와 같은 웹 어플리케이션 개발에 주로 응용되는 아키텍쳐
  • Event-bus pattern은 Push Notification Service, 안드로이드 앱 개발에 주로 응용되는 아키텍쳐
  • Peer-to-peer pattern은 BitTorrent와 같이 파일공유 솔루션이나 P2PTV, PDTP와 같은 멀티미디어 프로토콜에 주로 이용
  • Broker pattern은 Apache ActiveMQ, Apache Kafka, RabbitMQ 등 메시지 미들웨어 같은 아키텍쳐에 주로 이용
  • Master-slave pattern은 장애 대응을 위한 Database 복제 등 병렬처리 및 Disaster Recovery 대응 로직에 주로 이용
  • Client-server pattern은 TCP/IP를 통해 데이터를 주고 받는 이메일, 웹하드 등이 주로 이용하는 아키텍쳐
  • Layered pattern은 PC App, 쇼핑몰(이커머스) 웹사이트 등이 주로 쓰는 아키텍쳐 패턴
  • Machine Learning Tool의 종류와 용도
  • 자연어처리(NLU)를 하기 위한 소프트웨어 아키텍쳐 – 걸음마단계부터 인간 수준으로 진화하는 방향에 대해 알아본다
  • Leave a Reply