728x90
Best Story
- [서버] PowerShell 7으로 업그레이드하기: 설치 방법과 주요 장점 PowerShell 7의 설치 방법과 주요 장점, 그리고 SSH 접속 후에도 편리한 자동완성을 사용하는 방법 리눅스 서버를 운영하다 보면 Windows 환경에서 SSH 접속이나 스크립트 작업을 할 일이 많다. 그동안 Windows에 기본 설치된 PowerShell 5.1을 사용해왔는데, 최근 PowerShell 7로 업그레이드하면서 자동 완성, 명령어 예측 등 다양한 개선 사항을 체감할 수 있었다. ✅ PowerShell 5.1 vs PowerShell 7Windows에 기본 탑재된 PowerShell은 5.1 버전이며 PowerShell 7은 .NET Core/.NET 기반으로 재작성된 크로스 플랫폼 버전이다.PowerShell 5.1: Windows 전용, .NET Framework 기반PowerS.. 2025.12.14
- [대학원] IT 특수대학원 면접 후기 인서울 IT 관련 특수대학원 지원 및 면접 후기 우선 직장이 서울이었기 때문에 서울에 있는 대학원들을 알아보았고, 그 중 소프트웨어 관련 학과가 있는 상위권 특수대학원으로 필터링한 결과 아래 5개의 대학원에 지원하였다.숭실대(정보과학 대학원)국민대(소프트웨어 융합대학원)서강대(AI.SW 대학원)서울시립대(과학기술 대학원)한양대(공학 대학원)대학원 지원 시 자기소개서나 학업계획서를 받는 곳도 있는데 그게 점수에 큰 영향은 없고 면접 시 참고 자료로 활용하는 것 같다. 숭실대: 정보과학 대학원편안한 분위기에서 2:3 면접이 진행되었다.입실 전 관심과목과 어필하고 싶은 부분을 작성하는 시간이 있었고, 면접에서는 간단한 자기소개 후 자기소개를 바탕으로 한 기본 질문 1~2개를 받았다. 결론 : 자기소개서도 따로.. 2025.12.14
- [Java] 애플리케이션 배포 시 주의해야 하는 코드 분명 로컬 환경에서는 문제없었는데 서버에 올라가면 버그가 생긴 경우가 한 번쯤 있을 것이다.. IDE를 통해 로컬에서 실행하는 것과 서버에 배포하여 WAS로 실행하는 것에는 환경적인 차이로 다르게 동작하기도 하고 한 쪽에서 되는게 다른 쪽에서는 안되는 경우도 종종 발생한다. 실제 Java기반 서비스를 개발/운영하며 이러한 문제로 고생한 경험을 바탕으로 주의해야 될 부분들을 정리한 내용이다.1. 해시 알고리즘MessageDigest를 사용하여 getInstance로 특정 알고리즘을 사용하여 해시값을 생성하는 경우// 이슈 발생 가능MessageDigest digest = MessageDigest.getInstance("SHA256");// 안정적인 코드MessageDigest digest = Messag.. 2025.03.28
- [PostgreSQL] 데이터베이스 서버 보안 취약점 방지 실제 운영중인 서비스에서 데이터베이스의 보안은 매우 중요한 문제이므로 보안 관련 설정을 적용하여 취약점을 미리 방지하는 것이 좋다. PostgreSQL은 데이터베이스 보안을 강화하기 위해 다양한 설정과 기능을 제공한다. 특히 서버 설정 파일을 통해 암호화를 적용하고 안전한 인증 방식을 사용할 수 있다. 이 글에서는 PostgreSQL의 pg_hba.conf 파일을 중심으로 hostssl 및 scram-sha-256 설정 방법과 관련 정보를 다룬다. pg_hba.conf 파일 개요경로: /var/lib/postgresql//main/pg_hba.conf역할: PostgreSQL의 호스트 기반 인증(HBA, Host-Based Authentication) 방식을 정의하며, 클라이언트 접속을 제어한다. 1... 2024.10.22
- [Intellij IDEA] Intellij 느려짐 문제 해결하기 (Memory↑) Intellij 자체 메모리 사용량을 늘려 느려짐, 버벅거림 등의 현상 개선 회사에서 개발 업무를 하다보면 프로젝트의 여러 버전을 같이 봐야하거나 비교, 데이터 검증 등의 작업을 할 때 Intellij 프로젝트 창을 2~3개 띄워 서버를 돌리게 되는데 그렇게 되면 Intellij는 생각보다 많은 리소스를 잡아먹는다. 이러한 이유로 속도가 느려지고 종종 끊기거나 강제로 종료되버리는 등의 현상이 발생할 수 있는데 우선 PC의 스펙이 밑의 사진과 같이 JetBrains에서 말하는 시스템 요구 사항보다 부족하다면 PC스펙을 업그레이드 해야한다.. 하지만 PC스펙이 충분한데도 위와 같은 문제가 발생한다면 Intellij가 사용할 수 있는 리소스가 적은것이다. 즉 Intellij의 메모리 사용량을 늘려주면 쉽게 해.. 2024.03.03
- [SpringBoot] 02. Design Pattern 💡 디자인 패턴이란,,?자주 사용하는 설계 패턴을 정형화 해서 이를 유형별로 가장 최적의 방법으로 개발 할 수 있도록 정해둔 설계 알고리즘과 유사하다.Gof (Gang of Four) 디자인 패턴 : 객체지향 개념에 따른 설계 중 재사용할 경우 유용한 설계를 23개의 디자인 패턴으로 정리 해둔 것이다.장점개발자(설계자) 간의 원활한 소통소프트웨어 구조 파악 용이재사용을 통한 개발 시간 단축설계 변경 요청에 대한 유연한 대처단점객체 지향 설계 / 구현초기 투자 비용 부담 [생성 패턴]객체를 생성하는 것과 관련된 패턴으로, 객체의 생성과 변경이 전체 시스템에 미치는 영향을 최소화 하고, 코드의 유연성을 높여 준다.Factory MethodSingletonPrototypeBuilderAbstract Fact.. 2023.08.20
- [Docker] 컨테이너 이미지 생성(복제) 운영중인 컨테이너 환경을 그대로 백업하거나 복제해야 하는 경우 이미지로 저장할 수 있다. 요즘은 개발, 테스트, 운영 등 대부분의 작업을 도커 컨테이너 환경에서 하는 것 같다. 이 이유는 환경 일관성, 리소스 효율성, 이식성 등 다양한 이점이 있기 때문이다. 컨테이너 환경을 사용중이라면 컨테이너(서버) 환경을 그대로 백업하거나 복제하여 사용할 수 있다. 이렇게 컨테이너를 도커 이미지로 저장하는 있는 기능은 이러한 도커의 장점을 극대화할 수 있는 중요한 기능 중 하나이다. 컨테이너를 이미지로 저장하면, 해당 시점의 상태 설정, 실행 중인 서비스, 내부 데이터 등을 그대로 캡처하여 보존할 수 있다. 이 이미지를 다른 환경에 배포하거나, 백업용으로 보관하거나, 장애 발생 시 롤백용으로 활용할 수 있어 운영 안.. 2025.07.31
- [SpringFramework] IoC 원칙에 위배되는 static 키워드? 📌 Spring에서 static 키워드를 지양해야 하는 이유Java를 사용할 때 static 키워드는 클래스 레벨에서 공유되는 변수 또는 메서드를 정의할 때 자주 사용된다. 대표적으로 static 메서드는 객체 생성 없이 호출할 수 있고, static 변수는 클래스 로딩 시 메모리에 올라가 하나의 값만을 공유하게 된다. 하지만 Spring Framework에서는 이러한 static 사용이 프레임워크의 철학 및 동작 방식과 충돌하며, 불필요하거나 문제가 될 수 있다. 1. Spring은 IoC 기반 프레임워크 • 객체 생성, 생명주기 관리, 의존성 연결 등을 개발자가 아닌 Spring 컨테이너가 제어한다. • 즉, 객체 인스턴스는 컨테이너가 주입하고 관리해야 하며, 필요한 구성은 모두 빈 단위로 주입 가.. 2025.07.28
- [Database] SnowFlake 알고리즘 : 대규모 분산 환경에서의 고유 ID 전략 관계형 데이터베이스를 설계할 때 PK를 어떤 값을 지정해야 할지 항상 고민될 것이다. 대규모 트랜잭션 환경에서 유리한 단일 PK 전략을 세우기 위해 snowflake 알고리즘을 알아보자 1. 왜 Snowflake 알고리즘을 써야 할까? 🤔대규모 분산 서버 환경에서 고유한 ID를 생성하는 건 꽤 까다로운 문제다. 기존에는 DB의 AUTO_INCREMENT 기능에 의존해 ID를 생성했는데, 이 방식은 DB에 부하가 집중되어 트래픽이 몰리면 병목 현상이 발생할 수 있다.즉, DB 락 경합으로 인해 전체 서비스가 느려지거나 심지어 중단될 위험도 있다.또한, UUID 같은 랜덤 ID를 사용하면 고유성은 보장되지만, ID가 길고 무작위라서 인덱싱 효율이 떨어지고 조회 성능도 저하된다.이처럼 단일 DB 의존, 성능.. 2025.07.27
- [Linux] 리눅스 파일 시스템 장애 대응 (Emergency mode) [Troubleshooting] 리눅스 파일 시스템 장애 대응: 표준 파티션 및 LVM 논리 볼륨 통합 가이드분류: 인프라 운영 / 시스템 복구 (Internal)1. 개요 (Background)서버 프리징이나 강제 재부팅 후 발생하는 Emergency Mode는 파일 시스템의 정합성(Consistency)이 깨졌을 때 시스템을 보호하기 위한 방어 기제이다.관리자는 단순히 리부팅을 반복하기보다, 손상된 영역을 정확히 진단하고 해당 파일 시스템 타입에 맞는 복구 도구를 사용하여 데이터를 보존해야 한다.💡 2. 긴급 권한 획득 (Root Shell 진입)패스워드 미설정 또는 분실 시 GRUB 부트 로더 파라미터를 수정하여 즉시 쉘 권한을 확보할 수 있다.Step 1: 부팅 메뉴에서 대상 커널 선택 후 e .. 2025.04.14
728x90