반응형

분류 전체보기 297

DNS(Domain Name System)

DNS (Domain Name System) 호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 하기 위해 개발 www.example.com과 같이 사람이 읽을 수 있는 이름을 192.0.2.1과 같은 숫자 IP 주소로 변환하여 컴퓨터가 서로 통신할 수 있도록 한다. 인터넷의 DNS 시스템은 이름과 숫자 간의 매핑을 관리하여 마치 전화번호부와 같은 기능 DNS 서버는 이름에 대한 요청을 IP 주소로 변환하여 최종 사용자가 도메인 이름을 웹 브라우저에 입력할 때 해당 사용자를 어떤 서버에 연결할 것인지를 제어한다. 이 요청을 쿼리라고 한다. ex) Amazon Route 53(신뢰할 수 잇는 DNS 시스템) Domain 구조 인터넷상에서 사용되는 도메인은 전 세계적..

IT 기초/Infra 2021.12.27

Host disk 모니터링 툴

AWS EC2 모니터링 자동 모니터링 도구 시스템 상태 검사 네트워크 연결 끊김 시스템 전원 중단 물리적 호스트의 소프트웨어 문제 네트워크 연결성에 영향을 주는 물리적 호스트의 하드웨어 문제 인스턴스 상태 검사 시스템 상태 확인 실패 네트워크 구성 또는 시작 구성이 잘못됨 메모리가 모두 사용됨 파일 시스템 손상 호환되지 않는 커널 Amazon CloudWatch 경고 지정하는 기간 동안 단일 지표를 관찰하고 특정 기간 동안 지정된 임계값을 기준으로 지표의 값에 따라 하나 이상의 작업을 수행 Amazon Simple Notification Service(Amazon SNS) 주제나 Amazon EC2 Auto Scaling 정책으로 전송되는 알림 Amazon CloudWatch Events AWS 서비스를..

IT 기초/Infra 2021.12.27

SAN/NAS/DAS

