Docker credential 문제
·
Docker
필자는 openresty를 도커로 실행하기 위해 docker-compose up 이라는 명령어를 사용했으나 인증 문제로 인해 명령어가 거절당했다.  해당 docker 링크에 접속하여 confimation code를 입력하고 docker login 해당 명령어를 입력했으나 역시 같은 이유로 거부되었다. 하지만~/.docker/config.json 해당 경로로 가서 "credsStore": "desktop" 부분을 지우면 docker-credential-desktop을 사용하지 않도록 설정하고, 자격 증명을 수동으로 입력하고 Docker CLI에서 직접 로그인이 가능하다 하지만 "credsStore": "desktop"을 지우게 되면 보안 이슈가 발생 가능성이 있기에 정 안될때 최후의 수단으로 추천한다.
Signed URL
·
AWS
AWS S3의 Signed URL은 AWS S3 버킷에 저장된 객체에 대해 제한된 시간 동안 인증된 접근 권한을 부여하는 URL입니다. 보통 S3 버킷의 객체는 기본적으로 비공개(private)로 설정되어 있기 때문에 특정 사용자가 애플리캐이션에게만 접근 권한을 주기 위해 Signed URL을 사용합니다. 주요 특징임시 접근 권한Signed URL은 생성 시 지정한 만료 시간(expiration time) 이후에는 사용할 수 없으므로 일시적인 접근 권한을 부여할 때 유용합니다. 보안성URL에 포함된 서명(signature)은 요청이 변경되지 않았음을 보장하며, AWS 자격 증명을 사용해 생성되기 때문에 외부에서 위변조하기 어렵습니다. 다양한 활용 사례파일 다운로드: 사용자에게 파일 다운로드 권한을 임시로..
유저가 다운받은 파일 조회한 것을 클라이언트(셀러)가 조회할 때의 flow chart
·
퍼블엘
유저가 웹에서 게시된 파일(PDF, VOD, 등등)을 다운 받았을때 셀러가 유저가 어떤 파일을 다운받았고 얼마나(채널, 컨텐츠, 유저) 다운 받았는지 알기 위해 해당 api를 개발하게 되었다. Records/users    target_id: 다운로드 받은 유저의 고유한 id target_id 기준으로 조회type = daliy :  유저별로 다운받은 기록을 일별로 조회한다.type = monthly : 유저별로 다운받은 기록을 월별로 조회한다.type = combined : 유저별로 다운받은 기록을 일별, 월별로 조회한다.컨텐츠를 다운로드 한 유저가 있어야 한다. 없을 시 -> 404 NOT FOUND Records   channel_id : 셀러가 생성한 채널의 고유한 id (여기서 채널은 샐러가 생..
Niginx란?(openresty 사용)
·
Nginx
Nginx(엔진엑스)는 고성능 웹 서버 소프트웨어이자 리버스 프록시, 로드 밸런서, HTTP 캐시 등 다양한 역할을 수행할 수 있는 오픈 소스 솔루션이다. 높은 성능과 효율성:Nginx는 이벤트 기반 아키텍처를 사용하여 다수의 동시 연결을 효율적으로 처리할 수 있습니다. 이를 통해 높은 트래픽 상황에서도 빠른 응답 속도를 유지할 수 있다.낮은 메모리 사용량:동시 접속 수가 많아져도 메모리 사용량이 적어 서버 자원을 효율적으로 사용할 수 있다.리버스 프록시 및 로드 밸런싱:웹 애플리케이션의 트래픽을 여러 서버로 분산시키거나, 클라이언트의 요청을 백엔드 서버로 전달하는 리버스 프록시 기능을 제공합니다. 이를 통해 부하 분산과 장애 조치(failover)를 구현할 수 있다.정적 파일 서빙:정적 콘텐츠(HTML..
Spring Boot 핵심 개념
·
Spring
1. 자동 구성(Auto-Configuration)클래스패스 스캔: Spring Boot는 애플리케이션 실행 시 클래스패스에 있는 라이브러리와 설정 파일을 스캔한다.조건부 설정: 특정 라이브러리가 존재하거나, 특정 빈(bean)이 없는 경우에만 자동으로 설정을 적용한다. 2. 의존성 주입 (Dependency Injection)와 제어의 역전 (IoC)의존성 관리: 스프링 프레임워크의 핵심 개념인 DI와 IoC를 통해 애플리케이션 내의 객체 간의 의존성을 스프링 컨테이너가 관리한다.유연성 및 테스트 용이성: 객체들이 직접 생성되기보다는 컨테이너에 의해 주입되므로, 코드의 결합도를 낮추고, 테스트 및 유지보수가 용이해진다. 3. 스타터 의존성 (Starter Dependencies)편리한 의존성 관리: s..
Dispatchservlet이 Spring boot에서 controller로 이동하는 과정
·
Spring
1. 요청(Request)클라이언트가 HTTP 요청을 보내면, Spring boot의 내장 웹 서버(Tomcat, Jetty 등)가 이를 수신한다. 2. DispatcherServlet을 통한 요청 처리Spring Boot는 DispatcherServlet을 중앙 컨트롤러(Front Controller)로 사용한다.이 DispatcherServlet은 모든 요청을 받아 적절한 핸들러(Controller)로 전달하는 역할을 한다.Spring Boot 실행 시 DispatcherServlet이 자동으로 등록된다.기본적으로 모든 URL패턴(/*) 을 처리하도록 매핑된다. 3. HandlerMapping을 통한 컨트롤러 탐색DispatcherServlet은 요청된 URL과 매칭되는 컨트롤러를 찾기 위해 여러 H..
MySQL 엔진 종류
·
SQL 정리
MySQL은 여러 가지 스토리지 엔진(Storage Engine) 을 지원하며, 이는 데이터가 디스크에 저장되고 처리되는 방식을 결정한다. 각각의 엔진은 성능, 트랜잭션 지원, 데이터 무결성, 잠금 메커니즘 등에서 차이가 있다.  InnoDB(기본엔진)특징: 트랜잭션 지원 (ACID 준수)외래 키(Foreign Key) 제약 조건 지원자동 복구 기능다중 버전 동시성 제어(MVCC)로 높은 동시 처리 성능사용 사례:대규모 애플리케이션, 데이터 무결성이 중요한 경우 (ex: 은행, 쇼핑몰)기본 설정CREATE TABLE example ( id INT PRIMARY KEY, name VARCHAR(50)) ENGINE=InnoDB;  MyISAM (이전 기본 엔진) 특징:트랜잭션 미지원 (비-ACID)외래..
Linux란
·
카테고리 없음
Linux®는 리눅스 토르발스(Linux Torvalds)가 1991년에 개발한 오픈소스 운영 체제(OS)로, 오늘날 막강한 사용자 기반을 확보하고 있으며 세계에서 가장 강력한 슈퍼컴퓨터 500대에서 사용되고 있습니다. Linux의 인기가 높은 이유는 여러 가지지만 특히 유연성과 보안 기능 덕분입니다. Linux 커널은 전 세계 오픈소스 매니아 커뮤니티에서 계속 사용하고 있고 고유 배포판이 수백 개나 됩니다. - Red Hathttps://www.redhat.com/ko/topics/linux/what-is-linux Linux란?Linux는 OS의 기본 구성 요소인 커널과 함께 번들로 제공되는 툴, 애플리케이션, 서비스로 구성되는 오픈소스 운영 체제입니다.www.redhat.com Linux 환경은 L..
gRPC란?
·
Web지식/네트워크
gRPC는  Google에서 개발한 오픈 소스 원격 프로시저 호출(Remote Produce Call RPC) 프레임워크로, 고성능의 분산 시스템이나 마이크로서비스 아키텍쳐에서 서비스 간 통신을 효과적으로 수행할 수 있도록 설계되었다.  기본 개념RPC(Remote Produce Call)RPC는 네트워크를 통해 다른 서버나 서비스에 있는 함수를 로컬 함수처럼 호출할 수 있게 해주는 통신 방식입니다. gRPC는 이러한 RPC 방식을 기반으로 하여 클라이언트와 서버 간의 직접 호출을 쉽게 구현할 수 있게 도와준다. gRPC의 정의gRPC는 고성능, 다중 언어 지원, 그리고 효율적인 네트워크 통신을 목표로 개발된 RPC 프레임워크이다. 주요 특징 HTTP/2 기반gRPC는 전송 계층 프로토콜로 HTTP/2를..
AWS Lamda란?
·
AWS
AWS Lambda는 이벤트에 대한 응답으로 코드를 실행하고 컴퓨팅 리소스를 자동으로 관리하는 컴퓨팅 서비스로, 아이디어를 최신 프로덕션 서버리스 애플리케이션으로 전환하는 가장 빠른 방법입니다. - AWS Lamda 공식 홈페이지 https://aws.amazon.com/ko/lambda/ 클라우드 컴퓨팅 PaaS | Amazon Web ServicesAWS Lambda를 사용하여 1만 8,000개 이상의 vCPU로 즉시 스케일 아웃하여 리소스 집약적이고 예측할 수 없는 수요를 충족하세요. 기타 서버리스 제품 및 서비스와 이벤트 트리거 모음을 사용하여 처리aws.amazon.comAWS Lambda는 Amazon Web Services(AWS)에서 제공하는 서버리스(Serverless) 컴퓨팅 서비스이다..