분류 전체보기 (262) 썸네일형 리스트형 Race Condition과 Thread.Lock (Feat. 파이썬) Race Condition과 Thread.Lock (Feat. 파이썬) NCP에서 Fast API관련한 서버가 계속 OOM이 발생해서 원인을 파악하던 도중.. 갑자기 딴 길로 샜다. Race Condition 동시성 프로그래밍에서 발생하는 상황으로, 두개 이상의 동시적인 연산(스레드나 프로세스에 의해 수행되는)이 자원에 접근하고 그 순서에 따라 결과가 달라지는 상황 예를 들어, 두 스레드가 동시에 같은 메모리 위치에 쓰기 작업을 수행하려고 할 때, 어느 스레드가 먼저 쓰기 작업을 수행하느냐에 따라 결과가 달라질 수 있음 따라서 동시성 프로그래밍을 할 때는 Race Condition을 방지하기 위한 동기화 메커니즘(뮤텍스, 세마포어)을 사용해서 한 번에 오직 하나의 연산만이 해당 자원에 접근할 수 있도록 .. 만약 내가 Seller라면, 어떤 물건을 팔까? (1) 만약 내가 Seller라면, 어떤 물건을 팔까? 스마트스토어, 쿠팡, 11번가 등등 오픈마켓에 물건을 판매하려는 Seller 들은 데이터 분석 플랫폼에서 판매할 물건을 찾고 적합한 키워드로 상품명을 짓는다. 상품과 키워드를 찾기위한 플랫폼은 아이템스카우트, 셀링하니 같은 사이트가 여러 개 있었고 해당 사이트를 참조하면서 만들어보려고 한다 궁극적으로 하고 싶은 것은, '뭐 팔까?' 라고 물어보면 'A'라고 결과를 받아볼 수 있는 원클릭 소싱 프로그램(?)을 만들려고 한다. 이때 필요한 건 "데이터를 얼마나 잘 분석하는가?" 라고 생각하는데, 만들려는 사람은 데이터 사이언티스트, 애널리스트 뭐 그런쪽 능력치가 없는 애송이다. 신청한 API 데이터랩 API에 추가로 파파고도 신청했다 여기에 추가로 검색광고 A.. dict.fromkeys()에 관한 사실 dict.fromkeys()에 관한 사실 나는 파이썬 내장 함수인 dict.fromkeys()를 자주 사용하는 편인데, 처음 회사를 다닐 때 본 뒤로 자주 사용하는 것 같다. 사용하는 이유 간결성, 내장함수, 그리고 핵심이유는 "불변 객체를 사용한 초기화"가 유용해서 자주 사용한다. 하지만 오늘 아래와 같은 만행을 저질렀다. 간략한 예시를 들어보겠다. key = ['key1', 'key2', 'key3'] dict1 = dict.fromkeys(key, []) dict1['key1'].append('value1') print(dict1) 여기서 내가 예상한 기댓값은 아래였지만, {'key1': ['value1'], 'key2': [], 'key3': []} 실제 결과는 다음과 같았다. {'key1': [.. 코드 품질 향상을 위한 FastAPI 기반 코드 리팩토링 코드 품질 향상을 위한 FastAPI 기반 코드 리팩토링 서론 회사 솔루션 제공을 위한 API를 NCP(Naver Cloud Platform)에서 배포하기 위해 몇 가지 개선을 진행했다. Before 기존 코드는 Fast API를 사용하고 있고 Input과 Output만 존재하는 단순한 형태였다. Images를 입력받아서 Json 형태를 리턴해주고 있다. 해당 코드를 사용해 배포를 진행한다면.. After 3가지 단계 추가 입력 유효성 검사 필요한 데이터가 누락되었을 때 처리하는 방식을 추가함 예를 들어 'images' 필드는 비워둘 수 없음 형식 검사 및 예외 핸들러 추가 입력된 이미지 데이터가 원하는 형식인지 확인하는 검사 잘못된 형식의 데이터가 들어올 경우 적절한 오류 메시지 반환 로그메시지 기존 .. ChatGPT를 사용한 뉴스 요약 : 크롬 익스텐션 개발기 ChatGPT를 사용한 뉴스 요약 : 크롬 익스텐션 개발기 서론 아래 포스팅을 보면 알 수 있듯이, ChatGPT를 사용해 해외 뉴스를 매일매일 요약하고 있다. 미증권 뉴스 스크랩핑(Node.js , Express, Puppeteer, Koyeb) 미 증권 뉴스 스크랩핑 하기 푼돈으로 주식하는 서학개미로서, 주식 뉴스는 조금이라도 읽자라 생각해서 주식 블로그를 하고 있는데 블로그에 글이 올라가는 루틴은 아래와 같다 기사의 본문을 junnyhi.tistory.com 불편했던 점은 ChatGPT가 대화의 히스토리를 기억한다고 하지만, 대화가 길어지면 처음 요구 했던 내용을 종종 잊어버린다 그렇기 때문에 뉴스 요약을 하는 과정 중간 중간 마다 엉뚱하게 요약을 하는 일이 발생했다. 그래서 매 번 대화할때마다 원.. 꼬리에 꼬리를 무는 Proxy 이야기 꼬리에 꼬리를 무는 Proxy 이야기 프록시란? 서버 클라이언트 사이에 중계기로써 대리로 통신을 수행하는 것 프록시 서버 그 중계기능을 하는 것(컴퓨터 시스템, 응용프로그램)을 프록시 서버라고 함 프록시를 왜 사용하는가? 대리로 통신을 수행하여 보안성, 성능, 안정성 향상 시키려고 다른 장점은? 프록시 서버 중 일부는 요청받은 내용들을 캐싱해서 저장해 둠 저장해서 뭐 하는가? 클라이언트 서버는 계속 통신하며 데이터를 전달하고 중복되는 데이터도 반복적으로 전달하게 됨 클라이언트가 캐시 내부에 존재하는 정보 요청 시, 프록시는 해당 데이터를 서버에서 가져 올필요 없이 가지고 있는 캐시에서 전달해 줌 이는 외부 트래픽이 줄어들어 네트워크 병목 현상 방지, 클라이언트는 빠른 속도 서비스 제공 가능 프록시 종류?.. 아이디어스 스크래퍼(Puppeteer, Electron) 아이디어스 스크래퍼(Puppeteer, Electron) 서론 "단순 스크래핑만 양산형으로 만드네 이 사람?"이라고 물어본다면 할 말 없긴 하지만, 데스크톱 애플리케이션으로 뭐가 좋을까 찾는 중이라고 핑계를 대본다.. 1. Electron 선택 이유 Node.js Desktop app이라고 검색하니까, Electron이 제일 첫 번째 나왔다. 그게 전부다 증거자료를 첨부하겠다. 2. Electron이 최선의 선택이었나? 그건 잘 모르고 그냥 빠른 선택을 했다 앱 실행 화면 스크래핑 결과 화면 3. 역경과 코난 아니고 고난 할 줄 아는 언어라고는 파이썬이라 어려웠음 index.html의 발전과정 scripts 태그 내, 직접 작성하다 보니 너무 길어지고 흉물 그 자체로 변했다. 외부 파일 추가해서 사용하니.. [강좌] 개발자를 위한 ChatGPT 프롬프트 엔지니어링 - Andrew Ng 개발자를 위한 ChatGPT 프롬프트 엔지니어링 서론 앤드류 응 교수님과 OpenAI의 Cookbook 공식 가이드를 만드신 직원분이 1시간 정도 되는 짧은 강의랑 무료로 출시해서 바로 시청하게 되었다. 이번 포스팅은 해당 강의를 보고 간략하게 남겨본다. ChatGPT Prompt Engineering for Developers What you’ll learn in this course In ChatGPT Prompt Engineering for Developers, you will learn how to use a large language model (LLM) to quickly build new and powerful applications. Using the OpenAI API, you’ll..... 이전 1 2 3 4 5 ··· 33 다음