본문 바로가기
728x90
반응형

분류 전체보기280

[Server] WebtoB(WEB) & Tomcat(WAS) 연동. with ReverseProxy WebtoB의 Reverse Proxy를 이용하여 외부 서버에 WebtoB를 두고 내부 서버에 WAS를 두어 연동하는 방식은 보안, 성능, 유지보수 측면에서 유리하기 때문에 많이 사용된다. WebtoB는 TmaxSoft에서 제공하는 고성능 웹 서버이다.WAS는 일반적으로 HTTP Listener를 가지고 있는데, WebtoB는 reverse proxy 설정을 통해 WAS의 HTTP Listener와 연결 을 맺어 연동하게 된다. WebtoB 라이센스 발급우선 WebtoB를 실제 운영 시스템에 사용하는 것이 아니라 학습 또는 테스트 목적으로 진행할 경우 데모 라이선스를 발급받아 일정 기간동안 무료로 사용할 수 있다.데모 라이선스는 제품 구입 전 테스트 및 검토를 위하여 제한된 기간 동안 발급받아 사용 가능.. 2024. 9. 18.
[JavaScript] 집합(Set) 자료형 사용하여 시간복잡도 줄이기 a배열을 반복하며 b배열에 a의 값과 일치하는 값이 있다면 a[?] 값을 1로 변경해야 한다. // 예시 데이터let a = [ { id: 1, value: 0 }, { id: 2, value: 0 }, { id: 3, value: 0 }];let b = [ { id: 2, value: 1 }, { id: 4, value: 1 }]; 기존 로직 - 이중 반복문기존에는 배열을 순차적으로 돌며 값을 비교하기 위한 가장 쉬운 방법인 이중 반복문을 사용하였다.a 배열의 크기만큼 (i)를 반복한다.b 배열의 크기만큼 (j)를반복한다.a배열의 i와 b배열의 j번째 값을 비교한다.값이 일치한다면 a[i]를 1로 변경한다. for (let i = 0; i  외부 반복문이 a.length만큼,.. 2024. 8. 29.
[Vue.js] v-if & v-show 변경(update)되지 않는 버그 해결하기 v-if 또는 v-show로 지정한 변수의 값을 변경해도 화면에서 조건부 렌더링이 정상적으로 반영되지 않는 문제가 종종 발생한다..   다양한 원인 및 해결 방법Vue에서 렌더링 버그에는 다양한 원인이 있을 수 있으니 아래의 4가지 방법을 확인하자. 1. Html과 Vue에서 같은 Vue객체를 바라보고 있는지 확인Vue.js를 활용하는 다양한 방식이 있지만 보통 Html, JSP와 같은 화면에 데이터를 바인딩하여 처리한다.데이터 바인딩이 정상적으로 이루어지려면 당연하게도 HtmlVue.js가  같은 데이터 객체를 바라보고 있어야 하는데 종종 Html에서 Vue 객체를 잘못 바라보고 있는 경우가 있다.Hello World위와 같이 사용하고자 하는 변수를 가지고 있는 Vue 객체를 정확하게 선언해주자.  2.. 2024. 8. 27.
[Mac] Shell(CLI) 환경에서 vscode로 파일 편집하기 CLI 환경에서 visual studio code를 활용하여 파일 편집 CLI(Vi editor)를 사용한 파일 편집  Linux나 Mac 등의 CLI 환경에서는 보통 vi, nano, gedit 등의 에디터를 사용하여 CLI 화면에서 파일을 편집한다. 하지만 CLI 환경에서 파일을 편집하다 보면 오타나 들여쓰기 등의 확인이 힘들고 수정도 불편한 경우가 많다. 이럴 경우 code 명령어를 사용하여 VSCode를 띄워서 IDE 상에서 문서나 코드를 작성/수정 할 수 있다.  IDE(VSCode)를 사용한 파일 편집 훨씬 보기 편하고 문법 확인이나 들여쓰기, 자동 완성 등 VSCode의 다양한 기능들도 사용할 수 있다. 설정 방법 로컬 환경에서 설정 방법은 매우 간단하다.VSCode를 실행하여 위의 검색창에.. 2024. 7. 15.
[Javascript] 대시보드 메모리 누수 해결하기 (memory leak troubleshooting) 대시보드 화면의 지속적인 메모리 누수로 일정 시간이 지나면 Out of Memory로 화면이 다운되는 현상이 발생하여 해결하는 과정  Memory Leak이란?메모리 누수(memory leak)는 프로그램이 더 이상 필요하지 않은 메모리를 해제하지 않고 계속 점유하는 현상으로 시간이 지남에 따라 이런 메모리가 계속 축적되어 시스템의 전체적인 메모리를 소모하게 된다. Out of Memory(OOM)란?시스템이나 애플리케이션이 사용할 수 있는 메모리가 부족할 때 발생하는 현상이다. 프로그램이 할당 가능한 메모리보다 더 많은 메모리를 요청할 때 발생하며, 이로 인해 프로그램이 죽거나 시스템의 성능이 저하될 수 있다. 이렇게 강제로 Memory Leak을 발생시키면 OOM으로 웹사이트가 죽게된다. OOM이 발.. 2024. 7. 9.
[SpringFramework] Filter로 XSS 취약점 대응하기 Servlet Filter를 등록하여 서버로의 HTTP 요청(request)에 대한 XSS 필터링 적용  XSS란?교차 사이트 스크립팅(XSS, Cross-Site Scripting)은 웹 애플리케이션 보안 취약점 중 하나로, 공격자가 악성 스크립트를 다른 사용자의 브라우저에서 실행하도록 만드는 공격 기법이다. 주로 웹 페이지에서 사용자 입력을 제대로 검증하지 않거나 필터링하지 않을 때 발생한다.XSS 공격은 사용자의 세션 쿠키, 개인 정보, 인증서 등을 탈취하거나, 악성 사이트로 리디렉션하거나, 피싱 공격을 수행할 수 있다.  그럼 XSS 공격을 막기 위해 어떻게 해야 할까? XSS는 주요 정보(session, cookie, 개인정보) 탈취, 사용자 리다이렉션, 사이트 조작 등 다양한 공격 방법이 있지.. 2024. 7. 4.
[Docker] 에러 노트 Docker 사용 중 발생한 에러를 정리하는 곳입니다. Docker-compose not found 에러에러 코드/usr/local/bin/docker-compose: line 1: Not: command not found발생 원인- Docker-compose가 정상적으로 다운로드 되지 않아 발생해결 방법-  apt에서 다운로드 받았다면 curl명령어로 직접 Docker 홈페이지에서 파일 다운로드 하면 된다.-  직접 다운로드 받아도 해당 문제가 발생한다면 URL의 버전 정보 앞에 v를 붙였는지 확인한다. (예전에는 경로에 v가 없었지만 바뀌었다고 함)sudo curl -L "https://github.com/docker/compose/releases/download/v2.28.0/docker-compo.. 2024. 6. 30.
[Docker] nGrinder 부하 테스트 환경 구성 (with. AWS) AWS EC2 환경에서 docker-compose를 사용하여 nGrinder(성능 테스트 툴)를 동작시키기 위한 컨테이너 구성 과정*해당 글은 Ubuntu 기준으로 작성됨. 1. AWS EC2 인스턴스 세팅Local 환경에 Container를 생성해서 테스트 해도 되지만 리소스가 제한적이고, 외부에서 접속할 수 없기 때문에 AWS ec2를 사용하였다. 우선 아래의 링크에서 AWS에서 EC2 인스턴스를 생성해야 한다. https://ap-northeast-2.console.aws.amazon.com/ec2/home?region=ap-northeast-2#Home: 인스턴스 생성이 완료되면 Local에서 Terminal을 열고 SSH로 EC2 서버에 접속한다.ssh -i [.pem 파일 경로] ubuntu@.. 2024. 6. 30.
[Vue.js] v-if & v-show 조건부 렌더링의 차이점 화면에서 데이터 변경 사항이 바로 반영되지 않는 이슈 해결하기,,  우선 이슈에 대해 간단히 설명하자면 화면에서 사용 안함 버튼을 클릭하면 바로 톱니바퀴 모양의 버튼이 사용자가 클릭할 수 없도록 Disabled 처리된 버튼으로 바뀌어야 되는데 사용 안함 버튼을 클릭해도 바뀌지 않는 현상이 발생하였다.이 문제는 테스트 중 사용 안함 버튼을 클릭 후 페이지를 새로고침 하면 정상적으로 변경 사항이 반영되었다.  값에 따라 Disabled 버튼이 보여지는 기능인 Vue.js의 조건부 렌더링 기능인 v-if를 사용 하여 개발되어 있었기 때문에 렌더링 관련 문제인 것으로 파악되어 Vue.js의 조건부 렌더링에 대해 찾아보다 v-show라는 것도 있다는 것을 알게되어 v-if 대신 v-show를 적용하여 쉽게 해결할.. 2024. 6. 27.
728x90
반응형