공부하고 기록하는, 경제학과 출신 개발자의 노트

분류 전체보기 498

istio 개념 정리 (1) - Service Mesh와 istio

Istio Istio : Service Mesh의 한 종류. Service Meshcluster-based MicroService 프로젝트가 많아지면서, k8s와 같은 Orchestration tool만으로는 기능 요구사항을 맞추기 어려워지며 대두된 서비스.일종의 Extra Layer of Software that you deploy alongside k8s.Multiple Software Components가 서로 통신하고 연결되어 있는 Distributed Architecture라면 사용할 수 있음. 반드시 K8s 환경에서만 쓰이는 게 아님. 예시를 위한 도식. 각 Microservice에는 pod가 있고, 보통 하나의 pod에는 하나의 Container가 있다. 각각의 microservice는 Se..

KubeCon 2018 - Using gRPC for long-lived and Streaming RPCs

Using gPRC for long-lived and Streaming RPCs 발표자: Eric Anderson - gRPC Java 팀 tech lead. Google에서 근무 발표자료: https://kccna18.sched.com/event/GrWo 발표영상: https://youtu.be/Naonb2XD_2Q Long-Lived gRPC란? RPCs that last minutes / hours/ days. Long polling (Hanging Get). 예컨대 서버에서 특정 이벤트가 발생할 때까지 대기하는 로직. 강연에서는 Notification / Watches를 예시로 들었음. Hanging Get : 서버에서 요청에 응답할 데이터가 없는 경우, 해당 데이터를 사용할 수 있게 될 때까지 ..

if kakao 2021 - PostgreSQL ecosystem

https://if.kakao.com/session/59 if(kakao)2021 함께 나아가는 더 나은 세상 if.kakao.com PostgreSQL EcoSystem 1996년 오픈소스 프로젝트로 오픈됨. 현재까지도 1년에 한 번은 메이저 버전이 오픈됨. Extension: 다양하고 실험적인 기능을 패키지 형태로 제공하는 기능. 예시: 데이터 암호화 기능 (pg), pivot table 쿼리를 쉽게 구현할 수 있는 tablefunc. FDW : Foreign Data Wrapper 원격지의 데이터를 로컬 table처럼 사용할 수 있게 해주는 extension. 원격 데이터 + 로컬 데이터 join이나 DML 실행이 가능함. 데이터 처리 로직을 보다 간단히 구현할 수 있음. Orafce : 오라클과 ..

Fluentd 정리: Open Source Log Data Collector

https://www.youtube.com/watch?v=5ofsNyHZwWE Why we Need Logs? k8s에 여러 MicroService 앱이 배포되어 있다고 가정하자. nodejs / python postgres DB RabbitMQ 각각의 앱은 "어떤 동작을 하고 있는지" 로그를 생성한다. 로그는 보통 아래 세 가지 목적으로 쓰임. Compliance Security Debugging How Application Logs data? Write to files. 일반적인 방식. 단, 로그데이터 분석에는 제약이 따름. UI나 visualization tool 없이는 cross application log 확인도 어려운 편 로그마다 format도 다름 (timestamps, log level 등..

학습일지 2022.08.03

if kakao 2021 - 스마트 메시지 서비스 개발기 (kafka Streams)

스마트 메시지 서비스 개발기 (Kafka Streams) https://if.kakao.com/session/22 if(kakao)2021 함께 나아가는 더 나은 세상 if.kakao.com 스마트 메시지: 카카오톡 채널 광고메시지 서비스의 일종. 소재 최적화: 여러 광고시안 중 어떤 소재가 가장 반응률이 높을 것인지 유저 타겟팅: 반응률이 높을 것 같은 유저 타겟팅. 광고 등록을 요청하면, 스마트메시지 시스템에 요청이 등록됨. 스마트메시지 시스템은 카톡 채널 로그로부터 모델을 학습해서, 소재최적화 / 유저타겟팅 대상을 선정한다. 메시지를 보내면, 반응 로그가 kafka로 유입. 스마트메시지 시스템이 다시 학습에 사용함. 광고 집행이 끝나면 리포트 생성 -> 광고주가 확인할 수 있도록 전달. 프로덕트 아..

강연 2022.07.12

Token-based Authentication - JWT의 단점과 PASETO

아래 글과 유튜브 영상 내용을 학습하면서 기록한 포스트 https://dev.to/techschoolguru/why-paseto-is-better-than-jwt-for-token-based-authentication-1b0c Why PASETO is better than JWT for token-based authentication? JWT vs PASETO Nowadays, token-based authentication has become more and more popular in the... dev.to https://youtu.be/nBGx-q52KAY Why Paseto is better than JWT? Token-based Authentication 방식에서 많이 사용되는 게 JWT. 그..

KubeCon 2022 Europe - Crack the FaaS Cold Start and Scalability BottleNeck

https://youtu.be/RUfcc-OpBAM What is FaaS? An Event-Drive Architecture based Computing service provided by Cloud Service Providers which allocates containers/MicroVMs on demand to run the developers' function code in response to event request. 3 Key Feature Automatic On-Demand instantiation of function instances to run the function code, upon a trigger event. 트리거 이벤트가 있을 때, 온디맨드로 사용자의 코드를 실행할 수 ..

강연 2022.06.21

KubeCon 2022 Europe - Create your first CNCF Serverless Workflow Project with Kogito and Knative

Create your first CNCF Serverless Workflow Project with Kogito and Knative 선요약 Kogito: Redhat에서 진행중인 knative serving / eventing 컴포넌트의 조합을 묶어 workflow를 구성해 주는 프로덕트 사용자에게서 json / yaml 형태의 선언형으로 input을 받고, 주어진 값을 토대로 quarkus을 활용해서 knative object를 만들어준다 추후에는 low code 형태로도 개발해서 소스코드를 입력하지 않고도, 비개발자도 사용할 수 있는 방향을 구상하고 있다고 함. CNCF Serverless Workflow project - Kogito CNCF Sandbox incubating project로, D..

강연 2022.06.18

KubeCon 2022 Europe - Empower Autonomous Driving with Cloud Native Serverless Technologies

https://youtu.be/gPee28M04R8 Empower Autonomous Driving with Cloud Native Serverless Technologies - Benjamin Huo & Xiuming Lu 자율주행 & Cloud Native Serverless. OpenFunction: Cloud Native FaaS Platform. 왜 사용했는가 / 어떻게 사용하는가. k8s의 등장은 Multi-cloud / hybrid-cloud / distributed cloud 등 여러 형태로 cloud agnostic (클라우드 불가지론) 을 가능하게 했음. Cloud Agnostic : refers to tools, platforms, or applications that are comp..

강연 2022.06.16

Transaction Isolation - MySQL과 Postgresql 비교

Transaction Isolation Level / read phenomena ACID 4요소 중 하나가 isolation. 가장 높은 수준의 isolation -> all concurrent txn will not affect each other. 반대로 말하면, txn이 다른 txn에게 영향을 줄 수 있는 정도가 구분된다는 뜻. 이걸 Read Phenomenon이라 부른다. Dirty Read : uncommitted txn값을 읽어들이는 것. txn이 commit일지 rollback일지 알 수 없기 때문에 incorrect data를 사용하게 될 가능성이 높음 Non-Repeatable Read : 동일한 쿼리 요청을 했는데 응답값이 달라지는 경우 Phantom Read : 2와 비슷하지만, 하나..