Oracle Developer Meetup - Serverless Computing

2018 [3rd] Oracle Developer Meetup, Serverless Computing 세미나


[3rd] Oracle Developer Meetup | Serverless Computing과 친해지기 세미나에 다녀왔습니다.

코드가 실행되는 시스템에 대한 생각을 접고 창의적인 코드 개발에만 집중하자. 최근 가장 뜨거운 화두인 ‘Serverless Computing’ 의 장점과 아키텍쳐, 실제 활용 사례를 알아보고, 실습까지 한번에 하는 시간을 가졌습니다.

13:00-13:50 | [Overview] Serverless Computing 친해지기 (한국오라클 김종규 컨설턴트)

서버리스란 ?

  • 기준은 개발자다.
  • 개발자가 서버에 대해 신경을 안 쓰는 환경
  • 애플리케이션 개발(코드)만 신경 쓰고 나머지 서버는 몇 개가 필요하고 컨테이너가 몇 개 필요한지에 대한 생각 없이
  • 애플리케이션 개발을 위한 새로운 아키텍처
  • 시스템에 관해 신경 쓰지 않음
  • 서비스 준비시간이 매우 빠름
  • 사용되는 시간만 지불

일반 환경 애플리케이션 라이브러리 컨테이너 실행환경 운영시스템

클라우드 환경 애플리케이션 라이브러리 컨테이너

서버리스 환경 애플리케이션


서버리스 아키텍처의 중심 - Function

  • 애플리케이션 아키텍쳐 - Monolithic application -> Microservice application -> function (가장 작은 단위의 서비스)
  • function 단위로 서비스 ( oracle 제외 서버리스 아키텍처의 중심 - 다른 벤더들도 다 같음)

Function as a Service (FaaS)

  • 서버리스 아키텍처의 중심
  • function
    • 그 자체로 일을 수행할 수 있는 작은 단위
    • 어떤 입력을 받고 기능을 수행한 다음 아웃풋을 내는 형태
  • Function as a Service (FaaS)
    • Function 하나가 Faas 플랫폼의 하나의 유닛으로 배포
    • 프로비져닝, 배포하고, 스케일 업/다운, 빌링, 인증, 인가, 보안 등을 제공
    • 매우 빠르고 스케일도 매우 클 수 있으며 어떤 언어나 플랫폼에서도 수행 가능

다른 벤더의 serverless 대표적인 예 : aws lamda

서버리스의 중심

  • 코드(개발자가 코드에만 집중)
  • 유기적인 확장 (리퀘스트가 갑작스럽게 몰리더라도 스케일업/다운-로드밸런싱 가능)
  • 저렴한 비용(리퀘스트가 있을떄만)
  • 하나의 기능을 만들면 Function 단위로 도커 이미지 생성
  • 각 기능(function)을 서로 다른 언어로 만들어도 Function의 조립이 가능하다.

14:00-15:20 | [Special Session] 개발자를 위한 JavaOne 2017 업데이트 2탄 - Enhancement 중심으로 (양수열 Java Champion, Oracle ACE)

  • 모든 나라 중 개발자 컨퍼런스 비용이 가장 값싼 곳이 우리나라다.(많이 참여하자!)
  • javaOne 2017 컨퍼런스에 대한 소개 - ex)1,화성탐사도 자바로…, 2,주제 - Monolithic vs MicroServices 를 똥에 비유하며 재밌게 묘사하기도..(해외 컨퍼런스는 국내의 컨퍼런스의 딱딱함과 다르게 재미있게 진행한다는 말)

java 9

  • JVM의 변화
  • JAVA는 플랫폼과 랭귀지 두 가지 측면으로 볼 수 있다.
  • 웹으로 넘어오면서 상당수의 엔터프라이즈 솔루션이 자바로 구현 많이 됬었는데 조금 씩 다른 곳으로 넘어가면서 자바가 랭귀지 보다 플랫폼 쪽(즉, JVM)에 좀 더 신경을 쓸 것이다.
  • 자바만 하는 사람이 별로 없다. 언어적 특성, 목적에 따라 분화가 많이 됨.
  • GC에 대한 개선이 많이 됨 (JEP248, JEP250…), code cache, logging 등..
  • JDK/JRE File Structure 변경 - java 8과 java9는 아예 다르다. ( 폴더 구조의 재편, rt.jar 등이 로딩 되지 않음 ), 9에서 만든것을 8에서 돌릴 수 없음..
  • 컴파일러 최적화에서도 개선이 많이 됨.
  • Api document 검색 가능
  • nashon - ECMAScript 5.1 spec 지원
  • Certificates(인증서), SHA-1 -> SHA-256으로 변경
  • Deprecate the Applet API (웹 표준이 대두되고 있음..)
  • com.sun.sercurity.auth. ~ Six deprecated APIs
  • JRE Version selection command line option Remove
  • Demos and Samples Remove
  • Remove the jhat tool

요약

  • 상당히 많은 큰 변화를 겪음
  • 장단점이 많지만.. 하위호환성을 유지하기 힘들어져서 논란이 많다고 생각함.
  • 7->8은 랭귀지 적인 이슈가 많이 컸음. 8->9로 간다해서 람다 function 제한이라던 가는 없고 증분이라고 생각하라.

15:30-16:30 | [Hands-On] Fn Project를 이용한 Serverless Computing 실습 (한국오라클 김종규 컨설턴트)

: Docker 기반의 Serverless 개발 플랫폼인 Fn Project를 통해 Serverless Computing의 처음 단계를 실습하는 시간.

후기

serverless가 뜨거운 감자인 건 알았지만 어떤 것을 의미하는지 의문만 품고 있었습니다. 하지만 이번 세미나를 통해 완벽하게는 아니지만 serverless가 어떤 의미 인지는 대략적으로 감을 잡을 수 있었던 좋은 기회였던 것 같습니다. 또한, java9에 대해 좋은 정보를 얻게 돼서 기쁩니다. 이 세미나를 통해 도커와 서버리스, java9 등에 대해서 좀 더 공부를 해보고 싶다는 마음이 들었습니다. 주니어의 입장에서는 받아들이기 쉽진 않았지만 그래도 좋은 강의를 볼 수 있게 해주신 한국 오라클에 감사합니다. 피자도 맛있게 잘 먹었습니다:)
*본문의 내용은 제가 이해한 대로 작성하였기 때문에 틀린 부분이 있다면 댓글로 피드백을 부탁드리겠습니다. 감사합니다.

facebook share twitter share
0%