본문 바로가기
  • 👩🏻‍💻 🌮 💬

분류 전체보기151

2024년 2회차 필기 기출문제 풀이 1. 요구공학요구공학은 요구사항 개발보다 더 큰 범주에 해당하므로 요구사항 개발이 요구공학의 한 요소가 된다. 3. 클래스 다이어그램클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현하는 다이어그램✔ 커뮤니케이션 다이어그램: 시퀀스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하는데, 메시지뿐만 아니라 객체들 간의 연관까지 표현한다. 10. HIPO chart- 시스템의 분석 및 설계나 문서화할 때 사용되는 기법으로, 기호나 도표 등을 사용하므로 보기 쉽고 이해하기도 쉽다는 특징이 있다. 13. Putnam 모형- Rayleight-Norden 곡선의 노력 분포도를 이용한 프로젝트 비용 산정 기법✔ 델파이 모형: 전문가의 감정 기법의 주관적인 편견을 보완하기 위해많은 전문가의 .. 2025. 2. 14.
2024년 1회차 필기 기출문제 풀이 7. 럼바우 Rumbaugh시스템에서 요구되는 객체(Object) 를 찾아내고, 그 객체들이 가지는 속성(Attribute) 과 연산(Operation, Method) 을 식별한 후, 객체들 간의 관계(Relationship) 를 규정하여 객체 다이어그램(Object Diagram) 으로 나타내는 모델링 기법- 객체 모델링(Object Modeling, OM) → 객체 다이어그램- 동적 모델링(Dynamic Modeling, DM) → 상태 다이어그램- 기능 모델링(Functional Modeling, FM) → 자료 흐름도(DFD, Data Flow Diagram) 15. 요구사항 기능적 vs 비기능적- 기능적 요구사항: 시스템이 어떤 기능을 제공해야 하는지를 설명하는 요구사항- 비기능적 요구사항: 시.. 2025. 2. 14.
[MySQL] localhost 비밀번호 까먹었다 local 에서 테스트를 진행하던 중 로컬 mysql에 데이터를 적재하려고 python으로 연결 시도 했는데import pymysql# MySQL 연결conn = pymysql.connect( host="localhost", user="root", password="12341234", database="study", charset="utf8mb4", cursorclass=pymysql.cursors.DictCursor)pymysql.err.OperationalError: (1045, "Access denied for user 'root'@'localhost' (using password: YES)") 이런 Access denied 되었다. 다행히 DBeaver를 통한 연결.. 2025. 2. 14.
2023년 3회차 필기 기출문제 풀이 4. UML 다이어그램✔ 정적 다이어그램: 시스템의 구조를 나타냄- 클래스 다이어그램 Class- 객체 다이어그램 Object- 컴포넌트 다이어그램 Component- 배치 다이어그램 Deployment- 패키지 다이어그램 Package ✔ 동적 다이어그램: 시스템의 동작 흐름을 나타냄- 순차 다이어그램 Sequence- 활동 다이어그램 Activity- 상태 다이어그램 State- 타이밍 다이어그램 Timing 5. 디자인 패턴은 객체지향 언어에서 효과적이다! 7. CASE(Computer-Aided Software Engineering, 컴퓨터 지원 소프트웨어 공학)- 소프트웨어 개발 과정에서 자동화된 도구를 활용하여 생산성을 높이고, 품질을 향상시키는 기술- 즉, 소프트웨어 개발 과정(분석, 설계,.. 2025. 2. 13.
Redis 실시간 모니터링 개요테스트 진행하는데 redis를 실시간 모니터링 하려고 함진행Redis 실시간 로그Redis의 모든 요청을 실시간으로 확인하는 명령어:redis-cli monitor → Redis의 모든 작업을 실시간으로 확인한다. 너무 많은 로그가 출력되고 있어서 가독성이 좋지 않다. Celery 자체 모니터링Redis의 로그 중에서 내가 등록한 celery app에 대한 로그만 출력하고 싶어서 찾아봤는데, Celery에서 실행되는 작업을 실시간으로 확인할 수 있는 celery 자체 모니터링이 있었다.✅ celery worker 실행할 때 -E 옵션 추가해서 이벤트 로깅 활성화하기 (아니면 아무것도 안뜸)pkill -9 -f "celery worker" # 기존 워커 종료celery -A celery_tasks.c.. 2025. 2. 13.
2023년 2회차 필기 기출문제 풀이 6. 아키텍처 설계 과정1️⃣ 설계 목표 설정2️⃣ 시스템 타입 결정3️⃣ 스타일 적용 및 커스터마이즈4️⃣ 서브시스템의 기능, 인터페이스 동작 작성5️⃣ 아키텍처 설계 검토 8. 인터페이스 분리 원칙- 클라이언트는 자신이 사용하지 않은 메소드와 의존관계를 맺으면 안된다.- 클라이언트가 사용하지 않는 인터페이스 때문에 영향을 받아서는 안된다.✔ 단일 책임 원칙: 모든 클래스는 하나의 책임만 가지며, 클래스는 그 책임을 완전히 캡슐화해야 한다.✔ 개방 폐쇄 원칙: 확장에 대해서는 개방적이고, 수정에 대해서는 폐쇄적이야 한다.✔ 리스코프 교체 원칙: 서브 타입은 언제나 기반 차입으로 교체할 수 있어야 한다. 15. 럼바우 객체지향 분석 기법- 객체(Object) 모델링: 객체 다이어그램, 정보 모델링이라고도.. 2025. 2. 12.
Redis and Celery 개요Redis와 Celery의 관계를 좀 더 자세하게 정리해보려 한다.정리Redis와 Celery는 비동기 태스크 큐 시스템을 구축할 때 사용되며, 각각 메시지 브로커와 백엔드 저장소 역할을 한다.Celery비동기 작업 처리를 위한 분산 태스트 큐 시스템으로, 메시지 브로커(Message Broker)를 통해 작업 관리Producer (Client)사용자가 요청을 보냄Celery가 요청을 받아 Redis에 작업을 등록(Queue)함Broker (Redis)Celery가 실행해야 할 작업을 큐(Queue) 형태로 저장Worker가 대기하다가 작업을 가져가서 실행Worker (Celery Worker)Redis에서 작업을 꺼내 실행하고 결과를 저장여러 개의 Worker가 동시에 실행 가능 (병렬 처리)Bac.. 2025. 2. 12.
2023년 1회차 필기 기출문제 풀이 3. 메시지 지향 미들웨어(MOM, Message-Oriented Middleware)- 비동기 메시지 기반의 통신을 제공하는 미들웨어로, 느리지만 안정적인 처리가 중요한 환경에서 사용된다.- 비동기 처리: 메시지를 큐에 저장하고, 수신자가 준비되었을 때 메시지를 처리하는 방식, 즉각적인 응답이 필요하지 않은 환경에 적함- 고신뢰성: 메시지는 손실되지 않도록 큐에 저장되며, 시스템 장애 발생 시에도 복구 가능, 느리지만 안정적인 응답을 보장하는 것이 핵심- 비동기 메시징을 통한 분산 환경 지원: 분산 시스템에서 서로 다른 애플리케이션 간의 독립적인 통신을 가능하게 함, 송신자와 수신자가 직접 연결되지 않아도 메시지를 교환할 수 있음- 대표적인 MOM 기술: RabbitMQ, Apache Kafka, Ac.. 2025. 2. 11.
AttributeError: 'DisabledBackend' object has no attribute '_get_task_meta_for' Celery를 이용한 크롤링 예제개요Airflow와 Celery를 비교했다. 크롤링 관리 Airflow vs Celery개요기존 프로젝트의 크롤링 시스템을 Airflow로 관리했다.Airflow 운영 중이던 서버에 문제가 많았는 데, 그 중에서 제일 큰 문제는 cpu 점bonory.tistory.com크롤링 예제를 진행하며 생겼던 오류 기록 개요celery app을 활성화 시키고, Fastapi app도 활성화했다.celery_tasks.pyimport requestsfrom bs4 import BeautifulSoupfrom celery import Celeryimport timecelery_app = Celery( "tasks", broker="redis://localhost:6379/0".. 2025. 2. 11.