컨텐츠
PHP에서 헥사고날 아키텍처 마스터하기 — 더 깔끔하고 확장 가능한 코드 작성!
2025-02-13 10:00
언젠가 읽기
헥사고날 아키텍처 소개
- PHP 애플리케이션을 위하여 개발된 접근 방식임.
- 소프트웨어 디자인의 유연성을 증대시킴.
주요 구성 요소
도메인
- 비즈니스 로직을 수행하는 핵심 부분임.
- 순수한 PHP 코드로 작성됨.
포트와 어댑터
- 포트는 도메인과 외부 세계 사이의 인터페이스 정의함.
- 어댑터는 포트를 구현하여 외부 시스템과의 상호작용 가능하게 함.
애플리케이션 레이어
- 도메인과 외부 어댑터 간의 중재 역할 수행함.
- 비즈니스 로직 호출 및 결과 전달 책임짐.
장점
- 유지보수 용이성 증대함.
- 확장성 높음.
- 테스트 용이함.
참고 자료
- 헥사고날 아키텍처 패턴 소개 자료 언급.
- 클린 아키텍처 및 PHP 오브젝트 지향 프로그래밍 기초 관련 자료 언급.
AWS에서의 이벤트 기반 아키텍처, 파트 II: 고급 기초
2025-02-12 21:30
언젠가 읽기
이벤트 기반 아키텍처 심화 기초
- AWS 활용한 이벤트 기반 아키텍처(EDA) 설명
- EDA 구현 위한 기본 구성 요소 소개
- 실무 관행 중요성 강조
- 신뢰성 있는 메시징 시스템 구축 필요성
주요 개념
- EDA: 비동기적 이벤트 주고받는 아키텍처 스타일
- AWS 관리 서비스: EDA 효과적 구현 도와주는 서비스
- 신뢰성 있는 메시징 시스템: 안정적 메시지 전달 보장
적용 범위
- AWS 서비스 기반 예제 소개
- 인프라 무관한 일반적 개념 적용 가능
함께 읽으면 좋은 참고 자료
- EDA 기본 이해 자료
- AWS를 활용한 시스템 설계 자료
- 메시징 시스템 신뢰성 확보 전략 자료
슈퍼블록 Percpu_rw_semaphore 교착 상태 디버깅
2025-02-12 20:00
언젠가 읽기
문제 상황
- 특정 작업의 122초 이상 멈춤 발생
- PID 2449 "peer local sock"과 PID 1914 "mariadbd" 작업 정지
분석 방법
- 커널 덤프 파일 분석 선택
kdump트리거 및crash유틸리티 사용
백트레이스 확인
veeamblksnap에서 슈퍼블록 동결 시 교착 상태 발생percpu_down_write()함수가 세마포어 획득 대기
교착 상태 원인
percpu_rw_semaphore세마포어 획득 상호 대기veeamblksnap모듈에서 발생
세마포어 상태 확인
- 세마포어 주소 확인 및 상태 점검
writer필드에 PID 2449 존재,block카운터 1 설정
대기 중인 작업 찾기
- 세마포어 대기를 기다리는 작업 추가 분석 수행
결론
veeamblksnap모듈의 적절한 세마포어 획득 실패로 교착 상태 발생- 추가 모니터링과 세마포어 사용 방식 재검토 필요
함께 읽으면 좋은 자료
- 리눅스 커널 교착 상태 분석
- 세마포어와 뮤텍스의 이해
crash유틸리티 사용법
기존 서비스 국제화(i18n) 작업 쉽게 덜어내기: t 함수 자동 래핑 스크립트 만들기
2025-02-12 18:30
언젠가 읽기
- 인프랩 랠릿 셀의 글로벌 서비스 출시 계획 수립
- 국제화 작업 착수 및 레거시 코드 정리
- Next.js와 next-i18next 도입
useTranslation훅 및 JSON 파일 활용- 서버사이드 렌더링 지원
- 언어 자원 키 정의 방식 검토
- 한글 키 방식, 역할군 기반 한글 키 방식, 영어 키 방식 논의
- 한글 키 방식 채택 결정
- T 함수 자동 래핑 스크립트 개발
- 팀의 효율성 및 생산성 향상 목표
시스템 설계의 세 가지 차원: 일관성 모델
2025-02-12 17:00
언젠가 읽기
시스템 설계의 세 가지 차원: 일관성 모델
- 시스템 설계 차원 탐구 시작
- 일관성 모델 소개
- 일관성 개념 이해 필요
- 원자적 일관성 설명
- 데이터 동기화 동일 정보 보장
- 실시간 정보 주고받기 유사
- 최종 일관성 설명
- 데이터 전파 시간 소요
- 시간이 지나면 동일 정보 제공
- 일관성 모델의 중요성
- 신뢰성 및 사용자 경험 영향
- 원자적 일관성, 실시간 애플리케이션 적합
- 최종 일관성, 성능 및 확장성 유용
- 일관성 모델 선택 중요성 강조
- 참고 자료 제안