전체 글 37

사내 운영툴 웹 어플리케이션 만들기 ITT Verification 아키텍처/배포/운영까지 정리

0. 프로젝트 개요기존에 현업에서 사용하던 기능(기존 데스크탑/로컬 프로그램)을내부망 환경에서 여러 사용자가 동시에 접근 가능한 웹 기반 업무 툴로 전환했다.프로젝트명: ITT Verification (사내 운영툴)목표:엑셀 업로드 기반 데이터 검증/조회대량 데이터(2~3만 행) 처리 성능 확보내부망 서버에 배포 후 운영(HTTPS, 인증, 로그/장애 대응 포함)1. 사용자 흐름(핵심 기능)사용자가 웹에서 로그인엑셀 파일 업로드서버에서 데이터 검증/조회/API 호출(프록시 포함)결과를 DataGrid로 확인(필터/검색/정렬)필요 시 결과 다운로드 또는 후속 처리운영 환경에서는 엑셀을 “한 번에 화면에 다 렌더링”하면 브라우저가 멈추는 이슈가 발생할 수 있어, 페이지네이션/서버사이드 조회 구조를 고려했다...

카테고리 없음 2026.03.17

Rocky Linux에 Jenkins 설치하고 버튼 한 번으로 배포 자동화하기 (Nginx Reverse Proxy + systemd)

0.Jenkins를 왜 설치하는가??개발자가 소스/산출물을 반영한 뒤, 운영자가 매번 서버에서 수동으로 복사/재기동하면 실수가 잦다.내부망 환경에서는 GitHub Actions 같은 SaaS를 쓰기 어렵고, 서버 빌드도 외부 다운로드 제약이 걸릴 수 있다.그래서 Jenkins를 운영 서버에 직접 설치하고, “배포 버튼”으로 배포+재기동+헬스체크까지 자동화했다.1. 목표(운영 프로세스)최종 목표 흐름은 아래와 같다.개발자가 변경사항 반영(소스 또는 빌드 산출물 준비)운영자가 Jenkins에서 “Deploy” 버튼 클릭Jenkins가 배포 스크립트를 실행하여백엔드 재기동(systemd)프론트 배포(dist 반영)Nginx reloadHealth check 확인2. 설치 방식(WAR + systemd) 선택 ..

카테고리 없음 2026.03.17

Rocky Linux에 Git ea 설치하고 사내 Git 서버 구축하기(Nginx Reverse Proxy + SSH 2222)

0. 왜 Gitea를 선택했나?사내에 GitLab이 없고, 내부망 환경이라 외부 SaaS 사용이 애매한 상황사용자 수가 많지 않음(최대 10명 수준)Git 서버는 “가볍고 운영이 쉬운” 제품이 필요그래서 **Gitea(경량 Git 서버)**를 사용해 자체 형상관리 환경을 구성했다.1. 구성 요약(아키텍처)OS: Rocky Linux (VM)도메인: git.example.comGitea Web: https://gitea.com/git/ (Nginx Reverse Proxy, HTTPS)Gitea SSH(Git push/pull): 2222 포트Nginx는 기존 서비스(ITT 웹)와 공존하며 /git 경로로 라우팅만 추가2. 설치 방식(내부망 고려)내부망에서 외부 다운로드가 막힐 수 있어서,가능하면 패키지/..

카테고리 없음 2026.03.17

SAP 환경구성 및 화면구성

SAP에 관심이 생겨 기본적인 구성과 어떻게 사용하는지 어느정도 맛을 보려고 한다. 우선 SAP 서버 구성은 Oracle VertualBox에 우분투를 설치하여 준비하였다. 우분투에 SAP 설치파일을 넘겨서 서버 구성 후 구동에 성공했다. 이후 SAP를 사용할 로컬 PC에 설치 후 구동하면 이렇게 로그온이 가능해진다. 설정해둔 ID와 PW를 입력하면 짜잔 초기화면까지 띄우는데 성공했다.

SAP 2025.09.14

하이퍼텍스트 트랜스퍼 프로토콜

