수달의 IT 세상

주니어 백엔드 개발자가 반드시 알아야 할 실무 지식 포스트 Teaser

주니어 백엔드 개발자가 반드시 알아야 할 실무 지식

카테고리:

4 분 소요

한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.   코드 이외에 서비스 운영 과정에서 흔히 발생하는 문제들을 살펴볼 수 있도록 쉽게 구성된 책 필요한 선수 지식 요구 학력 : 관련학과 대졸 이상(실무에 관련된 내용) 예제 코드 : Java, SQL 난이도 : ★☆☆☆☆ 책의 구성 중 마음에 들었던 주제 2장 느려진 서비스, 어디부터 봐야 할까 느린 서비스를 해결하는 방법을 아래와 같이 3단계로 설명한다. 먼저 ‘응답 시간’과 ‘처리량’ 두 지표로 상태를 계량화하고, App·DB·네트워크 계층을 분할-정복하며 병목을 찾아야 한다. 캐싱, 커넥션 풀,·GC 튜닝 같은 응급 처치를 하되 반드시 전후 수치를 비교해 “한

[아이폰] 나의 찾기 근처 찾기 오류 해결하기 포스트 Teaser

[아이폰] 나의 찾기 근처 찾기 오류 해결하기

카테고리:

2 분 소요

문제 상황 나의 찾기는 2025년 4월 1일에 iOS 18.4, watchOS 11.4, macOS 15.4 버전을 통해 정식적으로 한국에서도 지원하기 시작했다. 하지만 나의 경우에는 AirPods Pro와 AirTag가 근처 찾기 기능을 지원함에도 아래와 같이 검은 화면에 무수한 진동만 울리고 있었다. 문제 원인 처음에는 아이폰의 U1 칩이 고장났다고 생가했다. AirDrop과 나의 찾기와 같이 주변을 인식하는 데 사용되는 칩이라고 알고 있었기 때문이다. 하지만 테스트 결과 AirDrop은 제대로 동작했다. 그래서 그 이후에는 에어팟과 에어 태그가 고장났다고 생각했다. 하지만 다른 아이폰으로 테스트 한 결과 제대로 동작했다. 혼란스러워 하던 중 아래와 같은 Apple에서 공개한 AirTag를

[C++] Make로 g++ 병렬 컴파일하기 포스트 Teaser

[C++] Make로 g++ 병렬 컴파일하기

카테고리:

1 분 소요

문제 상황 C/C++로 프로그래밍 한 결과를 실행하기 위해서는 gcc나 g++를 통해 컴파일해야한다. 하지만 소스코드의 길이가 짧거나 단순한 경우에는 아래와 같이 실행해도 컴파일하는데 시간이 오래걸리지 않지만, 일반적으로 방대한 프로젝트를 진행하는 경우에는 MakeFile을 사용하여 컴파일과 링킹을 진행하는데 컴파일하는데만 10분이 넘게 걸리는 경우도 많다. gcc -o "filename" filename.cpp g++ -c filename.cc 문제 해결 알기론 매우 오래전 GNU Make 버전부터 병렬 컴파일 옵션인 make -j를 지원하고 있었다. 보통 -j뒤에는 사용하는 시스템의 CPU 논리 프로세서의 값만큼 프로그래머가 할당해야 하는데, 리눅스 환경에서는 범용성을 위해