SAN (Storage Area Network) 저장 지역 통신망 디스크 어레이, 테이프 라이브러리, 옵티컬 주크박스와 같은 원격 컴퓨터 기억 장치를 서버에 부착하는 구조 블록 수준 스토리지에 접속할 수 있도록 지원하는 특정 시스템 전용의 고속 네트워크 스토리지 트래픽을 LAN의 다른 부분과 분리해 애플리케이션의 가용성과 성능을 향상 스토리지 리소스를 더 쉽게 할당하고 관리할 수 있고 더 효율적으로 아카이빙할 수 있다. 서로 연결된 호스트와 스위치, 스토리지 기기로 구성 프로토콜 AoE(ATA over Ethernet): ATA(Advanced Technology Attachment), 개인용 컴퓨터 안에서 하드 디스크, CD-ROM 드라이브와 같은 기억 장치를 연결하는 표준 인터페이스 FCP(Fibre..

IT 기초/Infra 2021.12.27

DB availability

Availability 서비스 제공시간에 장애없이 서비스를 계속 지속할 수 있는 비율 DB 가용성 확보 방안 (DB 가 full 인 경우 확보 방안) 가용성을 높이는 2가지 전략 1. 심장전략(고품질-소수전략) 시스템을 구성하는 각 컴포넌트의 신뢰성을 높여 장애 발생률을 억제하여 가용성을 높임 2. 신장전략(저품질-다수전략) 시스템을 구성하는 각 컴포넌트는 언젠가 망가진다는 전제하에 여분을 준비해두는 방식 Clustering 동일한 기능의 컴포넌트를 복수 개 준비해 한 개의 기능을 실현 다중화 MySQL 이중화 방식 Replication MySQL은 데이터를 읽고 쓰고 할 수 있는 Master DB 와 읽기 전용인 Slave DB 구조로 되어 있다. Master DB의 Binary log를 읽어서 Sla..

IT 기초/Infra 2021.12.27

git vs svn

svn trunk: 프로젝트에서 가장 중심이 되는 디렉토리 branches: 프로젝트 내의 작은 프로젝트들 tags: 버전 별로 소스코드를 따로 관리하는 공간 보통 대부분의 기능을 완성해 놓고 소스를 중앙 저장소에y commit commit의 의미 자체가 중앙 저장소에 해당 기능을 공개한다는 의미 (GIT 과 가장 큰 차이점) 개발자가 자신만의 version history를 가질 수 없다 (그렇기 때문에 local history를 이용하기는 하지만, 일시적이다. 버전 관리가 되지 않는다) commit한 내용에 실수가 있을 시에는 다른 개발자들에게 바로 영향을 미치게 되는 단점이 있다. git 매우 빠른 속도와 분산형 저장소 (SVN과 가장 큰 차이점) 개발자가 자신만의 commit history를 가질 ..

IT 기초/Infra 2021.12.27

Hadoop

Hadoop Apache Hadoop (High Availability Distributed Object-Oriented Platform) 대량의 자료를 처리할 수 있는 큰 컴퓨터 클러스터에서 동작하는 분산 응용 프로그램을 지원하는 프리웨어 자바 소프트웨어 프레임워크 HDFS(Hadoop Distributed File System) Hadoop 프레임워크를 위해 자바 언어로 작성된 분산 확장 파일 시스템. 여러 기계에 대용량 파일들을 나눠서 저장. 데이터를 여러 서버에 중복해서 저장함으로써 데이터 안정성을 확보 하드웨어 오동작: 하드웨어 오동작이 발생되더라도 빨리 자동으로 복구하는 것이 중요 목표 스트리밍 자료 접근: 범용 파일 시스템과 달리 반응 속도보다는 시간당 처리량에 최적화 큰 자료 집합: 한 파..

IT 기초/Infra 2021.12.27

[Security] WAF (Web Application Firewall)

WAF (Web Application Firewall) 웹 서비스 특성상 서비스 용도로 포트80(HTTP)과 포트443(HTTPS)을 열어야 한다. 그러나 방화벽, 침입탐지/침입방지시스템(IDS/IPS)과 같은 기존 네트워크 보안 솔루션은 이 포트를 통해 들어오는 웹 공격 대응에 한계를 보였다. 웹 공격 대응에 특화된 WAF의 필요성이 제기되었다. 웹 서비스 보호를 위한 보안 솔루션 중 하나 방화벽(Firewall)이 외부로부터 내부망에 대한 침입을 감지하고 차단해 정보 및 자원을 보호하는 역할을 한다면, WAF는 웹 트래픽을 감시하고, 이를 통해 해킹 등의 웹 공격 대응에 특화된 솔루션 WAF는 웹 애플리케이션에 최적화됐기 때문에 HTTP에 포함된 악의적인 요청 및 의심스러운 응답을 탐지하고 이에 대응..

IT 기초/Security 2021.12.27

RDBMS vs NoSQL

RDB(Relational Database) 데이터를 유연하게 쿼리할 수 있지만, 쿼리 비용이 상대적으로 높다 트래픽이 많은 상황에서는 확장성이 떨어진다. 최고 성능을 위해서는 쿼리, 인덱스 및 테이블 구조를 최적화 해야 한다. 하나의 고성능 머신이 데이터서버가 되어 처리하는 Scale Up 방식 No SQL(Not only SQL) 비 관계형 데이터 베이스. 빅 데이터 수집과 저장 기술. MongoDB, Casandra, Hbase 등이 있음 최초 테이블 생성 시 데이터 간의 관계를 정의하지 않습니다. 그래서 보다 빠른 속도의 설계가 가능 Scale Out을 통한 노드 확장을 지원 (여러 개의 일반 서버를 연결하여 데이터를 분산하고 저장) key- value Database(Riak, Redis, Vo..

IT 기초/Infra 2021.12.27

TCP vs UDP

UDP (User Datagram Protocol) 어떠한 협상과정 없이 메시지를 실어서 보내기만 하고 받았는지 안 받았는지는 신경쓰지 않는다 TCP (Transmission Control Protocol) 메시지를 보내기 전에, 3-way-handshake 과정을 통해서 메시지를 정상적으로 전달할 수 있는지 확인 연결을 확인하고 데이터를 보낸다는 점에서 TCP는 상대적으로 신뢰성을 가진다 3-way-handshake 세 차례의 패밋들을 주고 받는 과정을 거쳐야만 TCP 연결(connection)이 성립(establish) 된다. ① Client는 SYN 패킷(sequence number 포함)을 생성해서, Server에게 전달합니다. 일종의, "포트 열려있나요?" 라고 문을 두드리는 과정이라고 보면 됩..

Load Balancing

Scale-up Server가 더 빠르게 동작하기 위해 하드웨어 성능을 올리는 방법 Scale-out 하나의 Server 보다는 여러 대의 Server가 나눠서 일을 하는 방법 Scale-out의 장점 하드웨어 향상하는 비용보다 서버 한대 추가 비용이 더 적습니다. 여러 대의 Server 덕분에 무중단 서비스를 제공할 수 있습니다. Load Balancing 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산처리하여 서버의 로드율 증가, 부하량, 속도저하 등을 고려하여 적절히 분산처리하여 해결해주는 서비스 Load Balancer 여러 대의 server에게 균등하게 traffic을 분산시켜주는 역할을 하는 것 Load Balancing 주요 기능 NAT(Network Address ..

IT 기초/Infra 2021.12.27

CI/CD

CI/CD 애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법 기본개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포 CI(Continuous Integration) 개발자가 각각 개발한 소스코드를 모아서 한꺼번에 빌드하는 통합 빌드의 과정을 특정 시점 아니라 추가로 수행함으로써 통합에 발생하는 오류를 사전에 해결하고 이러한 과정들에 드는 시간을 줄이기 위한 기법 빌드는 더이상 컴파일만을 의미하지 않습니다. 소프트웨어가 거대해지고 복잡해지면서 팀 단위로 개발을 진행하게 되었고, 그 과정에서 분업과 협업이 필수적 이러한 과정에서 SCM(Source Code Management)를 이용한 Merge (Pull Request) 과정이 까다로움 Agile 방법론이..

3 Tier

3 tier 웹 어플리케이션의 정의와 구성방식 3-tier Web Architecture란 프레젠테이션 로직(클라이언트, 사용자 인터페이스), 비즈니스 로직, 데이터베이스 로직을 각각 다른 플랫폼 상에서 구현한 것 계층(Tier): 컴포넌트들의 물리적인 분리 층(Layer): 컴포넌트들의 논리적인 분리 1-tier 클라이언트 서버에서 모든걸 지원하므로 새로운 컴퓨터를 사용하고자 할 경우 모두 새로 변경해야 한다는 단점(한가지 로직을 바꾸려면 다른 로직의 변경도 필요함)이 있음 2-tier Client Tier와 Data Tier로 2개의 물리적 컴퓨터로 구분 클라이언트와 서버를 분리하여 어플리케이션과 데이터베이스가 분리되어있기 때문에 데이터베이스의 변경이 편리한 장점을 가짐 3-tier 3계층 구조에서 ..

[Language Model] BERTopic

BERTopic BERT 임베딩 및 클래스 기반 TF-IDF를 활용하여 조밀한 클러스터를 생성하여 주제 설명에 중요한 단어를 유지하면서 쉽게 해석 가능한 주제를 허용하는 주제 모델링 기술 https://maartengr.github.io/BERTopic/index.html Home - BERTopic BERTopic BERTopic is a topic modeling technique that leverages transformers and c-TF-IDF to create dense clusters allowing for easily interpretable topics whilst keeping important words in the topic descriptions. It even supports..

[Unsupervised Learning][Clustering] DBSCAN

DBSCAN(Density-based Spatial Clustering of Application with Noise) data의 분포가 세밀하게 몰려 있어서 밀도가 높은 부분을 중심으로 클러스터링을 하는 방식 어떠한 점을 기준으로 반경 ε 내에 점이 n개 이상 있으면 하나의 군집으로 인식 밀도 기반 클러스터링 비선형 클러스터의 군집이나 다양한 크기를 갖는 공간 데이터를 보다 효과적으로 군집하기 위해 이웃한 개체와의 밀도를 계산하여 군집하는 기법 K-Means와 같이 군집 이전에 클러스터의 개수가 필요하지 않고 잡음에 대한 강인성이 높기 때문에 현재까지도 다양한 분야에서 활용 Algorithm eps-neighbors와 minPts를 사용하여 군집을 구성 Eps(ε) : 클러스터에 이웃을 포함할 수 있는..

728x90
반응형