HTTP는 Aplication 레벨의 네트워크 프로토콜이다 .HTTP란 HyperText Transter Protocol의 약자이며 통신을 위한 규약이란 뜻이다.간단히 말하자면 A라는 문서에서 B라는 문서로 가는 개념에 대한 의미 . 문서 내에서 하이퍼텍스트를 지정하기 위해서 특별히 하이퍼텍스트 마크업 언어을 사용해야 한다. 오늘나르의 HTTP는 HTMl 문서를 주고 받던 간단한 프로토콜에서 벗어나 그림 파일, 동영상, 3D 등 다양한 미디어 리소스를 주고 받는 형태로 발전했다. 마찬가지로 HTML도 단순히 하이퍼링크를 위한 마크업 언어에서 다양한 시각적 기능을 제공하는 마크업 언어로 발전했다. 오늘날의 HTTp는 HTML 문서를 주고 받던 간단한 프로토콜에서 벗어나 그림 파일, 동영상, 3D 등 다..

잡담 2025.07.13

SQLD 함수

데이터 베이스에는 함수라는 기능이 제공된다.예를 들면 대소문자가 뒤섞여 있는 문자를 소문자로 일괄 변경해준다던지. 3.14592.....와 같은 기나긴 수를 정해진 자릿수에서 반올림해주는 함수 등이 그것이다. 함수의 종류와 기능 정리 (1) 문자 함수 CHR(ASCII 코드)아스키 코드는 총 128개의 문자를 숫자로 표현할 수 있도록 정의해 놓은 코드이다. CHR 함수는 아스키 코드를 인수로 입력했을 때 매핑되는 문자가 무엇인지를 알려주는 함수이다. 예) CHR(65) = A (2) LOWER(문자열) 문자열을 소문자로 변환해주는 함수이다.예) LOWER(JEN) = jen  (3) UPPER(문자열) 문자열을 대문자로 변환해주는 함수이다. 예) UPPER(jen) = JEN   (4) LTRIM(문자열..

SQLD 2024.08.15

[용어] 데이터 마이그레이션

데이터 마이그레이션의 정의는 데이터를 한 위치에서 다른 위치로, 한 형식에서 다른 형식으로 또는 한 애플리케이션에서 다른 애플리케이션으로 이동하는 프로세스를 의미한다. 간단히 말하면 어딘가에 저장되어 있는 데이터를 다른 곳에 이동, 이관해야 하는 경우를 칭한다.일반적으로 새로운 시스템 또는 위치를 도입하는 경우 발생한다. 예시) 현재 이용중인 DB서버가 노후화 되어 새롭게 사용중인 OO시스템의 DB서버에 마이그레이션 한다. (DB를 이관 한다는뜻) 이외에도 아래와 같은 경우에 필요하다   ▶ 컴퓨터, 레거시 시스템 업그레이드   ▶ 레거시 시스템 변경   ▶ 여러 시스템의 병합 (데이터 통합) 레거시( 현재까지 남아 사용되고 있거나 현재의 체계에 영향을 미치는 과거의 체계 ) 이상으로 아래는 마이그레이션..

잡담 2024.07.29

항해 99 일일 코딩 테스트 문제풀이_TIL_3일차

25311번: UCPC에서 가장 쉬운 문제 번호는? (acmicpc.net) 25311번: UCPC에서 가장 쉬운 문제 번호는?대회 참가자는 되도록 일찍 대회의 모든 문제를 한 번씩 읽어 보는 것이 권장됩니다. 이렇게 하면 대회의 전체적인 분위기를 느낄 수 있고, 종종 비교적 쉬운 문제를 빨리 발견해서 속도에서 우www.acmicpc.net 대회 참가자는 되도록 일찍 대회의 모든 문제를 한 번씩 읽어 보는 것이 권장됩니다. 이렇게 하면 대회의 전체적인 분위기를 느낄 수 있고, 종종 비교적 쉬운 문제를 빨리 발견해서 속도에서 우위를 점할 수도 있습니다.하지만 실제 참가자들은 다양한 전략을 사용하고, 문제들이 배치된 순서에 따라서 일부 문제를 아예 읽지 못하거나 아주 늦은 시점에 읽어 보게 될 수도 있습니다..

코딩 테스트 2024.04.25