기술(Tech, IT)/etc. 43

[Tech, etc.] Google Cloud Platform N2, N2D

Google Cloud Platform에서 N2와 N2D에 대해 알아보자. N2는 vCPUs (virtual CPU)는 2에서 128, vCPU 메모리는 0.5에서 8 GB의 사이의 유동적인 크기를 갖고, Ice Lake와 Cascade Lake라는 프로세서에서 동작한다. Ice Lake - 특정 지역에서만 제공되며, 거대한 머신 타입에 기본 프로세서. Cascade Lake - 최대 80 vCPUs 머신 타입의 기본 프로세서로,Ice Lake를 사용하는 VM (가상 머신)을 생성하려면, minimum CPU platform으로 설정해야 한다. N2D는 N2와 비슷한 성능을 보이며 AMD사의 AMD EPYC Milan와 AMD EPYC Rome 프로세서를 사용해 AMD의 D를 N2에 붙인 것으로 추정된다..

[Tech, etc.] IaaS(Infrastructure-as-a-service)

: IaaS는 기업이 서버를 클라우드가 아닌 자체 설비로 보유하고 운영하는 인프라(on-premises infrastructure)에서 한 발짝 물러나게 해준다. 이는 비용을 지불해 서드 파티가 제공하는 저장소나 가상화와 같은 당신이 필요한 서비스를 클라우드를 통해 사용하는 것이다. 사용자로서 당신은 운영체제나 데이터, 어플리케이션, 미들웨어, 런타임에 대한 책임은 지지만, IaaS 제공자는 당신에게 접근 권한, 관리, 네트워크, 서버, 가상화, 저장소와 같은 당신이 필요한 것을 제공한다. 사내 데이터 센터에 대한 유지보수나 업데이트는 서드 파티에서 담당하기에 당신이 관리할 필요가 없다. 대신 당신은 API나 대시보드를 통해 인프라에 대한 접근이나 제어가 가능하다. 간단한 예를 들자면, 개발이나 테스트 ..

[Tech, etc.] Middleware Solution(미들웨어 솔루션)

AWS(Amazon Web Service)에 따르면 Middleware란 다음과 같다. : Middleware란 다른 어플리케이션(앱, 응용프로그램)이 서로 의사소통할 수 있게 해주는 소프트웨어다. 이것은 어플리케이션들을 영리하고 효율적으로 연결함으로서 현식적으로 속도를 향상할 수 있다. Middleware는 다양한 기술과 도구, 데이터베이스 간의 다리로서 역할을 해 이들을 하나의 시스템으로 아주 매끄럽게 통합할 수 있다. 이 하나의 시스템은 유저에게 통합된 서비스를 제공할 수 있다. 예를 들어, 윈도우는 프론트엔드 어플리케이션인 윈도운 리눅스 백엔드 서버로부터 데이터를 전송받지만 어플리케이션 사용자는 이를 인지하지 못한다. : Middleware is software that different appl..

[Tech, etc.] Vanilla Software(바닐라 소프트웨어, Vanilla Python)

Vanilla Software(바닐라 소프트웨어), Vanillar Python(바닐라 파이썬), Vanlliar JavaScript(바닐라 자바스크립트)라는 용어를 종종 접할 때가 있다. Wikipedia에 따르면 아래와 같다. : In computer science, vanilla is the term used to refer when computer software and sometimes also other computing-related systems like computer hardware or algorithms are not customized from their original form : 컴퓨터 과학에서 바닐라라는 용어는 소프트웨어나 연산 시스템(컴퓨터 하드웨어 같은) 또는 알고리즘이 ..

[Tech, etc.] Iterator Design Pattern(반복자 패턴)

위키피디아에 따르면 Iterator Design Pattern의 정의는 아래와 같다. : In object-oriented programming, the iterator pattern is a design pattern in which an iterator is used to traverse a container and access the container's elements. : 객체 지향 프로그래밍에서, 반복자 패턴은 반복자(iterator)를 통해 저장소(container)를 순회하고 저장소의 요소에 접근ㄴ하는 디자인 패턴이다. Iterator Design Pattern은 Collection(데이터 모음)을 반복 처리에 대해 표준 방식을 제공한다. 반복에 대한 논리(logic, 방식)은 collec..

[Tech, etc.] Hash 검색 시간 복잡도(Search Time complexity)

Hash에서 특정 key에 대한 value를 확인할 때 걸리는 시간 복잡도가 O(1) - Constant time 이라는 것에 대한 이해가 되지 않아 확인해보니 실제로는 O(1)보다는 오래 걸리지만 거의 그 즈음 걸리기에 O(1)으로 표기한다는 것을 알았다. 내가 잘못 이해하고 있었던 부분은 Search와 Index(Access)의 차이다. Search는 한 자료 구조(Data Structure) 안에서 특정 요소(element)를 검색하는 것을 의미하는 반면, Index(Access)는 이미 어디 있는지 알고 이를 접근한다는 차이를 가지고 이해를 해야했다. List의 경우에도 Index를 알고 있다면 바로 접근이 가능 하기에 O(1)의 시간 복잡도를 갖지만, 특정 데이터(data)를 검색한다는 것은 L..

[Tech, etc.] Git Fork vs Mirroring

Git의 관점에서 fork에 대한 정의는 아래와 같다. : fork란 당신이 관리하는 repository의 복사본이다. fork는 원 저장소(repository)에 영향 없이 해당 프로젝트에 변화를 줄 수 있다. pull을 통해서 원본 repository에서 변경 사항을 받아오거나 반영할 수 있다. About forks : A fork is a copy of a repository that you manage. Forks let you make changes to a project without affecting the original repository. You can fetch updates from or submit changes to the original repository with pull r..