본문 바로가기

전체 글63

[컴퓨터 사이언스] Big/Little Endian (feat. LSB, MSB, network byte order) 인사말요즘 공부를 너무 안해서.. 오랜만에 포스팅 올립니다최근 너무 오픈소스 프로그램을 통해 감사하게도 편하게 일을하다보니 어느 순간 내가 너무 바보가 되는게 아닌가 싶더라구요..그래서 틈날 때마다 시스템상 이미 공개된 포맷이나 데이터들을 직접 읽어오고 가공해보고있는데 학생 시절 공부하고 잊고있었던 엔디안 이슈가 ㅎㅎ..오랜만에 보니 헷갈리는 부분도 있고, 예전 공부할 때는 그냥 지나갔던 부분들에 의문도 생겨서 고찰하는 시간도 가져보고자 합니다~  ✔️ LSB, MSB란?컴퓨터/시스템(OS를 포함한) 구조에서 바이너리(이진) 숫자를 어떻게 표현하고 어떤 형식으로 다룰지는 끊이지 않는 논쟁이죠사람이 읽기 편하면, 컴퓨터가 불편하고.. 바이너리란 항상 그런 관계랄까.. 엔디안을 설명하기 앞서 유사한 개념인 .. 2025. 1. 28.
[Fast API][Starlette] keepalive request(요청) 지연 현상 / background tasks / slow request Fast API는 python3 ASGI WAS 프레임워크입니다. 흔히 웹서버로 uvicorn을 사용하고있습니다. 이번 포스팅은 client > proxy(i.g. nginx) > uvicorn > Fast API 통신과정에서 uvicorn까지 트래픽이 들어왔지만 Fast API의 미들웨어에 인입 로그도 찍히지 않고 request가 지연되는 현상에 대한 트러블슈팅입니다. 이슈 확인 1. background task 기능을 포함한 API를 호출후, 다음 API 요청이 간헐적으로 매우 느림(오지 않음) 2. Fast API의 미들웨어 로그상 아무런 요청/인입이 없음 3. background task가 완료되면 요청이 들어옴 원인 1. Keep-alive 유지 매번 발생하는 이슈가 아니여서 원인을 찾는게 쉽지.. 2023. 7. 17.
pypi / pip / 파이썬 패키지 해킹 악성코드 pypi(pip), npm 과 같은 방대한 오픈소스 패키지 저장소의 안전성에 대해서 생각은 해봤지만 깊게 고민해보지는 않고 살던 찰나 유튜브 알고리즘에 관련 영상을 보고 머리속으로만 생각하던 일들을 실천해야겠다고 생각들었다.. > 본 포스팅은 python 생태계에 대해서만 자세하게 다룹니다. (npm은 몰라여~) 유튭 출처: https://www.youtube.com/watch?v=DjfpcmK62ew 요약 해당 영상은 pypi(pip), npm 과 같은 방대한 오픈소스 패키지 생태계에서 악의적인 코드 혹은 의존성으로 생기는 문제들을 이야기하고 있다. ## Left-pad - 11줄의 코드로 구성된, 텍스트 문자의 왼쪽에 패딩을 넣어주는 패키지 - 수 많은 패키지들이 left-pad를 사용하고 있었고, .. 2023. 5. 1.
linux hostname / 리눅스 호스트네임 (초안) linux의 호스트네임은 static, transient, pretty 세가지 종류가 있습니다. transient hostname 이중 linux kernel에서 인식하는 hostname이 transient 호스트네임으로 리눅스 커널의 파라미터로 메모리상에 존재합니다. 파라미터는 아래와 같이 확인 가능 # 커널 파라미터 조회 $ sysctl kernel.hostname # 커널 파일시스템을 통해서, 커널 파리미터 조회 $ cat /proc/sys/kernel/hostname 위 커널 파라미터를 직접 수정해서 transient 호스트네임을 변경할 수 있습니다. 흔히 hostname 변경을 위해 사용하는 명령어들도 transient hostname 변경을 위해서 내부적으로 위 커널 파리미터를 변경합니다. (.. 2023. 3. 27.