본문 바로가기

반응형

프로그래밍

(30)
Apache Spark cannot access class sun.nio.ch.DirectBuffer 오류처리 Apache Spark 를 JDK 17 에서 사용하면cannot access class sun.nio.ch.DirectBuffer 관련 오류를 볼수가 있다.JDK 의 보안 업데이트로 인해 기본적으로 외부모듈에서의 DirectBuffer 접근이 막혀있기 때문이다. jvm 실행시 열어주는 것 외에는 코드로 처리할 방법은 없다.설치작업시 이런 설정 하나하나 추가하는게 매우 번거로워, 해결방법을 찾아봤으나 아예 없으니 수고하실 필요 없겠다. java -Dfile.encoding=UTF-8 -Xms1024m -Xmx2048m \ --add-opens=java.base/sun.nio.ch=ALL-UNNAMED \ -jar test.jar \ 이와 같이 --add-open=java.base/..
윈도우11 파워쉘 utf-8 한글 깨짐 수정 윈도우11 파워쉘은 기본적으로 euc-kr로 동작한다.이를 수정하는 건 간단하다. 윈도우 버튼을 누른 후 intl.cpl 입력후 엔터. 그러면 열리는 아래 창에서 "관리자 옵션" 탭을 선택 후 "시스템 로캘 변경" 을 누른다.  그 후 "Beta: 세계 언어 지원을 위해 Unicode UTF-8 사용"에 체크를 한 다음 확인 을 누르면 재부팅 메시지가 표시된다.  다시 시작을 누르면 재부팅 후 적용이된다! 이제 터미널에서 개발할때 utf-8로 된 한글이 정상적으로 표시된다.
Clickhouse Server Docker 설치 Clickhouse Server를 Docker를 통해 간단히 설치할 수 있다.물론, Docker를 사용하지 않아도 Clickhouse 자체의 설치는 매우 간단하다.윈도우 환경 같은 경우는 어렵기 때문에 docker를 통해 설치하는게 좋다.일단은 WSL 이 설치되어 있다는 것을 가정하고, WSL를 통해 명령어로 간단히 설치해보자. $ docker volume create clickhouse$ docker run --restart always -d -p 8123:8123 -p 9000:9000 -v clickhouse:/var/lib/clickhouse -e CLICKHOUSE_DB=test --name clickhouse --ulimit nofile=262144:262144 clickhouse/clickh..
Clickhouse - 다른 Clickhouse 서버의 table을 현재 서버로 복사하기 예를 들어, 운영서버에 있는 table을 개발 서버로 복사하고 싶을 경우가 있을 수 있습니다.Clickhouse의 경우 간단하게 할 수 있는데요.. 1. 테이블생성2. 데이터 insert 요 과정으로 진행됩니다. 먼저 복사하고자 하는 DB의 DDL문을 알아내야 합니다. SHOW CREATE TABLE databasename.tablename; 이 명령을 수행하면 결과값으로 CREATE 문을 return 해 줍니다. 이것을 그대로 새로 생성하고자 하는 곳에서 실행하면 됩니다. 이후  INSERT INTO 테이블명SELECT * FROM remote('IP주소', 'DB명', 'Table명', '계정', '비밀번호'); 이 명령어로 간단하게 복사해 올 수 있습니다.명령어 실행시 GRANT 관련 오류가 발생할..
JWT Token 생성 - Java and Javascript Java 로는 많이 만들어봤느데, javascript 로는 해보지 않아 정리해봅니다.라이브러리는 node에서 쉽게 받을 수 있습니다. const jwt = require('jsonwebtoken');const signKey = 'signkey로사용할조금긴문자열을입력합니다.';const expirationTimeInSec = 86400; // 24시간 (초 단위)function generateBasicToken(subject) { const createdDate = Math.floor(Date.now() / 1000); // 초 단위로 현재 시간 const claims = { iat: createdDate, // 발행 시간 (초 단위) exp: createdDate + ..
Spring AOP 의 JoinPoint 에서 class name, method name 얻는 방법 AOP 에서 classname 을 얻는 방법은 간단합니다.처음에 Proxy name 을 가져와서 조금 찾아보다가 다음에 잊어버리지 않기 위해 정리해봅니다. @Around("controllerPointcut()")public Object ctrlAround(ProceedingJoinPoint joinPoint) throws Throwable { String className = joinPoint.getSignature().getDeclaringTypeName(); String simpleClassName = className.substring(className.lastIndexOf(".") + 1); String methodName = joinPoint.getSignature().getNa..
Javascript Network visual 라이브러리 정리 javascript 로 네트워크 를 그리는 라이브러리에 대한 정리.계속 추가될 예정입니다. Sigma.js- https://www.sigmajs.org/- WebGL 을 사용해서 canvas 또는 svg 보다 대량의 데이터에 대한 퍼포먼스가 좋다.- 커스텀 하기가 어렵기 때문에 적은 데이터를 쓰거나 커스텀이 필요할 경우 d3.js 를 쓰는게 더 나을 수 있다.- MIT 라이선스
도커(docker) 로 Clickhouse db 설치하기 개발에 clickhouse를 사용하고 있는데 자주 설치하는 입장에서 환경 구성하기가 좀 번거로운데, docker 로 간단히 할 수 있습니다. 윈도우에서도 docker를 쓰면 가능하죠. docker hub 에 이미지가 등록되어 있기 때문에 간단히 가능합니다. 활용하는 범위에서 다시 보기 위해 정리해봅니다. 리눅스 기준 먼저 Docker가 설치되어 있지 않다면 Docker 먼저 설치 sudo curl -sSL get.docker.com | sh 그리고 사용자 계정에 docker 를 사용할 수 있는 권한 추가 sudo usermod -aG docker pduser sudo systemctl start docker 터미널을 빠져나갔다가 다시 들어가면 적용됩니다. docker ps 라고 실행했을때 정상 실행되면 ..

반응형