M4 Mac에서 gRPC 빌드 오류 해결기 - protoc 실행 문제부터 Rosetta 설치까지
🧩 M4 Mac에서 gRPC 빌드 오류 해결기protoc 실행 문제부터 Rosetta 설치까지🏁 개요Mac 환경에서 gRPC를 테스트하고 빌드하던 중 여러 오류가 발생했습니다.이 글에서는 protoc 실행 오류와 CPU 아키텍처 문제를 해결한 과정을 정리합니다.🚨 1. 오류 발생gRPC를 설정하고 빌드하는 과정에서 다음과 같은 오류가 발생했습니다.protoc-gen-grpc-java-1.65.0-osx-aarch_64.exe: program not found or is not executable 문제의 원인은 protoc가 Windows용 .exe 형식으로 설치되어 Mac에서 실행되지 않은 것이었습니다.🔍 2. 원인 및 해결 과정검색 결과, grpc-java 공식 이슈 트래커에서 동일한 사례를 발..
2025.10.07
Arrays.asList() 사용 시 주의할 점
개요List 선언 시, 선언과 동시에 초기화하여 사용하기 편리하여 Arrays.asList()를 종종 사용했습니다. 편리하게 사용도중 필요에 의해 선언된 리스트 첫 원소에 새로운 원소를 더해서 사용해야하는 상황이 있어 add 메서드를 사용하였습니다. 컴파일 에러도 없기에 자신있게 소스를 실행했지만 실제 실행 단계에서 다음과 같은 예외가 발생하였습니다. "arrays.aslist unsupportedoperationexception" 이 오류의 원인을 찾던 중 Arrays.asList() 사용하는데 조심해야 할 부분을 찾게 되어 공유하고자 글을 남깁니다. Arrays.asList()의 결과물은 Arrays 안의 inner 클래스다.오류가 나는 부분을 디버깅 찍어보면 평소에 사용하는 java.util.Arr..
2025.04.03
Materialized View란?
개요팀 내에서 대규모 데이터에 대해 일정 시간마다 신규 데이터가 인입되는 상황에서 집계 쿼리를 통해 대시보드를 보여주어야 하는 상황일 때, 매 요청마다 집계쿼리를 실행하여 보여주기에는 코스트가 너무 높다고 판단하여 방법을 찾던 중 Materialized View를 사용하기로 결정하였습니다. 이 과정에서 Materialized View라는 내용을 처음 듣게 되어 정리해보았습니다. Materialized View란?Materialized View는 데이터베이스에서 사용되는 객체로, 복잡한 쿼리 결과를 저장하고 이를 주기적으로 갱신하여 빠르게 접근할 수 있게 해주는 구조입니다. 기본적으로 View와 비슷하지만, View는 쿼리 결과를 실시간으로 계산해서 반환하는 반면, Materialized View는 결과를..
2025.02.06
DB