가이드 7

Apache Storm을 이용한 실시간 데이타 처리 #5 –Storm의 병렬/분산 처리

대충보는 Storm #5-Apache Storm 병렬 분산 처리 이해하기 조대협 (http://bcho.tistory.com) Storm에 있는 Spout과 Bolt들은 여러개의 머신에서 어떻게 나눠서 처리될까? Storm 클러스터는 여러대의 분산된 서버에서 운용되기 때문에, 당연히 Spout과 Bolt도 나눠서 처리된다 그렇다면 이런 Storm의 병렬 처리 구조는 어떻게 되는 것일까?이 글에서는 Spout과 Bolt를 병렬로 처리하는 Storm의 구조에 대해서 알아보도록 한다.Storm의 병렬 처리를 이해하기 위한 개념Storm의 병렬 처리를 이해하기 위해서는 몇가지 개념을 정리해야 한다. Node,Worker,Exectutor,Task 이 네 가지 개념을 이해해야 한다. NodeNode는 물리적인 서..

Apache Storm을 이용한 실시간 데이타 처리 #2-Storm 설치와 HelloStorm 작성하기

대충보는 Storm #2-Storm 설치와 HelloStorm 작성하기조대협(http://bcho.tistory.com) Apache Storm과 Spark앞서 데이타 스트리밍 처리에 대해서 설명했다. 스트리밍 처리에 대표적인 오픈소스 프레임웍으로는 Apache Storm과 Apache Spark이 있는데ㅔ, Spark은 최근에 나온 것으로 스트리밍 처리뿐 만 아니라 조금 더 보편적인 분산 컴퓨팅을 지원하는데, Storm의 경우 나온지도 오래되었고 무엇보다 안정성 부분에서 아직까지는 Spark보다 우위에 있기 때문에, Storm을 중심으로 설명하고자 한다HelloStormStorm의 내부 구조 개념등을 설명하기에 앞서, 일단 깔아서 코드부터 돌려보고 개념을 잡아보자 HelloStorm 구조HelloWor..

REST API의 이해와 설계-#3 API 보안

REST API의 이해와 설계 #3 API 보안 REST API 보안 API 보안에 대해서는 백번,천번을 강조해도 과함이 없다. 근래에 대부분의 서비스 시스템들은 API를 기반으로 통신을 한다.앱과 서버간의 통신 또는 자바스크립트 웹 클라이언트 와 서버간의 통신등 대부분의 통신이 이 API들을 이용해서 이루어지기 때문에, 한번 보안이 뚫려 버리면 개인 정보가 탈취되는 것 뿐만 아니라 많은 큰 문제를 야기할 수 있다. REST API 보안 관점API는 보안 포인트에 따라서 여러가지 보안 관점이 존재하는데, 크게 아래와 같이 5가지 정도로 볼 수 있다. 인증 (Authentication)인증은 누가 서비스를 사용하는지를 확인하는 절차이다.쉽게 생각하면 웹 사이트에 사용자 아이디와 비밀 번호를 넣어서, 사용자..

REST API 이해와 설계 - #2 API 설계 가이드

REST API 이해와 설계 #2 API 설계 가이드 REST API 디자인 가이드그러면 REST의 특성을 이해하고 나쁜 안티패턴을 회피해서 REST API 디자인은 어떻게 해야 할까? 짧지만 여기에 몇가지 디자인 방식에 대해서 소개 한다. REST URI는 심플하고 직관적으로 만들자REST API를 URI만 보고도, 직관적으로 이해할 수 있어야 한다 URL을 길게 만드는것 보다, 최대 2 depth 정도로 간단하게 만드는 것이 이해하기 편하다./dogs/dogs/1234URI에 리소스명은 동사보다는 명사를 사용한다.REST API는 리소스에 대해서 행동을 정의하는 형태를 사용한다. 예를 들어서POST /dogs는 /dogs라는 리소스를 생성하라는 의미로, URL은 HTTP Method에 의해 CRUD ..

REST API 디자인 가이드

REST API 디자인 가이드조대협(http://bcho.tistory.com)REST API 디자인을 보면, REST 사상에 맞춰서 제대로 디자인 (CRUD를 HTTP method에 맞춘)하기도 어렵고, URI Convention등이나 보안, 버전 관리등 고려할 사항이 많다. 이번 글에서는 REST API를 디자인에 대한 가이드를 소개하고자 한다.동사보다는 명사를 사용하자URL을 심플하고 직관적으로 만들자REST API를 URL만 보고도, 직관적으로 이해할 수 있어야 한다 URL을 길게 만드는것 보다, 최대 2 depth 정도로 간단하게 만드는 것이 이해하기 편하다./dogs /dogs/1234URL에 동사보다는 명사를 사용한다.REST API는 리소스에 대해서 행동을 정의하는 형태를 사용한다. 예를 ..

Selenium 테스트 메모

Firefox selenium IDE를 이용하여 Record 가능. 간단하게 IDE내에서 Command 추가등도 가능아래는 네이버에서 "조대협" 으로 검색하여, 검색 결과에 "조대협의 블로그" 문자열이 나오면 성공하는 테스트 케이스 작성 완료후 Export하면Java/JUnit 3,4 , Test NGRuby,Python,C# 등으로 TG Export 가능 아래는 JUnit4로 Export한 소스 코드 package com.example.tests; import com.thoughtworks.selenium.*;import org.junit.After;import org.junit.Before;import org.junit.Test;import static org.junit.Assert.*;import ..

ALM/Test Automation 2013.12.24

What is SOA? How to SOA?

컴퓨터 시스템이 사용되면서부터, 각 시대의 기업 전략에 맞는 소프트웨어 아키텍쳐 존재하여 왔다. 초기 시대의 메인프레임에서는 기업의 업무를 전산화 하는데 목적이 맞춰졌고, 소프트웨어는 구조적 프로그래밍 (Structured Programming)으로 개발되었다. 그 후 개인 PC가 도입되면서 클라이언트 서버 시대 아키텍쳐가 도입되었고, 근래의 인터넷과 e비지니스 시대에서는EJB나 COM을 기반으로하는 컴포넌트 기반의 개발이 중심이 되었다. 그리고 지금의 IT 시스템들은 비즈니스의 급격한 변화를 수용할 수 있는 민첩성이 요구 되게 되었고, 이 요구를 충족시키기 위한 아키텍쳐가 서비스 지향 아키텍쳐 SOA 이다. 이번 강좌에서는 SOA가 무엇이고 어떻게 SOA를 진행할지에 대해서 간략히 살펴보도록 한다. 1..

아키텍쳐 /SOA 2007.09.04