Singleton Pattern

애플리케이션을 구동하면서 보통은 많은 인스턴스를 만들지만, 1개만 필요한 경우가 있습니다. 애플리케이션 전체에서 동일한 설정 값을 사용해야 한다던지, DB 스레드 풀, 캐시와 같이 애플리케이션 전체에서 공유하여 사용하는 리소스라던지, 로그를 기록하는 객체 같은 것들은 애플리케이션에서 1개의 인스턴스만 생성되어야 합니다. 이렇게 한 개의 인스턴스만 존재함을 보증하는 패턴을 Singleton 패턴이라고 부릅니다. 클래스 다이어그램 Singleton 패턴의 클래스 다이어그램은 다음과 같이 표현합니다. singleton 속성과 Singleton 생성자가 모두 private으로 정의되어 있습니다. 이는 생성된 객체를 직접 접근하거나 생성할 수 없도록 명시하는 것입니다. 생성된 인스턴스는 getInstance 메서..

'비멍'할 수 있는 사이트(Rain ASMR)

며칠 째 비가 무섭게 내리고 있어서, 비가 달갑지 않기는 하지만, 제게는 비소리를 들을 때 만큼 집중이 잘 되게 해주는 소리가 없습니다. 라디오나 음악을 틀으면 어느 샌가 DJ의 목소리에 집중하고, 사연을 듣고 있으며, 나오는 노래를 흥얼거리고 있는 자신을 발견하지만, 빗 소리를 들을 때는 한동안 집중해서 뭔가를 하곤 합니다. 그래서 빗소리를 좋아하는데, 유투브의 비소리 ASMR만큼 괜찮은 사이트를 발견해서 소개합니다. https://rainbowhunt.com/ Rainbow Hunt Ultimate rain simulator. Let the rain sing you a lullaby. rainbowhunt.com 광고도 없고, 단순히 비가 내리는 모습과 소리만 들을 수 있습니다. 빗소리는 다섯가지를 ..

Synology WebStation 사용시 인증서 갱신 이슈 발생.

최근 들어 인증서가 갱신이 되고 있지 않다는 메일을 받았습니다. NAS에서 사용 중인 인증서인데, 만료되기 한 달 전에 자동으로 갱신되도록 되어있는데 왜 메일이 오지?라고 별 대수롭게 생각지 않았습니다. 그런데 어제 다시 메일이 온 것을 보고 뭔가 잘못된 게 있구나 싶었습니다. 일단, NAS에 접속해서 인증서 상태를 보니, 만료까지 열흘 정도 남아있는걸 확인했습니다. 일단 수동으로 갱신을 시도해봤으나, 역시나, 인증서 갱신에 실패하였습니다. (근데, 저 팝업의 에러 메시지는 전혀 도움이 안 됩니다. ) 네트워크 환경이 제대로 설정되어 있는지 확인하라는 말에, 잠시 머리를 스치는 것이 하나있습니다. 지난번에 mariaDB를 설치한 적이 있는데, 그때 관리 도구로 사용되는 phpAdmin이 설치될 때, we..

Hello world(Chrome확장프로그램 ver)

한번쯤은 내가 만든 확장 프로그램을 사용해보고 싶다는 마음을 가지고 있었습니다. 그러다가, 크롬 앱 만들기 강좌를 찾았습니다. 따라 하다 보면 크롬 확장 프로그램은 만들 수 있겠다 싶어서 들어봤습니다. 수업 내용은 나름 괜찮았습니다. 몰랐던 자바스크립트 기능도 알게되고, 무엇보다 강사의 코딩 스타일이 유용해 보였습니다. 하지만, 끝까지 크롬 확장 프로그램 만드는 얘기는 하지 않더라고요. 그래서 시작한 김에 크롬 확장 프로그램 만드는 방법을 찾아봤습니다. 확장 프로그램 작성 hello world 크롬 확장프로그램을 만들기 위해서 필요한 것은 세 가지입니다. manifest.json icon image 확장프로그램에서 실행할 파일 ( 여기서는 html 파일 ) manifest.json manifest.jso..

WSL2 실제 위치는 어디일까?

윈도우10 2004 업데이트를 하고 나서, WSL2를 정말 잘 사용하고 있습니다. Docker도 잘 사용하고 있고, JetBrain IDE도 최근 업데이트로 WSL2 기반의 git을 사용할 수 있게 되어, 개발 환경이 한층 더 쾌적해짐을 느끼고 있습니다. git은 윈도우에서 쓸 때 느린 반응 때문에 항상 불편했었거든요. 그런데, 최근 궁금한게 생겼습니다. wsl2에서 윈도우에서 사용하는 드라이브를 직접 접근할 수 있는데, 이는 /mnt/에 마운트 되어있습니다. 그러면 / 아래의 /home, /etc, /var 같은 공간은 대체 어디에 있을지 궁금함이 생겼습니다. 좀 찾아보니, 설치되는 위치는 마이크로소프트 스토어에서 설치한 wsl distro에 따라서 다르며 ubuntu의 경우는 "C:\Users\{us..