분류 전체보기150 MQTT Keep Alive 최근에 MQTT 통신 개발을 진행하면서 Keep Alive 설정에 관련한 문제를 겪었다. Status Update 하는 mqtt 클라이언트를 아래와 같이 생성하고send_status 라는 함수를 호출해서 사용하려고 했다. import paho.mqtt.client as mqttimport uuidimport timeclass RobotStatusUpdater: def __init__(self, broker_ip, topic="robot/status"): self.client = mqtt.Client(f"Robot_Status_Updater_{uuid.uuid4()}") self.client.connect(broker_ip, 1883) self.topic = to.. 2025. 3. 12. [MQTT] pc 2개 통신 (python, 양방향 통신) 개요PC 2개가 있다.하나는 User가 업무를 요청하고, 나머지 하나는 Robot이 그 업무를 받아서 실시간 상태를 User가 알 수 있도록 업데이트를 해줄 것이다.전 프로젝트에서는 Robot이 하나 뿐이라서 socket으로 연결을 했다.이번에는 Robot이 추가로 더 늘어날 가능성을 염두해서 MQTT를 활용하려고 한다. 편히 PC, Robot이라고 칭하겠다.PC → Robot : 수행할 작업 (텍스트 형식) 전달Robot → PC : 작업 상태 (실시간 업데이트) 전달 구조PC는 작업지시를 발행하고, 로봇은 이를 구독로봇은 상태를 발행하고, PC는 이를 구독하여 실시간으로 상태를 확인Topic 설계PC → Robot: "robot/task"Robot → PC: "robot/status" 간단한 코드 구.. 2025. 2. 25. [MQTT] Mac mosquitto 설치 / 실행 / 중지 1. mosquitto 설치brew install mosquitto 2. mosquitto 서비스 실행brew services start mosquitto 3. mosquitto 서비스 중지brew services stop mosquitto 메세지 확인은 MQTT Explorer 사용했다. 연결 잘됨 ~ 2025. 2. 25. 코드 품질 관리 코드 품질을 유지하기 위해 사용할 여러 가지 도구에 대해서 정리했다.사용할 코드 품질 도구Sonar : 코드 품질 분석, 보안 취약점 탐지Black : 코드 스타일 자동 포맷팅Flake8 : 정적 코드 분석 (PEP 8, 문법 오류 검사)isort : import 문 자동 정렬pytest : Python 테스트 프레임 워크 1️⃣ Sonar (SonarQube / SonarCloud)Sonar는 코드 품질을 분석하는 정적 코드 분석 도구SonarQube, SonarCloud 두 가지 형태로 제공✔ 사용 방법로컬에서 SonarQube를 설치하고 실행 (sonarqube + sonar-scanner 사용)CI/CD 환경에서는 SonarCloud를 이용하여 분석sonar-scanner \ -Dsonar.pr.. 2025. 2. 20. [Celery] 간단하게 성능 체크 실행 후 CPU 사용량 및 Celery Worker 상태를 모니터링하려 한다. ✔ Celery Worker 프로세스 확인ps aux | grep "celery worker" ✔ CPU & 메모리 사용량 체크htop ✔ Redis에 대기 중인 작업 확인redis-cli llen celery → 만약 대기 중인 작업 개수 확인하고 적절한 concurrency 조정→ 메모리 사용량도 고려해서 concurrency 조정 2025. 2. 19. [Celery] 적절한 concurrency 값 설정하기 개요Celery에서 concurrency 값은 한 번에 몇개의 작업을 동시에 실행할지 결정하는 중요한 설정이다.적절한 concurrency 값은 어떻게 설정할까 .. (하드웨어, 워크로드, 작업 특성에 따라 다르다!)확인concurrencyCelery는 기본적으로 Prefork (multiprocessing) 모드를 사용concurrency는 각 worker가 동시에 처리할 수 있는 작업 개수를 의미한다.worker는 실제로 Task를 실행하는 프로세스(작업 단위)를 의미한다.1️⃣ CPU 코어 수Celery가 CPU 연산을 많이 사용하는 작업(예: 머신러닝, 이미지 처리 등)을 실행한다면, CPU 코어 수 기준으로 설정 CPU 코어 개수적절한 concurrency 값2 코어2~44 코어4~88 코어8~.. 2025. 2. 19. 정보처리기사 필기 후기 휴 .. 나의 2번째 정처기 필기 시험 ㅋㅋㅋㅋ까마득한 4년전.. 취업 전에 필기 합격하고, 실기 공부 시작하기 전에 취업을 먼저 했다.일하면서 실기 공부하겠노라 다짐했지만 .. 그~대로 2년이라는 시간이 지나서 필기 합격 만료되어버렸다이런 바보 ㅠㅠ 실무만 잘하면 된다라고 생각하지만 내가 비전공자여서 정보처리기사는 꼭 따고 싶었다2025년 새해 다짐으로 정보처리기사 자격증 따기 다짐 ✨ 1️⃣ 개념 정리 1월에 바로 정보처리기사 필기 시험 신청하고 시나공 사이트에 올라온 자료들로 개념 정리 먼저 시작했다 시나공컴활, 정보처리, 워드프로세서 등 IT 자격증 전문. 해설 포함 CBT, 최신 기출 자료 무료, 실기 채점 프로그램 제공www.sinagong.co.kr굳이 책을 사지 않아도 시나공 사이트에 로그.. 2025. 2. 15. 2024년 3회차 필기 기출문제 풀이 4. 미들웨어애플리케이션과 사용자 사이 뿐만 아니라 클라이언트와 서버, 운영체제와 응용 프로그램과 같이 두 시스템 사이에서 다양한 서비스를 제공하는 소프트웨어를 미들웨어라고 한다. 10. is instance of = 분류화동일한 형의 특성을 갖는 객체들을 모아 구성하는 것을 분류화하고 하며, is instance of 라고 표현한다. 15. 아키텍처 설계 과정1️⃣ 설계 목표 설정2️⃣ 시스템 타입 결정3️⃣ 스타일 적용 및 커스터마이즈4️⃣ 서브시스템의 기능, 인터페이스 동작 작성5️⃣ 아키텍처 설계 검토 16. 클래스는 상태나 정보를 표현하는 속성과 동작을 표현하는 오퍼레이션, 관계 등으로 구성되어 있다. 18. CASE의 원천 기술- 구조적 기법- 프로토타이핑 기술- 응용 프로그래밍 기술- 정보 .. 2025. 2. 15. 2024년 2회차 필기 기출문제 풀이 1. 요구공학요구공학은 요구사항 개발보다 더 큰 범주에 해당하므로 요구사항 개발이 요구공학의 한 요소가 된다. 3. 클래스 다이어그램클래스와 클래스가 가지는 속성, 클래스 사이의 관계를 표현하는 다이어그램✔ 커뮤니케이션 다이어그램: 시퀀스 다이어그램과 같이 동작에 참여하는 객체들이 주고받는 메시지를 표현하는데, 메시지뿐만 아니라 객체들 간의 연관까지 표현한다. 10. HIPO chart- 시스템의 분석 및 설계나 문서화할 때 사용되는 기법으로, 기호나 도표 등을 사용하므로 보기 쉽고 이해하기도 쉽다는 특징이 있다. 13. Putnam 모형- Rayleight-Norden 곡선의 노력 분포도를 이용한 프로젝트 비용 산정 기법✔ 델파이 모형: 전문가의 감정 기법의 주관적인 편견을 보완하기 위해많은 전문가의 .. 2025. 2. 14. 이전 1 2 3 4 ··· 17 다음