플래티어 연구소 테크 블로그
    • 메뉴 닫기
    • 글작성
    • 방명록
    • 환경설정
      • 분류 전체보기 (479)
        • Ai Word 사전 (0)
        • A.I.(인공지능) & M.L.(머신러닝) (96)
          • Development Environments (9)
          • A.I. Information (14)
          • Python (6)
          • transformers (13)
          • 머신러닝 (1)
          • 딥러닝 (4)
          • 신경망 이론 (5)
          • LLM (33)
          • Agent (4)
        • DevOps와 Infra (65)
          • DevOps 일반 (23)
          • Docker Container (3)
          • Linux (2)
          • AWS EKS (16)
          • AWS (6)
          • Kubernetes On Premise (13)
          • Security (1)
          • IDC 서버 (1)
        • 검색엔진 (8)
          • Elasticsearch (5)
          • Opensearch (3)
        • 빅데이터 (31)
          • Mongo DB (4)
          • Apache Nifi (21)
          • Scala (4)
          • Apache Spark (2)
        • 네트워크 (2)
          • SSL (2)
        • Quality Assurance (3)
          • E2E Test (3)
        • Backend(Framework) (42)
          • Java (2)
          • Spring (1)
          • Spring Boot Batch (3)
          • NestJS (9)
          • NestJS 개요(공식문서 번역) (20)
          • Cache (3)
          • Rust (4)
          • Go (0)
        • Frontend (Next.js Tailwind .. (52)
          • Frameworks (6)
          • Next.js (30)
          • Typescript (1)
          • Tailwind CSS (9)
          • React.js (4)
        • Next.js 개발 가이드 (42)
          • 01. Set up (7)
          • 02. 코딩 가이드 및 필수 패키지 (9)
          • 03. 퍼블 가이드 (3)
          • 04. Data fetching (2)
          • 05. State management (3)
          • 06. Learn Next.js 공식 가이드 (18)
        • Nuxt 공식문서 번역 (96)
          • 개요 (15)
          • Directories (23)
          • Components (12)
          • Composables (21)
          • Utils (25)
        • Nuxt 개발 가이드 (13)
          • 01. Set up (9)
          • 02. 코딩 가이드 및 필수 패키지 (0)
          • 03. 퍼블 가이드 (0)
          • 04. Data fetching (3)
          • 05. State management (1)
        • Tech 공유 세미나 - 2차 (13)
        • 기타 (15)
          • IT기타 (7)
          • story (5)
          • 문정역 여기어때 (2)
    Backend(Framework)/NestJS 개요(공식문서 번역)

    2. Controller

    컨트롤러는 들어오는 요청을 처리하고 클라이언트에 응답을 반환하는 일을 담당한다 . 구조 애플리케이션은 특정 요청을 처리하기 위해 컨트롤러를 필요로 한다, 라우팅 메커니즘은 어떤 컨트롤러가 어떤 요청을 수신하는지 제어하고, 각 컨트롤러는 둘 이상의 경로가 있는 경우가 많으며, 서로 다른 경로가 다른 작업을 수행한다. 기본 컨트롤러를 생성하기 위해 클래스와 데코레이터를 사용한다. 데코레이터는 클래스를 필수 메타데이터와 연결하고 요청을 해당 컨트롤러에 연결하는 기능을 한다. CRUD 생성기를 사용하면 빠르게 컨트롤러를 생성할 수 있다. # 예) nest g resource cats nest g resource {리소스명(통상 모델명)} 라우팅 @Controller() 데코레이터를 class 선언위에 경로 접두..

    2023. 11. 5. 12:20 / Tech정개블
    DevOps와 Infra/Kubernetes On Premise

    4. Service (2/2) - Istio

    소개 Istio는 기존 분산 애플리케이션에 투명하게 계층화되는 오픈 소스 서비스 메시 이다. Istio는 서비스를 보호하고, 연결하고, 모니터링하는 효율적인 방법을 제공 해준다. Istio는 서비스 코드 변경이 거의 또는 전혀 없이 로드 밸런싱, 서비스 간 인증 및 모니터링을 위한 경로이며, 컨트롤 플레인은 다음과 같은 중요한 기능을 제공한다.. TLS 암호화, 강력한 ID 기반 인증 및 권한 부여를 통해 클러스터에서 서비스 간 통신을 보호. HTTP, gRPC, WebSocket 및 TCP 트래픽에 대한 자동 부하 분산. 풍부한 라우팅 규칙, 재시도, 장애 조치 및 결함 주입을 통해 트래픽 동작을 세밀하게 제어. 액세스 제어, 속도 제한 및 할당량을 지원하는 플러그형 정책 레이어 및 구성 API. 클러..

    2023. 11. 5. 08:11 / Tech정개블
    Frontend (Next.js Tailwind Typescript)/React.js

    1. Rules of Hooks

    Introduction 이번 글에서는 React에서 Hook의 규칙에 대해 알아보고 또 알려진 Hook은 무엇이 있는지 알아보고자 합니다. 1. Rules of Hooks [1] 원문글링크 Hooks are a new addition in React 16.8. They let you use state and other React features without writing a class. Hooks는 React 16.8에서 새롭게 추가된 기능입니다. 클래스를 작성하지 않고도 상태와 다른 React 기능을 사용할 수 있게 해줍니다.. + React 16.8 버전은 2019년 2월 6일에 릴리스되었습니다 Hooks are JavaScript functions, but you need to follow two..

    2023. 11. 4. 14:08 / Tech정또해방
    Backend(Framework)/NestJS 개요(공식문서 번역)

    1. NestJS 시작

    "나무위키" 에 짧게 정의된 글을 빌자면, "Node.js 런타임 위에서 동작하는 TypeScript용 오픈 소스 백엔드 웹 프레임워크." "공식 문서 페이지"에서는 아래와 같이 소개하고 있다. "Nest(NestJS)는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크입니다 . TypeScript 를 완벽하게 지원하며(순수 JavaScript로 코딩할 수도 있음) OOP(객체 지향 프로그래밍), FP(함수형 프로그래밍) 및 FRP(함수형 리액티브 프로그래밍) 요소를 결합합니다. 내부적으로 Nest는 Express (기본값) 와 같은 강력한 HTTP 서버 프레임워크를 사용하며 선택적으로 Fastify 도 사용하도록 구성할 수 있습니다! Nest는 이러한 일반적인 Nod..

    2023. 11. 4. 10:26 / Tech정개블
    DevOps와 Infra/Kubernetes On Premise

    3. Service (1/2) - LoadBalancer

    개요 쿠버네티스는 파드를 실시간으로 생성한다. 파드에 문제가 생기면 파드를 수정하지 않고, 종료하고 새롭게 생성한다. 이러한 환경에서는 파드간의 연결이 자동으로 구성되지 않으면, 파드에 문제가 생겼을 때 문제를 복구하고 네트워크를 통해 서비스를 노출하는데 상당한 시간이 소요 될 것이다. 이렇게 네트워크 연결이 자동으로 구성되고, 서비스로 노출되는 개념을 서비스 디스커버리(Service Discovery)라고 한다. 쿠버네티스에서 서비스 디스커버리가 어떻게 구현 되는지 알아보자. 클러스터 내부 혹은 외부 연결에 따라 두가지로 서비스를 구분할 수 있다. 클러스터 내부에서 파드간 통신 : 클러스터IP(ClusterIP), 헤드리스(Headless) 클러스터 외부에서 내부파드로 연결 : 노드포트(NodePort..

    2023. 11. 3. 23:33 / Tech정개블
    Frontend (Next.js Tailwind Typescript)/Tailwind CSS

    CSS 프레임워크 - "Best practices"는 무엇일까

    Introduction 이번 글에서는 CSS 프레임워크 선택에 있어서 주요 요소와 CSS에 대하여 알려진 사실들을 다루겠습니다. 최근에 프론트엔드 개발에 관심도가 높아지면서 자연스럽게 CSS에 대한 관심이 올라가고 있습니다. 그래서 찾아보았습니다. CSS 분야에서 지금 가장 주목받고 있는 프레임워크는 무엇인지, 또한 CSS를 다룰때 무엇이 개발자들을 고통스럽게 하는지. 1. Best CSS는 무엇인가? 우선, Best CSS가 무엇인지에 대한 궁금증으로 시작하였고, 구글 검색을 통해 결과를 찾아볼 수 있었습니다. 가장 먼저 노출되는 "24 Best CSS Frameworks ..." 에서 들여다보면 트렌드를 한눈에 파악할 수 있습니다. [1] 원문글 링크 title, 24 Best CSS Framewor..

    2023. 11. 1. 22:58 / Tech정또해방
    A.I.(인공지능) & M.L.(머신러닝)/A.I. Information

    3. 선형 회귀 모델 & 경사하강법

    Topic. '선형 회귀 모델'과 '경사하강법' 에 대하여 알아봅니다. 일단 때려 맞추고 조정하기 선형회귀란 관련된 여러가지 숫자들을 이용하여 우리가 알수 없는 숫자를 예측하는 데이터 분석기법을 말합니다. 아주 쉬운 예로 공부 시간에 따른 성적을 이용하여 그래프를 그려보는 예가 있습니다. 이 예시는 다음 장에서 다뤄보도록 하겠습니다. 선형회귀는 단순선형회귀, 다중선형회귀, 로지스틱회귀 세가지 유형이 있습니다. 그 전에 선형회귀에 필요한 경사하강법을 알아보도록 하겠습니다. 경사 하강 법 지금까지 배운 딥러닝을 요약하자면 y=ax+b 에서 적절한 a와 b를 찾아 이를 대입시키고 새로운 x에 대한 y를 구하는 것이며 이 a와 b를 찾기 위해서는 정답과의 오차를 최소화 하기 위해 미분을 이용하는 것이 시작이었습..

    2023. 11. 1. 16:40 / Tech엠지대표
    DevOps와 Infra/Linux

    Ping과 Telnet으로 troubleshooting

    개요DevOps 엔지니어로서 아마도 가장 많이 듣는 얘기 중 하나는 홈페이지가 안 뜬다는 요청일 것이다. 이런 상황의 troubleshooting 과정 중 가장 먼저, 또한 가장 많이 사용하는 command는 ping 과 telnet이 있다. curlssh 접속이 되서 서버는 돌아가고 있어도, 예를들어 Apache httpd service만 죽었을 수도 있다. GUI가 있을 때 브라우저에서 www.google.com을 치지만 CLI 환경에서는 curl로 확인을 할 수가 있다. 예시:$ curl www.google.com $ curl http://website.com/path1을 하게 되면 html 코드가 출력된다. 위에는 확인 용도지만 -O 옵션을 붙이면 wget과 똑같은 기능으로 다운로드를 받을 수도 ..

    2023. 11. 1. 11:15 / Tech김백엔드
    DevOps와 Infra/Kubernetes On Premise

    2. k8s 플러그인 활용

    krew 플러그인 관리자 설치 설치는 공식 페이지의 내용을 복붙하기만 하면 된다. https://krew.sigs.k8s.io/docs/user-guide/setup/install/ Installing · Krew © 2023 The Kubernetes Authors. Krew is a Kubernetes SIG CLI project. Edit Page · krew.sigs.k8s.io git 설치 krew 설치 ( set -x; cd "$(mktemp -d)" && OS="$(uname | tr '[:upper:]' '[:lower:]')" && ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64..

    2023. 10. 30. 07:08 / Tech정개블
    DevOps와 Infra/AWS EKS

    4. AWS Load Balancer Controller 설치 ( IngressClass 생성 )

    TL;DR IngressClass가 무엇인지 살펴보고 IngressClass를 생성할 것이다. IngressClass 이론 하나의 Cluster안에 여러 개의 Ingress Controller가 있을 수 있다. 예를들어 - AWS EKS ALB Ingress Controller (지금 설치 중인 것) - Nginx Ingress Controller - Gateway Ingress Controller - Istio Ingress Controller 등이 설치 되어있을 수 있다. 이 때 ingress service가 어떤 ingress controller에 연결시킬지 어떻게 구분하는가? 이 때 등장하는 것이 IngressClass라는 kind의 Kubernetes Object이다. kind: IngressC..

    2023. 10. 28. 18:18 / Tech김백엔드
    DevOps와 Infra/AWS EKS

    3. AWS Load Balancer Controller 설치 ( Controller )

    TL;DR 위 그림 2번 노란 영역에 해당하는 kube-system namespace에 AWS Load Balancer Controller를 helm install로 설치하고 webhook service가 제대로 생성이 되었는지 확인한다. Pre-requisites Helm 설치 맥북은 brew로 helm 설치하면 된다. $ brew install helm helm 설치 확인 $ helm version 5. Helm repo 설치 우선 controller를 helm install하기 전에 install할 때 사용할 helm의 image repository에 대한 --set flag값을 미리 알아야하는데 이것이 Region마다 그 주소가 다르다. https://docs.aws.amazon.com/eks/l..

    2023. 10. 28. 17:09 / Tech김백엔드
    DevOps와 Infra/AWS EKS

    2. AWS Load Balancer Controller 설치 ( IAM, Service Account )

    잡설 최근 인터넷 용어 중 TL;DR이 있다. (세미콜론은 오타가 아님) 원래는 Too Long; Didn't Read.라는 뜻으로, 저 글은 너무 길어서 읽지 않았다라는 채팅용어로 쓰이다가, 이제는 다음과 같이 비즈니스 이메일에서도 쓰인다고 한다. Please read this article (TLDR: It's a summary of how ALB works) 즉, 이제는 'Summary'와 완전한 동의어로 쓰이고, 단지 summary라는 단어보다 조금 더 힙해 보일 뿐이다. 논문의 Abstract(초록)과 같은 뜻이다. 그래서 나도 이 용어를 써보겠다. TL;DR AWS EKS에 AWS Load Balancer Controller를 설치하는 첫번째 단계로 아래 그림에서 노란색 영역으로 보여지는 IA..

    2023. 10. 28. 15:48 / Tech김백엔드
    A.I.(인공지능) & M.L.(머신러닝)/Python

    * 코사인 유사도란?

    정의 코사인 유사도(― 類似度, 영어: cosine similarity)는 내적공간의 두 벡터간 각도의 코사인값을 이용하여 측정된 벡터간의 유사한 정도를 의미한다. 유클리드 거리 유클리드 거리(Euclidean distance)는 두 점 사이의 거리를 계산할 때 흔히 쓰는 방법이다. 이 거리를 사용하여 유클리드 공간을 정의할 수 있으며, 이 거리에 대응하는 노름을 유클리드 노름(Euclidean norm)이라고 부른다. 딥러닝은 지정된 답안지 안에서 때려 맞추는 것부터 시작한다. 코사인 유사도와 유클리드 거리를 이용하여 정답에 근접할 때까지 계속 시도한다. from numpy import dot from numpy.linalg import norm # 코사인 유사도 계산식 dot(A, B)/(norm(A..

    2023. 10. 28. 11:52 / Tech엠지대표
    DevOps와 Infra/AWS EKS

    1. AWS Load Balancer Controller 설치 ( Introduction )

    구현하려고 하는 것 우선 우리 X2bee 초기 개발의 develop 환경의 구성을 아래 왼쪽과 같이 Nginx와 CLB(classic load balancer)로 구성하였다. 이것을 위 오른쪽처럼 Nginx의 단계를 없애고 CLB대신 ALB로 교체하려고 한다. 왜 구현하려고 하는가? ALB가 최고의, 궁극의 Load Balancer인가? 그건 아니다. Nginx(유료인 Nginx Plus도)는 OSI Layer 4와 Layer 7 둘 다 설정이 가능하다. CLB는 OSI Layer 4 와 Layer 7에서 동작한다. ALB는 OSI Layer 7에서만 동작한다. NLB(Network Load Balancer)는 OSI Layer 4에서만 동작한다. 그러면 CLB와 Nginx가 짱 아닌가? 그것도 아니다...

    2023. 10. 25. 01:27 / Tech김백엔드
    기타/story

    망원경 규칙

    Introduction 이번 글에서는 망원경 규칙이 있다는데 한번 소개해보고자 합니다. 1. 개요 Thomson's Rule for First-Time Telescope Makers: "It is faster to make a four-inch mirror then a six-inch mirror than to make a six-inch mirror." 톰슨의 초보 망원경 제작자를 위한 규칙: "6인치 미러를 만드는 것보다 4인치 미러를 만드는 게 빠릅니다." [1] 러닝커브 0에 대한 대변의 아주 좋은 격언이라고 생각이 들었습니다. I know nothing about telescope manufacturing. The rule suggests skills and knowledge only in it..

    2023. 10. 23. 11:10 / Tech정또해방
    기타/story

    골드 플래팅(Gold-plating)에 대해서

    Introduction 이번 글에서는 팀내에서 화두의 이야기 거리인 골드 플래팅에 대해 알아봅니다. 골드 플래팅이란 Gold plating in software engineering or Project Management (or time management in general) refers to continuing to work on a project or task well past the point where the extra effort is worth the value it adds (if any). 소프트웨어 엔지니어링 또는 프로젝트 관리 (또는 일반적인 시간 관리)에서의 "골드 플레이팅"은 추가로 투입되는 노력이 가치를 더하지 않는 지점 이상으로 프로젝트나 작업을 계속 진행하는 것을 의미합니다...

    2023. 10. 23. 08:30 / Tech정또해방
    DevOps와 Infra/Kubernetes On Premise

    1.1. Kubernetes(k8s) 클러스터 구성 - Ubuntu

    VM(Ubuntu 22.04 LTS) 준비 VM 설치과정은 생략한다. 클러스터 내에 다양한 어플리케이션 및 오토스케일 환경까지 구성하기 위해선, VM 용량이 충분해야 한다. 나는 4vCPU, 8G Memory, 60G Disk 정도로 VMWare 에 VM 3개를 구성하였다. 3개의 구성내용은 동일하고, 호스트명과 IP만 다르다. Docker 설치 이 후 모든 명령은 클러스터를 구성할 모든 VM 에서 실행한다. GPG Key 설치 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg 리눅스 도커 패키지 Repository 추가 echo..

    2023. 10. 23. 03:27 / Tech정개블
    Backend(Framework)/Cache

    3. Redis vs Dragonfly 성능 비교

    1. 테스트 조건 WSL2 Kernel 5.15 maxmemory 12g 언어 Java 17 테스트 코드 import redis.clients.jedis.Jedis; public class DragonflyPerf { public static void main(String[] args) { // Dragonfly 서버 연결(6379 포트) Jedis redisClient = new Jedis("172.24.194.58", 6379); long start = System.currentTimeMillis(); for (int i = 0; i < 1000000; i++) { redisClient.set("key_" + i, "value_" + i); } long end = System.currentTimeMi..

    2023. 10. 22. 16:52 / Tech정개블
    기타/IT기타

    e-커머스에서의 SEO와 프론트언어

    Introduction 이번 글에서는 e-커머스 생태계에서 SEO가 중요한 이유와, 이에따른 프론트앤드 언어의 선택에 대해서 이야기합니다. 1. SEO는 무슨 약자? SEO는 'Search Engine Optimization'의 약자로, 웹 사이트나 웹 페이지의 품질과 양을 개선하는 과정을 나타냅니다. 구글에 검색을 해보면 아래와 같이 확인이 가능합니다. Search engine optimization (SEO) is the process of improving the quality and quantity of website traffic to a website or a web page from search engines. SEO targets unpaid traffic (known as "natural..

    2023. 10. 22. 15:48 / Tech정또해방
    Backend(Framework)/Cache

    2. Redis 연결

    1. Java Maven project 생성 Dependency 추가 redis.clients jedis 4.4.3 Java 코드 import redis.clients.jedis.Jedis; public class RedisMain { public static void main(String[] args) { // 연결, Redis(Dragonfly) 서버는 bind address 설정이 "0.0.0.0" 으로 되어 있어서 외부에서 접근 가능 Jedis redisClient = new Jedis("172.24.194.58", 6379); // 인증 redisClient.auth("mypass"); // 키값 저장 redisClient.set("key_1", "value_1"); // 키값 조회 System..

    2023. 10. 22. 11:55 / Tech정개블
    • «
    • 1
    • ···
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • »

    전체 방문자

    오늘
    어제
    전체

    테크팀 개인 블로그

    정지민
    jeong
    손성준
    son
    김해수
    sunwater
    이다운
    koala
    채희철
    bburongE

    전체 카테고리

    • 분류 전체보기 (479)
      • Ai Word 사전 (0)
      • A.I.(인공지능) & M.L.(머신러닝) (96)
        • Development Environments (9)
        • A.I. Information (14)
        • Python (6)
        • transformers (13)
        • 머신러닝 (1)
        • 딥러닝 (4)
        • 신경망 이론 (5)
        • LLM (33)
        • Agent (4)
      • DevOps와 Infra (65)
        • DevOps 일반 (23)
        • Docker Container (3)
        • Linux (2)
        • AWS EKS (16)
        • AWS (6)
        • Kubernetes On Premise (13)
        • Security (1)
        • IDC 서버 (1)
      • 검색엔진 (8)
        • Elasticsearch (5)
        • Opensearch (3)
      • 빅데이터 (31)
        • Mongo DB (4)
        • Apache Nifi (21)
        • Scala (4)
        • Apache Spark (2)
      • 네트워크 (2)
        • SSL (2)
      • Quality Assurance (3)
        • E2E Test (3)
      • Backend(Framework) (42)
        • Java (2)
        • Spring (1)
        • Spring Boot Batch (3)
        • NestJS (9)
        • NestJS 개요(공식문서 번역) (20)
        • Cache (3)
        • Rust (4)
        • Go (0)
      • Frontend (Next.js Tailwind .. (52)
        • Frameworks (6)
        • Next.js (30)
        • Typescript (1)
        • Tailwind CSS (9)
        • React.js (4)
      • Next.js 개발 가이드 (42)
        • 01. Set up (7)
        • 02. 코딩 가이드 및 필수 패키지 (9)
        • 03. 퍼블 가이드 (3)
        • 04. Data fetching (2)
        • 05. State management (3)
        • 06. Learn Next.js 공식 가이드 (18)
      • Nuxt 공식문서 번역 (96)
        • 개요 (15)
        • Directories (23)
        • Components (12)
        • Composables (21)
        • Utils (25)
      • Nuxt 개발 가이드 (13)
        • 01. Set up (9)
        • 02. 코딩 가이드 및 필수 패키지 (0)
        • 03. 퍼블 가이드 (0)
        • 04. Data fetching (3)
        • 05. State management (1)
      • Tech 공유 세미나 - 2차 (13)
      • 기타 (15)
        • IT기타 (7)
        • story (5)
        • 문정역 여기어때 (2)

    블로그 인기글

    태그

    • #셀레니움
    • #Langchain
    • #HuggingFace
    • #문제해결
    • #venv
    • #검색엔진
    • #fine-tuning
    • #GPU
    • #Spring Boot Batch
    • #React
    • #Lora
    • #python
    • #Ai
    • #langgraph
    • #pyTorch
    • #나이파이
    • #아파치
    • #딥러닝
    • #apach
    • #adapter_model.bin
    • #ElasticSearch
    • #finetuning
    • #파이썬
    • #AWS EKS
    • #플래티어
    • #이벤트리스너
    • #LLM
    • #nifi
    • #deepseek
    • #nextjs
    MORE
    Powered by Privatenote Copyright © 플래티어 연구소 테크 블로그 All rights reserved. TistoryWhaleSkin3.4

    티스토리툴바