
발단 사용자 사용 이력을 분석 중 일부 데이터에 특정 값이 누락되어 저장되는 현상을 확인하였음. 해당 이력이 저장되는 로직을 분석한 결과 A 메소드를 진행 시 객체에 저장된 값을 세션에 저장하여 B화면으로 이동 후 화면내 작업 완료 시 B 메소드로 가지고 가서 이력을 남기는 로직으로 확인하였음. public String A(HttpServletRequest request){ TestVo testVo = new TestVo(); testVo.setOne("1"); testVo.setTwo("2"); testVo.setThree("3"); HttpSession session = request.getSession(); session.setAttribute("TestSession", vo); //현시점 Test..

배포 준비를 하기 위해 배포 작업을 준비하던 중 작업 전 개발서버와 운영서버의 화면을 비교를 위해 확인을 진행함. 운영서버의 경우 화면 내 웹서버에 존재하는 특정 이미지가 정상적으로 표출됨을 확인하였음. 개발서버의 경우 동일한 화면 내 웹서버에 존재하는 특정 이미지가 표출되지 않고 엑스박스로 표시되고 있음을 확인하였음. 엑스박스인 경우 이미지를 정상적으로 가져오지 못하는 경우로 판단하여 원인을 파악하기 위해 순차적으로 확인해 보았다. 실제 해당 이미지의 경로를 노출할 수 없기 때문에 가상의 경로를 기준으로 설명을 진행하겠습니다. 호출 이미지 경로 : /service/img/test.jpg 확인방법 1. 개발 웹서버 해당 위치에 실제로 이미지가 존재하는가 2. 웹서버 아파치 설정 확인 3. 운영서버와 개발..

이전에 docker를 이용하여 컨테이너를 생성하여 보았다. 이후 관련 서비스를 추가하면서 컨테이너의 수가 증가하여 개발환경의 PC를 재부팅 시 기동 해야 하는 컨테이너의 개수 또한 증가하였고 반복적인 일이기 때문에 보다 간편하게 관리가 필요했다. 이를 해결하기 위해 docker-compose를 적용해 보았다. 현재 환경에서 docker-compose 설치여부 확인 docker-compose version 위 버전확인 명령어를 입력하여 docker-compose 설치여부를 확인하는데 설치가 되어있다면 아래와 같이 버전정보 확인이 가능하다. docker-compose version 1.17.1, build unknown docker-py version: 2.5.1 CPython version: 2.7.17 ..

Optional이란 java 8버전 이후 부터 java.util 패키지 내 Optional이라는 class를 제공한다. 용도는 java 비지니스 로직을 구현하며 많이 발생하는 NPE(NullPointException)을 방지하기 위함이다. Optional 사용 시 발생하는 문제점 Optional get 종류에 따른 결과확인을 위한 소스코드 public static void main(String[] args) { System.out.println("case1 - Optional.get() 수행"); Optional case1 = Optional.of("case1 data"); System.out.println("case1 " + case1.get()); System.out.println("=========..

작업내용 매일 한정된 수의 사용자를 접속시점 무작위로 당첨시켜 사용자 정보를 적재 및 즉석으로 확인 가능한 기능 현재 상황 작업환경 2대 이상의 다중 서버 환경 messageQueue 용도 서버 도입 불가 oracle DB RAC 환경 최초로직 쿠폰을 지급하기 전 현재까지 당첨된 사용자의 수를 조회하여 한정된 수치에 도달하지 않은 경우 당첨자 정보를 DB에 적재하는 방법 최초로직 문제점 예를들어 100개 한정된 수량의 쿠폰을 지급 시 다중서버 및 동시응모에 의한 100명을 초과하는 당첨자가 발생하는 경우를 확인 (이때 테스트는 junit을 통하여 멀티스레드 환경으로 진행) 최초로직 원인 A트랜잭션과 B트랜잭션이 거의 동시에 진행된 경우 A트랜잭션 조회 시점에 당첨자 수 99명 당첨자 적재 100명 커밋 ..

IDE로 Eclipse를 사용하여 작업하는 환경에서 기존에 생성되어있는 java 파일을 작업하던 중 수정 후 저장을 시도하는 순간아래와 같은 메시지창이 표출되었다. Eclipse Save could not be completed. Try File > Save As... if the problem persists. Reason: Some characters cannot be mapped using "EUC-KR" character encoding. Either change the encoding or remove the characters which are not supported by the "EUC-KR" character encoding. 해당 메시지에서 안내해주는 원인은 EUC-KR 인코딩이 지원되..

vscode 환경에서 JAVA, SpringBoot, Gradle의 개발환경에서 최초 작업하였던 PC가 아닌 다른 PC에서 소스를 내려받은 후 작업을 진행하기 위해 프로젝트 실행을 하던 중 아래와 같은 오류메시지가 발생하였다. PS 프로젝트경로위치> .\gradlew.bat bootrun Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details > Configure project : zone: null > Task :compileJava FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for t..

최근 MSA기반으로 진행 중인 개인 프로젝트를 작업하다 보니 서비스별로 프로젝트를 분리하고 연관된 데몬을 Docker 컨테이너로 관리하는데 시작이 반이라고 작업전 컨테이너를 실행 전 개발 작업을 시작하기까지 시간이 다소 소요되니 작업을 하고자 행동에 옮기는 횟수가 줄어들어 버렸다. 현재 보유하고 있는 docker image와 container는 아래와 같다. 개인프로젝트로 테스트용도로 생성된 이미지도 많지만 현재 하나의 프로젝트를 개발 및 테스트하기 위해서는 최소 3개 이상의 컨테이너를 실행해야한다. 컨테이너를 실행하기 위해서는 아래와 같은 명령어를 입력한다. docker start redis docker start mongodb-container docker start mysql-container do..
- Total
- Today
- Yesterday
- mybatis
- abstractcauchorequest
- html
- standardmultiparthttpservletrequest
- Oracle
- Windows
- WAS
- 컨테이너
- tomcat
- gradle
- Eclipse
- Java
- 날짜
- JSON
- React
- jQuery
- web
- SSL
- vscode
- SpringBoot
- Linux
- SQL
- TLS
- JPA
- 깨짐
- IMAGE
- Git
- parse
- docker
- spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |