아무런 지식이 없이 無에서 시작해하기
json으로 응답하는 API 서버를 thrift로 응답하기로 결정
nginx + thrift + spring 을 개발하기로..... 삽질기
소개
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
=> facebook에서 만들었고 지금은 apache 프로젝트
mobile APP + API 서버 사이에 많이 사용한다.
설치
Download
http://thrift.apache.org/download/
throft 0.9.1 다운
Build and Install
http://thrift.apache.org/docs/install/
개발하는 서버는 ubuntu (http://thrift.apache.org/docs/install/ubuntu/)
일단은 관련 패키지들은 설치했고 java, c만 쓸 예정이라 관련 패키지들은 필요한거만 설치
설치는 이거보고.. http://thrift.apache.org/docs/BuildingFromSource/
그대로하면 역시나 오류난다.
./configure --help 참고하여 필요한 라이브러리만 추가하고 재빌드
./configure --with-ruby=no ......(help 참고)
.thrift file
회원 관련 API를 작성해본다.
tutorial : http://thrift.apache.org/tutorial/java/
예제 : https://git-wip-us.apache.org/repos/asf?p=thrift.git;a=blob_plain;f=tutorial/tutorial.thrift
shared.thrift
namespace c_glib shared
namespace shared
service SharedService {
void ping()
}
Account.thrift
namespace java account
namespace c_glib Account
service AccountThrift extends shared.SharedService{
void register(1:string:userName, 2:string:password)
}
자바 예제 코드로 해봤는데 문제 없이 호출된다.
Handler는 같은 패키지 안에 작성해야 하는구나.
일단 여기까지 끊고 servlet으로 서비스 하는건 나중에...
참고
http://thrift.apache.org/
http://tech.naver.jp/blog/?p=1420
http://thrift4eclipse.sourceforge.net/en/index.html
'dev > thrift' 카테고리의 다른 글
TServlet + spring 을 사용한 thrift 서버구현 (0) | 2014.01.09 |
---|