본문 바로가기

분류 전체보기100

JEUS 서버 스펙 조회하기 아래와 같은 스펙의 서버가 존재한다고 가정을 하자. - 스펙 IBM X3650 Intel(R) Xeon(R) X5450 3.00GHz RAM 16GB - OS CentOS release 6.8 Final JEUS 8 WebtoB 5.0 dmidecode | grep Name > IBM X3650 cat /proc/cpuinfo dmesg | grep CPU > Intel(R) Xeon(R) X5450 3.00GHz cat /proc/meminfo > RAM 16GB cat /etc/issue > CentOS release 6.8 Final jeusadmin -version > JEUS 8 wscfl -version > WebtoB 5.0 해당 명령어를 통하여 조회가 체크를 할 수 있음. 2021. 12. 30.
쉘스크립트(ShellScript) 작성 후 문법에 문제가 없으나 에러가 날 때. tr -d '\ 015' newscript.sh Windows 시스템에서 생성되었을 경우 일반적으로 파일이 CR 줄 끝을 사용하기 때문.. 위 명령을 실행하면 파일에서 모든 CR 문자가 제거되며 정상작동을 하게 됨. 최근 특정 웹의 요청이 간간히 죽는 경우가 발생하여 10분간격으로 접속을 체크하여 응답이 없을 경우 메일을 발송하게 하는 쉘스크립트를 작성하다가 해당 문제가 발생하였었고, 그동안 리눅스 상에서 작업을 해왔었기에 해당 문제를 쉽게 인지하지 못하였다.. 번외편. # 작성한 쉘스크립트를 해당 경로에 탑재 > /usr/sbin/newscript.sh # 백그라운드에서 쉘스크립트 실행 > nohup sh /usr/sbin/newscript.sh & # 해당 쉘스크립트가 잘 실행되고 있는지 프로세스 조.. 2021. 12. 30.
Linux / JEUS > df 명령어, cd /, 최상위 이동 시 서버의 반응이 없을 경우 해결책 현재 상용화 중인 JEUS 서버에서 잘 작동하던 웹사이트가 갑자기 문제가 생겼다는 라는 내용과 함께 어느 부분인지 파악이 힘드니 알아봐달라는 연락을 받았음. 이중화된 웹사이트가 내려간 상태니 살아있는 서버로만 바라보도록 수정 한 후, 문제가 생긴 서버의 JEUS LOG를 살펴보니 스케줄링이라던지, DB에서 커넥션의 시도는 계속 있었던 것으로 보임. > df > df -h 디스크 용량이 의심이 가서 아래와 같이 df나 df -h 명령어를 날려보았지만,, 아래그림과 같이 멈춤현상 발생. > cd / 추가적으로 접근 후에 cd / 로 최상위에 올라가도 멈춤현상 발생. > mount 그래서 mount 명령어로 마운트된 목록을 확인하니, NFS 마운트해놓은 부분에서 의심이 발생함. 해당 부분을 unmount 하니.. 2021. 12. 30.
MySQL 서브쿼리 subquery 성능이슈 SELECT * FROM SEARCH_TABLE ST WHERE ST.index IN ( SELECT SST.index FROM SEARCH_TABLE SST WHERE SST.index 2021. 12. 30.
log4j 취약점 조치 (CVE-2021-44228) (CVE-2021-4504) 2021년 12월 11일, 대대적으로 이슈였던 log4j 사건의 전말을 아래와 같습니다. Log4j 2에서 원격 코드 실행을 수반하는 제로 데이 공격, 즉 서술자 Log4Shell(CVE-2021-44228)이 알리바바그룹에 의해 2021년 11월 24일 발견되어 아파치에 보고되었으며 2021년 12월 9일 트위터를 통해 일반에 공개되었다.[9] 영향을 받는 서비스에는 클라우드플레어, 아이클라우드, 마인크래프트: 자바 에디션, 스팀, 텐센트 QQ, 트위터가 포함된다. - 출처 위키백과- 위 지침이 내려왔으나, 이미 지침이 있기 전 주말에 대대적으로 뉴스에서 이슈가 된 상태였다. 회사 프레임워크를 확인하니.. 아뿔사.. org.lazyluke log4jdbc-remix 0.2.7 org.apache.log.. 2021. 12. 30.
기본자료형과 객체자료형 차이점 List voList = getList(); for(VO vo : voList){ VO setvo = vo; System.out.println("flag ==> "+vo.getFlag()); // flag ==> C setvo.setFlag('U'); System.out.println("flag ==> "+vo.getFlag()); } 위 내용에서 voList속에 해당 1번째 vo의 flag의 값이 C라고 할 때, 새로운 VO인 setvo에 해당 vo를 넣어주고 setvo의 flag의 값을 U로 변경하면, vo의 flag의 값이 바뀔까? 안바뀔까? 자세한 내용은 아래에서 비롯됨. 자료형은 기본자료형과 객체자료형으로 볼 수 있다. 기본자료형은 int, float, double, char, boolean 등.. 2021. 12. 30.
mybatis 비교문에서 한 글자일 경우 홑따옴표→쌍따옴표 SELECT * FROM TB_DATA WHERE 1=1 -- 비교값이 두 글자 이상일 경우에는 이렇게하면 됨. AND seq in (1,2,3,4) -- 비교값이 한 글자인 경우에는 이렇게하면 datatype (why? char) 에러가 발생. AND seq in (1,2,3,4) -- 비교값이 한 글자인 경우에는 홑따옴표로 쌍따옴표를 서로 바꾸어 String형으로 읽도록 한다. AND seq in (1,2,3,4) AND seq in (1,2,3,4,5,6,7,8) * 신입들이 종종 실수를 하길래 다루어 보았습니다. 2021. 12. 30.
mybatis XML에 쿼리자체를 동적쿼리로 적용하여 실행하고 싶은 경우 (+ibatis) Spring 5 + Mybatis 3.2.8 + Mybatis-spring 1.2.1 기준임. 일반적인 쿼리 XML 쿼리를 실행할 경우 동적 쿼리로 실행하고 싶을 경우가 있음. 예를 들어 아래와 같은 경우 1. 쿼리 자체를 아래와 같이 직접 넘겨서 실행하고 싶을 경우 String query = "SELECT 1 FROM DUAL"; 2. 위와 같이 실행할 때 문제가 되는 점. 위와 같은 형식이 되기 때문에, 홑따옴표가 붙어서 에러가 남. 3. 그렇다면, #{}가 아닌 ${}로 처리를 하면 될까? 그 부분도 마찬가지로 데이터타입으로 인해 실행되지 않는다. 4. 아래와 같이 ${}로 처리를 하되 Object로 넘거야 한다. public class SqlToolMngVO implements Serializab.. 2021. 12. 30.
NoClassDefFoundError: kotlin/reflect/full/KClasses 에러 발생 시 자바 레거시 프레임워크에서 서비스단을 코틀린으로 사용할 때, at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495) [tomcat-coyote.jar:8.0.47] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_144] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_144] at org.apache.tomcat.util.threads.TaskThread$WrappingRunna.. 2021. 12. 30.
kotiln 에러 Kotlin: Cannot access 'Attribute' it is private in 'VO' 자바 레거시 스프링 프레임워크에서 서비스 로직에 대한 부분을 코틀린으로 변환하는 작업을 진행. 핫스왑 진행 중 에러가 발생.. 혹시나 하여 Tomcat을 재기동하였으나, 역시나 마찬가지.. ERROR [Kotlin : Cannot access 'Attribute1' : it is private in 'VO'] ERROR [Kotlin : Cannot access 'Attribute2' : it is private in 'VO'] 해당 부분을 확인하니 원인은 Lombok !! Lombok 컴파일과 Kotlin 컴파일간의 문제로 보여짐. 해결 방안은 VO를 코틀린으로 변환을 하던지, Lombok을 사용하지 말아야 함. 2021. 12. 30.
java spring framework + kotlin 설정 기존 스프링 프레임워크(레거시)에서 코틀린을 접목하려고 시도함. Maven에 관련 dependency를 추가. ... 생략.... ... 생략.... 1.2.71 ... 생략.... org.jetbrains.kotlin kotlin-stdlib-jre8 ${kotlin.version} org.jetbrains.kotlin kotlin-test ${kotlin.version} test org.jetbrains.kotlin kotlin-stdlib-js ${kotlin.version} org.jetbrains.kotlin kotlin-reflect 1.2.41 ... 생략.... 일반적으로 로직이 많이 들어가는 서비스단에 한해 코틀린으로 변경을 하여 소스간결화와 더불어 NullPointException에 대.. 2021. 12. 30.
ep5. 자바에 대한 스터디 자바는 블로그보다 동영상으로 보는 것이 좋다고 생각합니다. 유튜브를 보면 설명을 깔끔하게 잘한 사람들이 많다고 보여집니다. 일단 추천하는 자료는 아래와 같습니다. 1. 한빛미디어에서 한빛미디어의 교재를 가지고 강의 영상을 등록한 자료들이 있습니다. https://www.youtube.com/playlist?list=PLVsNizTWUw7HZTPU3GpS7nmshXjKKvlbk 혼자 공부하는 자바 [혼자 공부하는 자바]는 [이것이 자바다] 콘텐츠를 기반으로 기획된 도서입니다. 동영상 강의 50만 조회수를 기록하는 동안 독자님들로 부터 받은 피드백을 반영하여 콘텐츠를 강화하고, 학습 방 www.youtube.com https://www.youtube.com/playlist?list=PLVsNizTWUw7FP.. 2021. 12. 30.