MacOS 에서 Windows11 설치 USB 만들기

Intro 집에 새로운 노트북이 생겼습니다. 사실 저랑 와이프는 둘다 맥북을 사용하고 있고, 회사에서는 리눅스 (우분투) 환경에서 개발을 하고 있다 보니, 일년에 한번정도 있을 법한 아주 가끔씩 윈도우가 필요할 때는 제법 곤란한 상황에 놓이곤 했습니다. 예전에는 집에 남던 노트북 하나가 있었지만, 약 1년 전부터 우분투 서버를 설치해두고 홈 서버로 운영을 하고있다보니 어쩌다 저희 집은 Windows Free Zone 이 되어 있었습니다. 새로 생긴 노트북에 또 우분투를 올려서 서브 컴퓨터로 쓸지, 우분투 서버를 올려서 여분의 서버로 쓸지 고민했는데 그러기에는 새로 온 컴퓨터의 성능이 너무 좋기 때문에 일단 윈도우를 올려 사용 해 보기로 했습니다. 예전에는 항상 윈도우 설치하는 USB도 필통에 넣고 다녔었..

IT ⁄ Computer/Mac 2022.07.27
Netdata 를 활용한 시스템 모니터링

Intro https://github.com/netdata/netdata Netdata는 특별한 설정이 필요 없이 실시간 분산 모니터링을 제공해주는 오픈소스 모니터링 도구 입니다. 시스템, 하드웨어, 컨테이너, 어플리케이션들로부터 수천개의 데이터를 실시간으로 수집하며 물리/ 가상 서버 및 컨테이너, 클라우드 환경, IOT 장비등 에서 영구적으로 동작 합니다. 대부분의 Linux 배포판 뿐만 아니라 Kubernetes나 Docker 등의 컨테이너 플랫폼 및 MacOS 등에서도 sudo 권한 없이 설치 할 수 있습니다. Netdata는 아래와 같은 특징들을 가지고 있습니다. 설정이 필요없음 관리가 필요없음 최소한의 Disk I/O 및 메모리 사용. 싱글코어 1% 만의 CPU 점유 빠르고 인터렉티브 한 시각화..

Development/DevOps 2022.07.27
[POSTGRES] 전체 테이블, 컬럼 정보 조회

Intro 여러가지 산출물 작업을 해야 하는데, 데이터베이스에 대한 내용들은 이미 워낙 방대하기 때문에 도저히 손으로 작업 할 엄두가 나지 않았습니다. 필요에 의해 쿼리를 작성 했으나 추후 또 필요할 경우가 생겼을 때 시간을 절약 하기 위해, 또한 비슷한 고민을 하고 있는 분들에게 도움이 되었으면 하는 마음에 글로 작성해 남겨두려 합니다. SQL 제가 산출물 작업 하면서 필요한 내용들 위주로 쿼리를 작성 하였기 때문에 필요한 자료가 조금씩 다를 경우에는 일단 실행 해본 후에 쿼리를 약간씩 수정해서 사용 하시면 됩니다. 전체 테이블 주석과 실제 테이블명 조회 테이블에 주석을 달아놓지 않았다면 NULL로 표기됩니다. 평소에 주석을 꼭 달아두어야 나중에 서류 작업 할 때 편합니다. 예시를 들기 위해 엉뚱한 D..

Data/PostgreSQL 2022.07.26
[Java] Optional 올바르게 사용하기

Intro 자바가 8버전으로 넘어오며 추가된 기능들이 굉장히 많이 있습니다. 보통 가장 먼저 언급되는 Lamdba와 Stream API 뿐만 아니라 조금의 차이는 있지만 Joda-Time을 그대로 가져온듯한 날짜와 시간 API, 인터페이스에 추가된 Default 메서드와 static 메서드 등 지금까지 이 기능들 없이 어떻게 코드를 짰을까 싶은 요소들이 굉장히 많습니다. 그중에서도 둘째로 치면 서러워 할 클래스가 있으니 바로 Optional 입니다. Optional java.util.Optional.java 자바 아키텍트인 Brian Goetz는 결과 값이 없음을 명확하게 표현 하려는 의도로 Optional을 추가했다고 합니다. 자바8 이전까지는 null이 그 역할을 해 왔지만, null을 사용할 경우에..

Programming/Java 2022.07.21
[Java] switch 문이 if-else 보다 효율적인 이유

Intro 코드를 작성하다 보면 switch 문으로 작성할지, 혹은 if-else 를 사용할 지 고민될때가 자주 있습니다. 개인적으로는 보통 elseif 가 두개이상 붙게되는 시점부터는 보통 코드의 가독성이나 문맥에 따라 switch 문을 사용 하려 하고 있습니다. if.java void function(String args) { if ("a".equals(args)) { // A logic } else if ("b".equals(args)) { // B logic } else { // C logic } } switch.java void function(String args) { switch (args) { case "a": // A logic break; case "b": // B logic break..

Programming/Java 2022.07.09