본문 바로가기

분류 전체보기86

[java] Thread 작업 완료 확인 - Future Future "Blocking 방식의 작업 완료 통보" Future 객체는 작업이 완료될 때까지 기다렸다가 최종 결과를 얻는 데 사용한다. 그래서 Future를 지연 완료(pending completion) 객체라고 한다. ExecutorService의 submit() 메소드는 파라미터로 받은 Runnable 또는 Callable 작업을 Thread Pool의 작업 큐에 저장하고 즉시 Future 객체를 리턴한다. 이후 Future의 get() 메소드를 호출하면 Thread가 그 작업을 완료할 때까지 기다렸다가(Blocking!) 작업을 완료하면 처리 결과를 리턴한다. Runnable Runnable task = new Runnable() { @override public void run() { // ... 2019. 9. 1.
MSA(마이크로서비스 아키텍처)의 정의, 고려사항 MSA(마이크로서비스 아키텍처) In short, the microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimu.. 2019. 9. 1.
REST 정의 및 특징, RESTful API REST REST(Representational State Transfer)는 웹의 장점을 최대한 활용할 수 있는 네트워크 기반의 아키텍처다. REST는 자원지향구조(ROA: Resource Oriented Architecture)로 웹 컨텐츠, DB의 내용 등 모든 정보를 하나의 자원으로 인식한다. 그리고 각 자원에 고유한 URI(Uniform Resource Identifier)를 부여함으로써 해당 자원에 대한 CRUD 작업을 HTTP 기본 명령어인 POST, GET, PUT, DELETE를 통해서 처리한다. HTTP method CRUD SQL POST Create INSERT GET Read SELECT PUT Update UPDATE DELETE Delete DELETE 1. 구성 Resourc.. 2019. 8. 31.
Scala 논리 연산자 &와 &&, |와 ||의 차이 &&와 ||는 Short Circuit Evaluation을 사용한 논리 연산이다. Short-circuit evaluation은 논리 연산에서 첫 번째 인수만 보고 결과를 확실히 알 수 있을 때 두 번째 인수를 확인하지 않고 바로 결과를 결과를 반환한다. 즉, expr1 && expr2 연산에서 expr1의 값이 false인 경우 expr2는 실행되지 않는다. 마찬가지로 expr1 || expr2 연산에서 expr1의 값이 true인 경우 expr2는 실행되지 않는다. 반면 &와 |는 결괏값을 반환하기 전에 두 인수를 모두 검사한다. 2019. 8. 31.