일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 공간복잡도 #공간자원 #캐시메모리 #SRAM #DRAM #시간복잡도
- sasac #aws 클라우드 #아키텍트 과정 #가상화 #vmbox #vmware #esxi #tar #selinux
- 리눅스 #기초 #네트워크 #포트 번호 #역할
- 인바운드 #아웃바운드 #방화벽설정
- samba #가상머신 #daemon
- 리눅스 #
- mysql #linux #설정 #wordpress #웹사이트 #db 연결 #
- 리눅스 #명령어 #사용자 계정 정보 관리
- 비트 #바이트 #이진수
- 쓰레드 #쓰레드풀 #프로세스
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #OSI #ISO #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- 프로세스 #CPU #시공유 #커널
- oracle vmbox #rocky #linux9 #명령어 #암호화인증 #해시알고리즘
- selinux #실행모드 변경 #설정방법
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #웹개발
- virtualbox #vmware #router #nat #pat #네트워크 구성도 #aws #ubuntu #
- haproxy #wordpree #php #linux #가상화 #가상머신 #내용정리
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- ubuntu #설정변경 #vmware #vmbox #linux #명령어
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스
- storage #로컬스토리지 #세션스토리지 #백그라운드 서비스
- vmware #가상화 #aws 클라우드 #아키텍트 #과정 #가상머신 #컨테이너 #docker
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #딥러닝 #AI #서버 #자동화 #SQL #기본문법 #데이터베이스 #DBMS #Oracle #MongoDB #아키텍쳐 #DB
- 리눅스 #기초설정 #가이드 #명령어
- 리눅스 #사용자계정 #정보관리
- 리눅스 #명령어 #내용정리 #mac #특수권한
- 스파르타코딩클럽 #부트캠프 #IT #백엔드 #머신러닝 #AI #서버 #자동화 #SQL #KDT #기본문법 #데이터베이스 #Computer #Science #CPU #메모리
- 명령어 #기초 #비밀번호 설정
- 사용자 그룹관리
- tar #build #배포 #통신포트 #설정방법 #linux #apache
- Today
- Total
목록2024/08 (7)
요리사에서 IT개발자로
🗣️ 프로젝트 개발 환경 선택의 이유우리의 챌린지 플랫폼을 위한 최적의 환경프로젝트 비즈니스 모델 개요우리의 비즈니스 모델은 사용자가 목적성 있는 챌린지에 신청하고, 매일 사진으로 인증하며 포인트를 쌓고 랭킹을 올리는 구조입니다. 이를 통해 사용자가 꾸준히 도전할 수 있도록 유도하는 것이 목표입니다.이 과정에서 사용자 경험을 극대화하고, 안전하며 확장 가능한 플랫폼을 제공하기 위해 아래와 같은 개발 환경을 선택했습니다.🌐 AWS (IAM, EC2, 로드밸런서, S3, Route 53): 안정성과 확장성의 핵심⚙️ 확장 가능한 인프라: 사용자가 늘어날 때 EC2 인스턴스를 통해 서버 자원을 신속히 확장할 수 있어요. 이렇게 하면 트래픽 급증에도 서비스가 끊기지 않고 원활하게 운영됩니다.🔒 보안성 강화..
1. 클라이언트 요청 (Client Request)사용자가 브라우저 또는 REST 클라이언트(예: Postman)를 통해 특정 URL로 API 요청을 보냅니다. 이 요청은 HTTP 요청으로 표현됩니다.2. 디스패처 서블릿 (DispatcherServlet)요청이 웹 서버(Tomcat, Jetty 등)에 도착하면, 이 요청은 Spring의 DispatcherServlet으로 전달됩니다. DispatcherServlet은 요청을 처리하는 핵심 역할을 하는 프론트 컨트롤러로, Spring MVC의 진입점 역할을 합니다.DispatcherServlet의 역할: DispatcherServlet은 요청을 받고, 적절한 컨트롤러(Controller)에 요청을 전달하며, 컨트롤러의 결과를 받아서 적절한 뷰(View)로..
AOP (Aspect-Oriented Programming) - 관점 지향 프로그래밍**관점 지향 프로그래밍(AOP)**은 프로그램의 비즈니스 로직에서 핵심 기능과 부가 기능을 분리하여 관리하는 프로그래밍 패러다임입니다. 핵심 기능은 프로그램의 주된 목적을 달성하는 로직이고, 부가 기능은 이 로직에 반복적으로 적용해야 하는 부수적인 작업(로그 기록, 보안 관리, 트랜잭션 처리 등)을 의미합니다. AOP를 활용하면 부가 기능을 중앙에서 관리할 수 있어 코드의 중복을 줄이고 유지보수를 용이하게 합니다.OOP와 AOP의 차이점1. 개념적 차이OOP (Object-Oriented Programming, 객체 지향 프로그래밍):핵심 개념: OOP는 객체(Object)를 중심으로 프로그램을 설계하는 방법입니다. 객..
네이버에서 제공하는 로그인 API를 프론트엔드에 적용하기 위해 사용할 수 있는 네이버 아이디 로그인 SDK는 사용하지 않았습니다.프론트엔드에서 Naver 로그인시 제공받은 Access토큰을 백엔드에서 받아Naver에 접근하여 유저의 정보를 가지고 온 후에 검증을하고 나의 프로젝트에 맞게 User정보를 리팩토링저장 및 Jwt토큰, 쿠키(리프레시토큰)를 발급 해줍니다. 현재 진행 중인 프로젝트를 일부분을 수정하고 소셜로그인 기능만 보여드리는 것을 보여드리는 것 입니다. 소셜로그인이란?소셜네트워킹 사이트의 정보를 이용해 타사 애플리케이션과 손쉽게 로그인할 수 있는 프로세스https://www.okta.com/kr/blog/2020/08/social-login/ 소셜 로그인이란? 정의, 이점 및 구현 가치소셜..
백엔드에서 정의한 WebSecurityConfig클래스에 permitAll 이 아닌 URI로 접근을 할 경우 인증절차가 되는 방법을 알아보고자 한다. .authorizeHttpRequests(authorize -> authorize .requestMatchers(HttpMethod.POST, "/api/**").permitAll() .requestMatchers(HttpMethod.POST, "/api/signup/**").permitAll() .requestMatchers(HttpMethod.POST, "/api/users/**").permitAll() .requestMatchers(HttpMethod.GET, "/api/challenges/**").permitAll() .r..
TDD(Test -Driven-Development)테스트 주도 개발이라고 한다. 반복 테스트를 이용한 소프트웨어 방법론으로 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현한다. 이 기법으로 유명한 Test-Driven-Development의 저자 Kent Beck은 선 테스트 작성, 후 비즈니스 로직을 작성하여 코드에 자신감이 붙었다고 한다.단위 테스트란(Unit Test)클래스 또는 클래스 내에서 사용하는 메소드 등을 테스트 하는것. TDD개발 주기에 실패하는 테스트 코드를 먼저 작성하고테스트 코드를 성공시키기 위한 실제 코드를 작성한다.중복 코드를 제거, 일반화 등의 리팩토링을 수행한다. 테스트 코드를 작성할 때 까지 실제 코드를 작성하지 않고, 실패하는 테..
CI = 지속적인 통합(Continuous Integration)빌드와 테스트 자동화 CD = 지속적인 전달(Continuous Delivery) 또는 지속적인 배포(Continuous Deployment)배포 자동화 CI/CD 파이프라인이란 코드를 빌드, 테스트, 배포하는 과정을 거쳐서 소프트웨어 개발을 추진하는 프로세스, CI/CD라고 한다.CI는 모든 개발이 끝난 후에 코드 품질을 관리하는 고전적 방식의 단점을 해소하기위해 나타난 개념 지속적인 통합이라는 말 그대로 코드 변경 사항이 정기적으로 빌드 및 테스트되어 매시간 레포지토리에 통합되는 과정을 통해 품질을 유지하며 개발을 진행하는 방법이다. CD는 CI의 연장선CI프로세스를 통과한 코드 버전을 마지막에 배포하는 과정을 말한다. 코드 변경사항이 ..