[C#] 어셈블리에 샌드박스가 적용된 네트워크 위치에서 어셈블리를 로드하려고 했습니다. 해결하기 포스트 Teaser

[C#] 어셈블리에 샌드박스가 적용된 네트워크 위치에서 어셈블리를 로드하려고 했습니다. 해결하기

카테고리:

3 분 소요

문제 상황 Assembly.LoadFrom을 사용하여 인터넷에서 다운로드 받은 .dll 파일을 읽어들이려고 할 때 아래와 같은 메시지를 출력하며 작동이 중지된다. System.IO.FileLoadException: ‘파일이나 어셈블리 ‘file:///C:\Users\User\Downloads\Example.dll’ 또는 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 작업이 지원되지 않습니다. (예외가 발생한 HRESULT: 0x80131515)’   NotSupportedException: 이전 버전의 .NET Framework에서 어셈블리에 샌드박스가 적용된 네트워크 위치에서 어셈블리를 로드하려고 했습니다. .NET Framework의 이 릴리스는 기본적으로 C

맛있는 디자인 포토샵 & 일러스트레이터 CC 2025 포스트 Teaser

맛있는 디자인 포토샵 & 일러스트레이터 CC 2025

카테고리:

3 분 소요

한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.   효율적인 디자인 워크플로우를 통해 초보자부터 실무자까지 폭넓게 도움이 되는 책 필요한 선수 지식 요구 학력 : X 예제 코드 : X 난이도 : ★☆☆☆☆ 책의 구성 중 마음에 들었던 주제 CHAPTER 04 전문가처럼 보정하는 이미지 보정법과 필터 Adjustments와 Camera Raw를 활용해 전문 사진가처럼 색상, 명도, 대비 등을 보정하고 필터 효과를 적용하는 방법을 설명한다. 특히 인물과 풍경 사진에 특화된 화이트 밸런스, 피부 보정, 하늘 교체, 색감 강조 등의 핵심 기술을 실습할 수 있도록 안내하는데, 특히 Neural 필터 등을 이용해 이미지 분위기를 간단히

행동의 과학, 디자인의 힘 포스트 Teaser

행동의 과학, 디자인의 힘

카테고리:

3 분 소요

한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.   UX를 항상 고민하는 프로그래머를 위한 책 필요한 선수 지식 요구 학력 : X 예제 코드 : X 난이도 : ★☆☆☆☆ 책의 구성 중 마음에 들었던 주제 PART 01 마음은 어떻게 작동하는가 마음이 어떻게 결정을 내리는지에 대해 설명하는 대단원이다. 사용자가 프로그램을 어떻게 사용하는지, 언제 프로그램을 이탈하는지, 왜 사용자가 잘못된 방식으로 사용하는지 설명한다. 행동의 전제조건인 단서(Cue), 반응(Reaction), 평가(Evalation), 능력(Ability), 타이밍(Timing), 경험(Experience)의 머릿말을 따서 CREATE라고 말하면서 각 단계에서

[C#] DataGridView 속도 개선하기 포스트 Teaser

[C#] DataGridView 속도 개선하기

카테고리:

3 분 소요

문제 상황 처음에는 DataTable.NewRow를 수행하고 DataTable.Rows.Add를 수행하는데 시간이 많이 소요되는 줄 알았다. 하지만, 디버깅 결과 DataGridView에 7개 Column과 80만 Row를 가진 DataTable을 바인딩하는 과정에서 굉장히 오랜 시간(5분 이상)이 소요되었다. 문제 확인 문제점을 확인하는데는 그리 오래걸리지 않았다. DataGridView에 설정한 DataGridViewAutoSizeColumnsMode 속성의 AllCells 때문이었다. 이를 None으로 바꾸니 해결되었다. 이후 소스 코드를 수정하여 모두 불러온 후에 AllCells를 지정하여 한번에 수행하도록 변경하였지만 오래걸리는 것은 매한가지 였다. 많은 블로그에서 소개한대로 더블 버퍼링도

[RHEL] SSH 접속 빠르게 하기 포스트 Teaser

[RHEL] SSH 접속 빠르게 하기

카테고리:

2 분 소요

문제 상황 폐쇄망 환경에서 새로 세팅한 RHEL 서버에 OpenSSH를 설정했다. 하지만 외부망에 세팅된 서버와 달리 로그인 이전에 접속을 수행하는데 필요한 시간이 10초 정도 딜레이가 생겼다. 해결 방안 해결방안은 간단하다. 폐쇄망 환경에서는 역방향 DNS 조회가 지연되기 때문이다. UseDNS no로 설정하면 SSH 서버가 직접 클라이언트의 IP를 사용하여 처리하므로 성능이 향상된다. sudo vim /etc/ssh/sshd_config sshd_config UseDNS no sudo service sshd restart UseDNS의 기본 동작 SSH 서버는 기본적으로 클라이언트가 접속할 때, 클라이언트의 IP 주소를 기반으로 역방향 DNS(Reverse DNS) 조회를 수행