일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 튜토리얼
- OOM
- 알고리즘
- 주키퍼
- docker
- boj
- redis
- programmers
- 자바
- codewars
- Java
- dynamic programming
- 문제풀이
- Linux
- 동적프로그래밍
- 코드워
- zookeeper
- HBase
- golang
- Python
- 파이썬
- 스칼라
- 리눅스
- gradle
- Go언어
- 프로그래머스
- DP
- leetcode
- go
- scala
- Today
- Total
목록전체 글 (111)
파이문
희노애락중에 희와 락은 무슨 차이일까.
Spring boot에서 multiple module로 예제들을 정리하던 중 오래된 모듈 실행 시 다음 에러 발생Error: A JNI error has occurred, please check your installation and try againException in thread "main" java.lang.UnsupportedClassVersionError: com/example/javaspringevent/JavaSpringEventApplication has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recogniz..
휠 설정이 갑자기 (진짜 갑자기!) 반대로 되었다. 맥에서 마우스 설정도 변경해보고 logi options 설정도 변경해보았지만 휠을 위로 올리면 스크롤이 위로 올라갔다. (일반 윈도우 휠 방식 처럼 동작함) 인터넷에 찾아보니 mx master 마우스 휠 관련 이슈들이 꽤 있었고 대부분은 휠 자체가 동작하지 않는다는 이슈였다. 암튼 결론부터 말하자면 활성 상태 보기 (Activity Monitor) 에서 logi Options Daemon 을 강제 종료하면 정상 동작한다. 로지텍의 logi options 와 새로 나온 logi options+ 를 같이 사용하면서 생긴 버그가 아닌가 추측 됨
TL;DR 결론부터 말하자면, 로지텍 mx keys mini 를 현재 메인으로 쓰고 있다. 그만큼 만족도가 높았다. 무접점을 쓴 이후로 펜타그래프를 쓸 일은 없을 거라고 생각했는데, mx keys mini는 사람들이 극찬한 이유가 있었다. 레오폴드 750R 청축 게임할 때 주로 사용하였다. 청축 이라는 이름 답게 매우 시끄러웠으나 키보드 치는 맛은 쏠쏠했다. 무접점을 사용한 이후로는 청축 키보드는 창고행이 되었다. 레오폴드 FC660C 취업을 하면서 업무용 키보드에 대해 관심이 가기 시작했다. 찾아보니 무접점이라는 키보드가 있다는 걸 알게 되었고, 타건감이 초콜릿을 도각도각 하는 느낌이라고 했다. 글만 봤을 때는 이해하기 어려웠으나 직접 타건하러 가기는 귀찮았다. 알지 못하는 타건감에 큰 돈 들이긴 싫어..
github action 이란? github action 은 github 가 제공하는 CI/CD 플랫폼이라고 볼 수 있다. 보통 현업에서 빌드/배포를 진행할 때 별도의 서버를 두고 작업을 하곤 한다. (이 때 두는 서버는 물리 서버일 수도 있고 가상 서버일 수도 있다.) github action 이 다른 CI/CD (예를 들면 젠킨스) 와 다른 강력한 장점은 바로 트리거 기능이라고 생각한다. (어디까지나 주관적인 의견입니다.) github 에 hook 을 걸어, push event 를 다른 툴에서 체킹을 하고 빌드가 자동으로 이루어지는데 github action 을 사용하면 yml 로 간편하게 이러한 작업을 할 수 있다. 또한 여러가지 action 들을 사용하여 CI/CD 작업 (이를 Workflow 라..
목적 도커 컨테이너 어플리케이션을 호스트 머신의 유저로 실행하기 이유 도커 컨테이너의 스프링 부트에서 로그를 호스트 머신의 디렉토리에 남기고 싶었다. 그리고 호스트 머신 유저랑 어플리케이션 유저가 항상 같다는 전제가 있음! 디렉토리 마운트 디렉토리를 rw 로 마운트 하였지만, (어플리케이션 로그는 작성이 되고) 톰캣 access log 는 Permission denied 가 떴다. 디렉토리의 권한을 변경하면 해결되는 문제였지만, 777 은 뭔가 꺼려졌다. priviledged 보안상 사용을 지양하고 있다. 호스트 머신의 유저로 실행하기 리서치 한 방법으로는 2가지 방법이 있다. 도커 이미지 실행 시 호스트의 유저 정보로 실행하기 도커 이미지 빌드 시 호스트의 유저 정보와 동일하게 추가하고 어플리케이션을 ..
org.apache.hadoop.hbase.NotServingRegionException: Region xxx is not online on ... 에러 발생 hbase table 이름도 로그에 있었기 때문에, 해당 table 을 HBase WebUI 로 확인해 봄 살펴보니 Regions by Region Server 에서 내용이 없었음 (region is off line) Region 을 다시 Region server 에 할당해줘야 한다. 그러기 위해선 region_name 을 알아야 하는데, 역시나 HBase WebUI 에서 확인 가능함 (빨간색으로 칠한 부분이다!) Table Regions 에서 보여지는 Name 은 RegionInfo 로 아래와 같은 형식으로 이루어진 것임 (최신 버젼 Region..
더 맵게 programmers.co.kr/learn/courses/30/lessons/42626 숫자 목록이 주어지고 거기서 가장 낮은 숫자와, 그 다음 숫자 * 2를 더한 값을 다시 목록에 넣을 수 있는 횟수를 리턴하는 문제이다. 목록을 값에 추가하고, 나올 때 무조건 작은 값이 먼저 나와야 된다는 조건이 있기 때문에 min-heap 을 생각하면 그 다음엔 알맞은 자료구조를 선택하여 구현하면 된다. 파이썬에선 heap, 자바에선 PriorityQueue 를 사용할 수 있다. (만약 큰 수대로 나와야 한다면 값을 추가할 때 -1 을 곱해서 사용하면 된다.) heap 사용하여 풀이 (Python) from heapq import heappush, heappop def solution(scoville, K)..
가장 큰 수 programmers.co.kr/learn/courses/30/lessons/42746 number 배열이 주어졌을 때 원소 조합으로 가장 큰 숫자를 만들어 리턴하는 문제다. 비슷한 문제 / 풀이가 Geeks for Geeks 에 있다. 2가지 풀이 방법이 있는데 첫 번째는 숫자를 문자열로 바꾸는 custom compare 함수를 구현하여 언어에서 제공하는 정렬 함수를 사용하는 것이다. 두 번째는 가장 큰 숫자의 자릿 수 만큼 모든 숫자를 만든 다음에, 새롭게 만든 그 숫자들로 정렬하는 것이다. Custom compare 함수 만들어 풀이 www.geeksforgeeks.org/given-an-array-of-numbers-arrange-the-numbers-to-form-the-bigges..
주식가격 programmers.co.kr/learn/courses/30/lessons/42584 알고리즘 문제 풀이에 자주 보이는, next greater element 랑 비슷한 문제다. 주어진 배열에서 각 인덱스가 i < j 일때 A[i] 와 A[j] 간을 비교하여 j - i 만큼을 정답에 추가하는 문제다. 빠르게 하려고 파이썬으로 풀어보았다. (파이썬에서 list 는 스택과 동일하므로 list 를 사용하였다.) def solution(prices): # 정답의 전체 길이는 prices 와 동일하다. 그래서 prices 길이만큼 0 으로 초기화 시켜주었다. answer = [0 for _ in range(len(prices))] stack = list() # 0 번쨰 값은 미리 스택에 넣어두었다. s..