전체 글
-
Java - Map 사용법 (Hashtable, HashMap, ConcurrentHashMap)Java 2022. 6. 15. 23:59
Map이란? - Map은 key value 형태의 자료구조 - key를 이용해서 value 값을 얻는다 자바의 Map은 인터페이스이고 Map 인터페이스를 구현한 클래스는 다양합니다. 대표적으로 Hashtable, HashMap, ConcurrentHashMap이 있습니다. Hashtable - 주요 메소드에 synchronized 키워드 선언되어 있음 - key, value에 null 허용하지 않음 HashMap - synchronized 키워드 없음 - key, value에 null 입력 가능 ConcurrentHashMap - thread-safe - key, value에 null 허용하지 않음 - putIfAbset 메소드 Map 인터페이스 주요 method - put() - get() - clea..
-
[펌] 개발자 평생 공부설계·방법론 2022. 6. 15. 23:53
지금 다니고 있는 회사에서 하는 일을 잘하기 위해서 노력하는 것이 가장 좋은 공부다. 회사에서 하는 일과 개인적으로 공부하는 내용을 최대한 근접시키기 위해서 노력하라. 새로운 기술을 익히는 최선의 방법은 스스로 문제를 정의한 다음, 새로운 기술을 이용해서 그 문제를 풀어보는 것이다. 책을 읽거나 동영상을 보는 것은 그보다 하위수준의 방법이다. 신기술을 좇는 메뚜기가 되지 말라. 모든 것을 알아야 한다는 강박을 버려라. 미리 획득하는 지식의 99%는 무용지물이다. 필요할 때 필요한 기술을 익힐 수 있는 것이 능력이다. 그 능력을 키워라. 이상한 나라의 앨리스에 나오는 토끼굴(rabbit hole)을 피하라. 카테고리이론을 알아야 함수형 언어를 쓸 수 있는게 아니고, 선형대수학을 공부해야 머신러닝을 할 수 ..
-
TypeScript - Number 사용법JavaScript 2022. 6. 14. 18:34
전달된 값이 정수인지 확인하기 Number.isInteger() function fits(x, y) { if (Number.isInteger(y / x)) { return 'Fits!'; } return 'Does NOT fit!'; } console.log(fits(5, 10)); // expected output: "Fits!" console.log(fits(5, 11)); // expected output: "Does NOT fit!" string을 number로 변환 +를 string에 붙여준다. console.log('1234'); // "1234" console.log(+'1234'); // 1234 console.log(+'9XB9'); // NaN Number() console.log(Nu..
-
Linux - 모니터링(cpu, 메모리)Linux 2022. 6. 11. 00:27
CPU 코어 전체 개수 grep -c processor /proc/cpuinfo 물리 CPU 수 grep ^processor /proc/cpuinfo | wc -l CPU당 물리 코어 수 grep 'cpu cores' /proc/cpuinfo | tail -1 하이퍼스레딩 확인 cat /proc/cpuinfo | egrep 'siblings|cpu cores' | head -2 siblings: 8 cpu cores: 4 siblings가 cpu cores 2배이므로 하이퍼스레딩 활성화 메모리 용량 확인 cat /proc/meminfo | grep MemTotal
-
(펌) 배민은 서비스 장애를 어떻게 없앴나설계·방법론 2022. 6. 11. 00:22
https://byline.network/2020/12/17-108/ 배민은 서비스 장애를 어떻게 없앴나 - Byline Network A매치 축구대회나 프로야구 코리안시리즈와 같은 대형 스포츠 이벤트가 있을 때 나는 경기 시작 한참 전에 치킨을 배달시키곤 했었다. 너무 빨리 주문하는 바람에 막상 경기가 시작됐을 때는 치 byline.network 간단하게 정리 모놀리틱에서 MSA로 전환 배경 사용자가 몰리면 장애가 발생해서 전환 필요 DB에 영향이 생기면 전체 서비스가 장애 발생 배민 아키텍처 정리 1. 마이크로서비스들이 이벤트 기반으로 연결 ex) 주문이 들어오면 주문 시스템은 주문이 들어왔다는 이벤트를 발생시키고 끝난다. 다른 시스템에 정보를 API로 직접 넘겨주는 것을 최소화 장애가 전파되는 것을..
-
(펌)개발자의 평생공부설계·방법론 2022. 6. 10. 18:20
개발자가 공부하는 것은 그래서 두 번째 유형의 사람이 가진 능력, 본질적인 능력을 키우는 것을 의미한다. 프로그래밍의 본질은 문제의 해결이다. 트렌드를 좇는 것은 파편적인 지식을 획득하는 것에 불과하기 때문에 큰 의미가 없다. 페이스북이나 트위터의 타임라인을 보면 수만가지 새로운 기술과 도구가 날마다 쏟아진다. 좋은 개발자라면 그런 것들을 모두 알아야 하는가? 전혀 그렇지 않다. 파편적인 지식은 파편적인 태도만으로 충분하다. 트렌드에 필요한 것은 가벼운 눈팅이지 공부가 아니다. 공부는 본질에 다가서려는 노력이다. https://zdnet.co.kr/view/?no=20170616090644 개발자의 평생공부 평생 공부하는 건 개발자만이 아니다. 다른 직업을 가진 사람들도 쉼 없이 공부하고, 컨퍼런스와 세..