목록전체 글 (1477)
오늘도 공부
Node.js와 Express를 사용하여 SaaS 형태의 유저 도메인 설정을 처리하는 시스템을 만드는 방법을 단계별로 설명해줄게. 기본적으로 유저가 자신의 도메인을 추가하면 Express 서버가 해당 도메인을 인식하고, Nginx 또는 Express의 미들웨어를 사용하여 트래픽을 라우팅하는 방식으로 진행할 거야.📌 1. 프로젝트 초기 설정1️⃣ Node.js 프로젝트 생성mkdir saas-dnscd saas-dnsnpm init -y2️⃣ 필요한 패키지 설치npm install express body-parser dotenv corsnpm install --save-dev nodemonexpress: 웹 서버body-parser: JSON 요청 처리dotenv: 환경 변수 관리cors: CORS 처리..
SaaS 형태의 플랫폼에서 유저가 자신의 도메인을 사용할 수 있도록(DNS 설정을 받아서 연결) 하려면, 다음과 같은 주요 개념과 기술을 이해하고 적용해야 합니다.1. 유저 도메인 연결 방식SaaS에서 유저가 자신의 도메인을 연결하는 방식은 크게 두 가지로 나뉩니다.✅ CNAME 방식 (권장)사용자가 자신의 도메인을 CNAME 레코드를 통해 SaaS의 서브도메인(예: user.your-saas.com)에 매핑.일반적인 방법이며, 클라우드 기반 SaaS에서 널리 사용됨.단, 루트 도메인(Apex 도메인, 예: example.com)에는 CNAME을 사용할 수 없다는 제한이 있음.설정 예시blog.example.com CNAME user.your-saas.com이 설정을 하면 blog.example.com으..
NestJS에서 추천하는 아키텍처 패턴은 여러 가지가 있지만, 대표적으로 Layered Architecture (레이어드 아키텍처), Hexagonal Architecture (헥사고날 아키텍처), Microservices Architecture (마이크로서비스 아키텍처), CQRS (Command Query Responsibility Segregation) 등의 패턴이 많이 사용돼. 각각의 패턴을 설명할게.1. Layered Architecture (레이어드 아키텍처)개요가장 기본적인 NestJS 아키텍처Controller, Service, Repository (또는 Model) 계층을 분리작은 프로젝트부터 대규모 프로젝트까지 적용 가능구성 요소Controller : HTTP 요청을 처리하고, 적절한 ..
NestJS 개발을 위해 필수적으로 알아야 할 내용을 핵심 개념 중심으로 정리해 보겠습니다1. NestJS 개요NestJS는 TypeScript 기반의 Node.js 프레임워크로, Angular 스타일의 구조를 가져와 대규모 애플리케이션 개발에 최적화된 백엔드 프레임워크야. Express.js 또는 Fastify를 내부적으로 사용하고, **의존성 주입(DI)**과 데코레이터 기반 프로그래밍을 지원해.2. 주요 개념1) 모듈 (Modules)모듈은 NestJS의 핵심 개념으로, 기능별로 코드를 분리하여 재사용성과 유지보수성을 높여줘.import { Module } from '@nestjs/common';@Module({ imports: [], // 다른 모듈을 가져옴 controllers: ..
https://youtu.be/XvhS1bvKnO8?si=w7FgDDuXgtzCjwA2🚀 A16Z 파운더가 말아주는 스토리 프로토콜1. 비전과 창작의 모듈화- 데이터와 지식재산(IP)을 레고 블록처럼 활용할 수 있도록 하는 것을 목표로 함.- 창작자는 자신의 콘텐츠를 자유롭게 결합하고 수익 조건을 설정할 수 있음.- 이를 통해 창작 경제를 강화하고 창작자가 경제적 통제권을 가질 수 있도록 함.2. 크리에이터를 위한 새로운 기회- Magma: 200만 이상의 사용자 기반을 가진 전문 아트 툴 플랫폼.- Ablo: 브랜드와 IP를 블록체인에 통합하여 디자인 보호 및 로열티 지급 가능.- Stability AI: 오픈 소스 모델을 통해 디지털 창작자가 경제적 자립을 할 수 있도록 지원.- 블록체인을 활용해 ..
DataTables에서 대용량 리스트를 서버와 연동하여 페이징 처리하는 방법DataTables를 사용할 때 데이터가 많으면(예: 수천~수백만 개의 행) 클라이언트에서 모든 데이터를 로드하는 것은 비효율적입니다. 이런 경우 서버사이드 페이징(Server-side Processing) 방식을 사용하여 필요한 데이터만 불러오는 것이 좋습니다.---1. 서버사이드 페이징 개요서버사이드 페이징을 사용하면 DataTables가 특정 페이지의 데이터만 요청하고, 서버에서 필요한 부분만 응답합니다. 이를 위해 AJAX를 이용하며, 요청 시 다음과 같은 파라미터가 서버로 전달됩니다.클라이언트에서 서버로 전달되는 요청 값---2. 클라이언트 측(DataTables) 설정JavaScript 코드$(document).read..
오늘 메인 거래소 상장중이네요Okx 현물 상장이어 여러군데서 상장중이네요파이코인(Pi Network) 개요파이코인(Pi Network)은 2019년 스탠퍼드 대학 출신 개발자들이 시작한 암호화폐 프로젝트로, 모바일 기기를 통해 채굴할 수 있도록 설계된 것이 특징입니다. 기존 암호화폐(예: 비트코인)와는 달리, 특수한 채굴 장비 없이 스마트폰에서 채굴이 가능하도록 만들어졌습니다.파이코인은 중앙화된 은행 시스템 없이 블록체인 기술을 활용해 안전한 거래를 목표로 하며, 개발 초기부터 커뮤니티 중심의 생태계를 강조해왔습니다. 하지만 현재까지 정식 메인넷(Mainnet) 출시가 지연되고 있으며, 실제 거래소 상장이 되지 않아 가치는 불확실합니다.---파이코인 채굴 방법Pi Network의 가장 큰 특징 중 하나는..
Fail2Ban이란?Fail2Ban은 서버의 보안 강화를 위한 **침입 방지 도구(IDS, Intrusion Detection System)**입니다. 주로 **SSH, 웹 서버(Nginx, Apache), API 서버(NestJS 등)**에서 반복적인 로그인 실패나 악의적인 요청을 감지하고, 해당 IP를 차단하는 역할을 합니다.NestJS를 배포할 때 Fail2Ban을 사용하면 보안이 강화되며, 특히 Brute Force Attack(무작위 로그인 시도), DoS 공격 등을 방지하는 데 유용합니다.📌 Fail2Ban의 주요 기능기능 설명로그 감시특정 서비스(Nginx, SSH, API 등)의 로그 파일을 감시반복 로그인 실패 감지일정 횟수 이상 로그인 실패 시 감지IP 차단감지된 IP를 방화벽(ipt..
Cursor IDE에서 Rule 작성하는 방법Cursor IDE는 AI 기반의 코드 편집기이며, 다양한 확장성과 자동화 기능을 제공합니다. Rule을 작성하는 것은 Cursor에서 특정 코드 패턴을 자동 수정하거나 가이드하는 데 활용됩니다.1. Cursor Rule이란?Cursor Rule은 코드 스타일, 코드 변환 또는 특정 패턴을 탐지하여 자동 수정할 수 있는 규칙을 설정하는 기능입니다. 이를 활용하면 팀 내 일관된 코드 스타일을 유지하거나 반복적인 수정 작업을 자동화할 수 있습니다.Rule의 주요 기능특정 코드 패턴을 감지자동 코드 변환경고 또는 추천 메시지 표시특정 코드 스타일 강제 적용2. Cursor Rule 작성 방법Cursor에서 Rule을 작성하려면 .cursor/rules.json 또는..
가입 및 로그인 과정에서 access_token과 refresh_token을 이용하는 방식은 보통 OAuth 2.0 및 JWT(JSON Web Token) 기반 인증 시스템에서 사용됩니다. 이를 단계별로 자세히 설명하겠습니다.1. 회원가입 (Sign Up)회원가입 과정에서는 보통 access_token과 refresh_token이 사용되지 않습니다. 하지만 인증이 필요한 API에서는 사용될 수 있습니다.사용자가 회원가입 요청사용자가 이메일, 비밀번호, 또는 소셜 로그인(Google, Facebook 등)을 사용하여 가입 요청을 보냄.요청 예시 (REST API):POST /api/auth/signup HTTP/1.1Content-Type: application/json{ "email": "user@ex..
