전체보기 (168) 썸네일형 리스트형 redux-saga와 axios를 쓸 때 response가 null이 되는 현상 export const getPostsSortByLatest = ({ postsPerPage, pageNumber }) => client.get(`/boards/sort-by/create_datetime?page=${pageNumber}&page_size=${postsPerPage}`); export const getPostsSortByLatest = ({ postsPerPage, pageNumber }) => { client.get(`/boards/sort-by/create_datetime?page=${pageNumber}&page_size=${postsPerPage}`)} 위의 두 함수는 확연히 다르다. 문법적으로 {} 이거 하나 차이인데... 결과는 많이 다르다. 위의 함수를 호출하면 null이 나.. [Scala] 함수 컴비네이터 컴비네이터란? 컬렉션을 변형한 후 동일한 자료형의 컬렉션을 반환하는 메소드 map(), foreach() map()은 function을 이용해서 해당 컬렉션의 원소들을 변형시킨 후 새롭게 컬렉션을 만들어서 반환한다. val list = List(2,4,6) val minus_list = list.map(elem => elem - 1) println(list) // Output : List(2,4,6) println(minus_list) // Output : List(1,3,5)foreach()는 map()과 마찬가지로 함수를 이용하지만 반환값이 없다. var list = List(2,4,6) list.foreach(elem => println(elem)) // Output // 2 // 4 // 6fil.. twitter API를 이용해서 실시간 데이터 분석하기 (2) 개발환경 설정하고 간단하게 자료 받아오기 이번 글에서는 데이터를 저장할 몽고디비를 설치하고, 실제로 데이터를 집계하는 파이썬 파일을 작성해보겠습니다. ------------------------------------------------------------------------------------------------------ 대다수의 분산 시스템은 자바 언어로 구현되어있어서 JDK라는 게 있어야합니다. java -version 명령어를 통해 자바 버전을 확인할 수 있습니다. 아무것도 안뜨거나 'Unknown Command', 'Command not found' 등의 에러가 뜬다면 자바가 설치되어있지 않은 상태입니다. 자바가 안 깔려있으면 깔아주세요. 구글에 '자바 설치' 등으로 검색하면 무수히 많은 글이 나오니 설치방법은 생략하겠습니다... twitter API를 이용해서 실시간 데이터 분석하기 (1) 트위터 개발자계정 신청 "빅데이터를 지탱하는 기술"에서 발췌 및 정리했습니다. 트위터 개발자 계정이 없다면 만듭시다 developer.twitter.com/en/portal/petition/use-case 트위터에 로그인 닫기 이전 다음 twitter.com 회원가입 후 로그인을 하면 다음과 같은 창을 볼 수 있습니다. 왜 개발자 사이트 이용하느냐 묻는 것 같은데 본인의 사정에 맞게 체크해줍시다 저는 일단 HOBBY를 클릭했는데, 또 다른 창으로 옮겨갑니다. 다소 번거로울 수 있는 작업을 거치고 나면 메일 인증을 하게되고 그것도 끝나면 성공적으로 계정이 생성됩니다. 아래와 같은 화면이 나오면 성공입니다. 메인 화면 중앙에 있는 Create Project를 눌러서 새로운 프로젝트를 시작합시다 이름 설정을 비롯해서 다소 귀찮은 여.. 2021 카카오 블라인드 공채 - 카카오 엔터프라이즈 후기 2021 카카오 블라인드 공채에 합격한 후기를 올리려 합니다. 아직도 믿기지 않네요. 평소 감정 변화가 적은 편인데도, (1) 가고싶은 회사에 합격했다는 것 (2) 블라인드 공채였다는 것. 이 두가지가 저를 정말 행복하게 합니다. 간절한 마음으로, 쉽지 않은 삶을 살아온 그대에게 도움이 되는 글이길 바랍니다. (경쟁률도 엄청 높았네요 지금 보니까...) 자기소개서 서울 4년제 대학 4학년 2학기 컴퓨터공학이 본전공은 아닙니다. 학점 3점 중반대 프로젝트 경험 SDP Verification Tool : 국제기구로부터 수주받은, 데이터 납품 업무를 처리할 때 도움을 주는 Admin Page SDP Project Mapping : 위 프로젝트를 통해 구축한 고유한 DB를 지도 위에 시각화하는 프로젝트 농인을 .. [Java] Boxing vs No Boxing 속도 차이 결과부터 말하자면 별로 차이 안난다. import java.util.function.IntPredicate; import java.util.function.Predicate; public class study { public static void main(String[] args) { IntPredicate evenNumbers = (int i) -> i % 2 == 0; Predicate oddNumbers = (Integer i) -> i % 2 != 0; int beforeTime, afterTime, result; int circle = 100000000; // Warm-up // beforeTime = (int) System.currentTimeMillis(); // for (int i = 0;.. HTTP 버전 별 특징 https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP HTTP의 진화 HTTP는 월드 와이드 웹에 내재된 프로토콜입니다. Tim Berners-Lee에 의해 1989년부터 1991년에 발명된 HTTP는, 본래의 단순함의 대부분을 지키면서 확장성 위에서 만들어지도록, 많은 수정을 거쳐왔습 developer.mozilla.org 를 참조했습니다. HTTP 0.9 - No Version Number(0.9는 나중에 붙은 것) - Status Code도 없었다. 파일만 덜렁 날아감. - 가능한 Method는 GET이 유일했다. - HTTP 헤더 없음 A very Simple HTML Page HTTP 1.0 (RFC 194.. 가상메모리에도 불구하고 OOM(OutOfMemory)이 발생하는 이유 프로그램을 실행할 때 모든 영역이 다 필요한 건 아니다. PC(Program Counter)가 가리키는 부분과 관련된 데이터, 힙, 스택영역이 필요하기 때문에 OS는 가상메모리 라는 걸 활용한다. 가상메모리 = Main Memory + Hard Disk 즉 필요없는 부분은 하드디스크에 뒀다가 필요할 때 부른다. 이 과정을 Page Swapping 이라고 부른다. 프로세스의 모든 영역이 Swap의 대상이므로 Heap과 Stack 영역도 그로부터 자유롭지 못하다. 여기서 드는 의문 그러면 OOM(Out of Memory)은 왜 발생하지? 이 에러는 할당된 범위를 넘어선 영역에 대해서 메모리 할당을 요구할 때 발생한다. 보통 Runtime 때 Heap 영역에서 발생한다. Heap을 Swapping 하면 계속 .. [Spring]Spring JPA의 1차 캐시는 얼마나 이득을 줄 수 있을까. Spring JPA는 1차 캐시를 사용한다. 1차 캐시는 EntityManager 단위로 생성되기 때문에 EntityManager와 함께 사라진다. 사용자의 Request마다 EntityManager가 생성되고, 그 요청을 수행하면 소멸되기 때문에 1차 캐시의 Life cycle은 Transaction과 일치한다. 즉 1차 캐시를 사용하면 하나의 Transaction 내에서만 이득을 볼 수 있다. 그 성능이 얼마나 좋은지 간단하게 테스트 해본다. 이런 식의 데이터가 약 500번까지 있다. 이번 실험에서 이 500개의 데이터를 조회함으로써 1차 캐시의 성능을 측정할 것이다 package hellojpa; import javax.persistence.EntityManager; import javax.pers.. 크롬(Chrome)의 각 탭은 프로세스(Thread)다. Chrome의 각 Tab은 Thread일까 Process일까. 정답은 Process다. 왜 그런지 실험을 통해 알아보자. 실험을 위해 Chrome에서 Tab 세 개를 만들었다. wmic process get Caption, ParentProcessId, ProcessId | find /i "chrome" CMD에 명령했다. 굉장히 많은 chrome Process가 생겼다. 주목해야할 점은 이들의 PPID 와 PID이다. PPID는 부모의 PID를 의미한다. 그림에서 왼쪽에 있는게 각 프로세스의 PPID이고 오른쪽이 PID이다. 제일 위에 있는 프로세스의 PID가 20668이고, 그 밑의 모든 프로세스의 PPID가 20668이므로 제일 위에 있는 프로세스가 모든 프로세스의 부모 프로세스이다. 위에 있는 게.. 이전 1 2 3 4 5 6 7 8 ··· 17 다음