Google: 4개의 글
이미 google에서 만들어서 deep learning하는 플랫폼중에 가장 유명하다고 할 수 있는... Tensorflow를 설치하는 방법에 대해서 정리를 해보았다. Tensorflow는 설치하기 아주 간단하다. 하지만 처음부터 pip 설치하고 번거로운 일이 있기에 그냥 정리해 보았다. $ sudo apt-get install python-pip python-dev $ sudo pip install —upgrade pip $ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.12.1-cp27-none-linux_x86_64.whl $ sudo pip install --upgrade $TF_BINARY_..
이번 시간에 다루어볼 내용은 proto message로 생성한 Java를 Json String으로 변환하는 방법이다. proto로 생성한 java 인스턴스를 아래와 같이 json string으로 바꾸려면 예외가 발생한다. #protoJava - proto로 생성한 java instance ObjectMapper mapper = new ObjectMapper(); mapper.writeValueAsString(protoJava); 그렇기 때문에 protobuf의 JsonFormat으로 jsonString을 변환해주면 된다. #protoJava - proto file로 생성한 java instance final String jsonString = JsonFormat.printer().print(protoJa..
이전 포스팅에서는 grpc를 이용하여 간단하게 client-server 애플리케이션을 작성하였다. 간단하게 감을 익혀봤으니, 세세한 부분을 스터디 해본다. 오늘은 Protobuf(proto3)에 대해 다루어본다. 메시지 유형 정의 간단한 예를 보자. 검색 요청 메시지이며, 쿼리 문자열과 페이징을 위한 필드를 가지고 있다. syntax = "proto3"; message SearchRequest { string query = 1; int32 page_number = 2; int32 result_per_page = 3; } 첫 줄은 proto3 syntax를 사용하고 있음을 지정한다. default는 proto2이다. 그리고 message SearchRequest를 정의한다. message는 자바로 비교하면..
오늘은 gRPC가 무엇인지 알아본다. 그동안 스터디한다고 마음만 먹고 매일 미루기만 했는데, 황금연휴에 맘잡고 gRPC에 대해 다루어 볼 것이다. 개요 gRPC를 사용하면 클라이언트 애플리케이션에서 마치 자신의 메서드를 호출하는 것처럼 원격서버(gRPC서버)의 메서드를 직접 호출 할 수 있으므로 MSA환경의 서비스를 보다 쉽게 만들 수 있다. 여타 다른 RPC와 마찬가지로 gRPC는 IDL(Interface Definition Language)를 이용하여 서비스를 정의하고 페이로드를 정의하며 gRPC서버는 이 인터페이스를 구현하고 클라이언트 호출을 처리하기 위해 gRPC서버를 실행한다. 클라이언트 측에서 클라이언트는 서버와 동일한 인터페이스를 가지는 스텁 객체를 가지고 있다. ProtoBuf gRPC는 ..