[requests 라이브러리] 내가 아는 timeout은 너무 추상적이였어..2023. 10. 28.31분requests 라이브러리를 사용하여 python에서 HTTP 통신을 할 때 timeout 파라미터를 사용하여 응답을 기다리는 시간을 제한할 수 있다. 그러나 timeout 값이 정확히 어떤 순간을 의미하는지에 대해 혼동이 있을 수 있다. 이 글에서는 timeout 값이 client에서 server의 응답을 받는 시간을 의미한다고 가정하고, 실제 코드를 통해 그 동작을 확인해보았다. 또한, ConnectionTimeoutError와 ReadTimeoutError가 어디서 발생하는지와 timeout을 초과하는 경우에 왜 에러가 발생하지 않는지에 대해서도 알아보았다.
프로그래밍 명명법2023. 10. 22.0분파스칼 명명법(NameIs)을 쓸것//파일이름 #include "Name" using namespace Name Using Name //타입이름(클래스, 구조체, 컴포넌트) class Cls{} struct Str{} function Compon{ return {} } //속성 class Cls{ int num; int Num{ get{ return num; } set; } } //함수이름 public void Method{ return; } 카멜 명명법(nameIs)을 쓸것//변수이름 int num; str let arr=[] …
Spark 맛보기 - 2. 스파크 애플리케이션 개념2023. 10. 22.2분스파크 애플리케이션은 스파크 드라이버 프로그램과 클러스터의 실행기로 구성되며, SparkSession 객체를 통해 스파크 연산을 수행하는 API를 사용하여 프로그래밍할 수 있습니다. 스파크 애플리케이션은 여러 개의 job으로 변환되고, 각 job은 DAG로 변환되어 실행 계획이 됩니다. 연산은 여러 스테이지로 나뉘며, 각각의 스테이지는 최소 실행 단위인 스파크 task로 구성됩니다. SparkContext는 Spark 애플리케이션의 진입점이며, SparkSession은 SparkContext, SQLContext, HiveContext 등을 통합한 단일 진입점입니다.
Spark 맛보기 - 1. Spark란?2023. 10. 21.6분Apache Spark는 대규모 분산 데이터 처리를 위해 설계된 통합형 엔진으로, 속도, 사용 편의성, 모듈성, 확장성이라는 핵심 특성을 가지고 있다. Spark는 메모리 저장소를 지원하여 MapReduce보다 훨씬 빠르게 동작하며, MLlib, Spark SQL, Spark Streaming, GraphX 등의 라이브러리를 포함하고 있다. Spark는 스파크 코어를 중심으로 다양한 컴포넌트들이 함께 동작하며, 분산 아키텍처를 통해 데이터를 처리하고 분석하는 통합 엔진으로 사용된다.
파이썬 디렉토리 다루기2023. 10. 17.0분디렉토리 다루기#디렉토리 경로 import os os.getcwd() #현재 디렉토리 경로가 반환 os.chdir(path) #작업 디렉토리 경로가 변경 os.listdir() #현재 디렉토리의 리스트를 보여줌 os.listdir(path) #디렉토리의 리스트를 보여줌 os.path.exists(path) #파일,디렉토리가 있는지 확인 os.path.isdir(path) #디렉토리가 있는지 확인 os.path.isfile(path) #파일 존재 확인 os.path.getsize(path) #파일 사이즈 확인 os.makedirs(path) #디렉토리 생성 makedirs는 마지막 디렉토리가 존재하면 오류발생
Angular :: Component - 22023. 10. 17.10분앵귤러 컴포넌트에서 자식 엘리먼트 참조 및 컨텐츠 프로젝션에 대해 알아봅니다. @ViewChild를 사용하여 자식 컴포넌트를 참조하고 <ng-content> 태그를 활용하여 컨텐츠를 전달하는 방법을 다룹니다. 단일 및 다중 슬롯 컨텐츠 프로젝션에 대해 살펴보며 조건부 렌더링 방법도 소개합니다.
Angular :: Component - 12023. 10. 16.11분Angular 컴포넌트는 화면을 구성하는 기본 단위로 HTML 템플릿과 동작을 포함합니다. 컴포넌트의 라이프사이클 메서드는 초기화 및 상태 변화를 관리합니다. 스타일 캡슐화는 Shadow DOM, Emulated, 또는 캡슐화하지 않는 None 옵션 중에서 선택할 수 있습니다. 데이터 바인딩은 Input을 통해 부모 컴포넌트로 데이터 전송을 하고, Output과 EventEmitter를 통해 이벤트 바인딩을 처리할 수 있습니다.
Angular :: HttpClient2023. 10. 13.14분Angular의 HttpClient 모듈은 서버 통신을 간편하게 처리하는 도구로, Observable을 통해 비동기적으로 데이터를 요청 및 응답 처리합니다. Interceptor를 사용하여 요청 및 응답을 가공하여 데이터 캐싱과 같은 기능도 만들 수 있습니다. 모듈을 임포트하고 서비스에서 HttpClient를 주입하여 사용하며, 다양한 옵션과 Pipe 함수를 통해 요청 및 응답을 다룰 수 있습니다.
Angular :: Dependency Injection2023. 10. 10.5분Angular에서 의존성 주입은 놀랍게도 자동화되어 있습니다. 컴포넌트 생성자에 매개변수로 서비스를 선언하면 Angular 인젝터가 필요한 서비스를 주입해줍니다. 서비스의 재사용과 관심사 분리를 촉진하며, @Injectable로 등록된 서비스는 providedIn 설정을 통해 최적화된 싱글톤으로 관리됩니다. 또한, @Optional, @Self, @SkipSelf, @Host와 같은 데코레이터를 사용하여 의존성 주입 토큰을 제어할 수 있습니다.
Angular :: Directive2023. 10. 09.7분Angular 디렉티브는 HTML 요소 동작 및 모양을 제어하는데 사용됩니다. 기본 어트리뷰트, 구조 디렉티브, 커스텀 디렉티브, 커스텀 구조 디렉티브로 나뉘며, 사용자 정의 디렉티브를 생성하여 HTML 요소에 동작 및 스타일을 추가할 수 있습니다.
c++ 요약2023. 10. 08.12분C++ 요약C++ 기초 임포트. 입출력 #include <iostream> //iostream 헤더를 임포트 #include <stdio.h> using namespace std; //네임스페이스 선언 int main() { //방법 1 string s; scanf_s("%s", &s); printf("지역변수 : %s", s); //방법 2 string a; // cin >> a; //입력 getline(cin,a)가 띄어쓰기도 포함해줌 std::cout << a; //출력. 네임스페이스를 명시적 선언 return …
자바스크립트 요약2023. 10. 08.14분자바스크립트 요약자바스크립트 기초 자바스크립트 입출력 import * as readline from "readline" const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); rl.on("line", (line) => { console.log("input: ", line); rl.close(); }); rl.on("close", () => { process.exit(); }); 자바스크립트 자료형과 선언 //선언후에도 파이썬 처럼 자료형 변경이 자유로움 let id=10 //변수 const name="이름" //상수 …
파이썬 요약 2023. 10. 07.16분파이썬 요약파이썬 기초 import math import sys class test: def __init__(self, arr): self.arr=arr def logArr(self): for i in self.arr: print(i) inp = list(map(int,sys.stdin.readline().split())) cls=test(inp) cls.logArr() 파이썬 입출력 #입력 방법1 inp=input("값을 입력하세요") #값을 입력하지 않으면 빈 문자열 #방법2 단일 정수를 받을 때 import sys inp = int(sys.stdin.readline()) #방법 3 여러 정수를 …
[서평] 세상 끝의 카페2023. 09. 16.1분이 책은 생각할 거리를 제공하며, 편한 것을 추구하는 우리에게 새로운 아이디어와 기회를 얻기 위해 새로운 방향으로 나아가야 함을 알려줍니다. 또한, 만족스러운 삶과 열심히 사는 사람들의 영향력에 대해 이야기하며, 자신이 진정으로 원하는 일을 조금씩 해나가야 한다는 메시지를 전달합니다.
[스타트업] 업계에서 통용되는 스타트업 관련 주요 용어2023. 08. 24.3분Start-Up 용어 정리, 스타트업: 실리콘밸리에서 시작된 용어로 설립한지 오래 되지 않은 신생 창업기업 기술과 아이디어를 가지고 있지만 시드머니(초기자금)가 부족한 경우가 많다. 린 스타트업: 시장의 반응을 파악하기 위해 시제품을 만들어 성과를 측정하고 다음 제품 개선에 반영하는 전략 '제작-측정-학습'의 과정을 반복하여 성공확률을 높인다. MVP(Minimum Viable Product): 최소 기능 제품의 약자로 제품을 출시할 …
기술블로그 시작!!2023. 08. 24.0분저는 2023년 7월부터 개발을 시작한 초보 개발자입니다. 창업을 위한 개발을 하고 있습니다. 기록 및 회고를 위한 블로그를 작성 예정입니다!! 잘부탁드려요!
안드로이드 폰을 개발 서버로 만들기2023. 08. 15.8분이 글에서는 Debian 컨테이너를 띄우고 code-server를 활용해서 브라우저 내에서 VSCode 환경으로 접근해서 개발 작업을 진행할 수 있도록 하는 것, ssh로 원격으로 접근할 수 있는 방법, GUI가 필요한 경우를 대비해 VNCserver 설정 과정을 다루고 있다.
termux 'process completed signal 9 press enter' 해결2023. 08. 12.2분안드로이드 12부터 생겨난 팬텀 프로세스 모니터를 비활성화하여 termux가 강제로 종료되지 않도록 작업하는 글이다.
setInterval 대신 setTimeout 쓰기2023. 08. 07.4분setInterval은 지정한 간격마다 무조건 실행되어 정확한 타이밍을 보장하지 않고, 실행 시간이 길어지면 문제가 발생할 수 있다. 따라서 setTimeout을 사용하여 콜백 실행 후 남은 시간만큼 간격을 조절하는 방식이 더 안정적이며, 실행 시간이 예측 어려운 경우 일관된 간격으로 실행되도록 개선할 수 있다.