전체 글 152

VDI(Virtual Desktop Infrastructur

VDI (Virtual Desktop Infrastructure) VDI (Virtual Desktop Infrastructure)는 가상화 기술을 사용하여 사용자의 데스크톱 환경을 가상화하는 인프라스트럭처입니다. VDI는 기존의 물리적인 데스크톱 환경을 가상화하여 가상 머신(VM) 형태로 제공합니다. 각각의 사용자는 자신의 데스크톱 인스턴스를 가상화된 환경에서 실행하며, 이를 통해 사용자는 어디서든 자신의 데스크톱 환경에 접근할 수 있습니다. 가상화: VDI는 가상화 기술을 사용하여 사용자의 데스크톱 환경을 가상화합니다. 가상화된 데스크톱은 물리적인 하드웨어와는 독립적으로 실행되며, 여러 사용자가 동시에 가상 환경을 공유할 수 있습니다. 중앙 집중화: VDI는 사용자의 데스크톱 환경을 중앙에서 관리하고..

DevOps/지식창고 2023.12.07

MVI (Model-View-Intent) 패턴

MVI (Model-View-Intent) 패턴 Model: 애플리케이션의 상태를 유지하고, 데이터를 처리하는 부분입니다. 사용자의 액션에 따라 상태를 갱신하고, 뷰에 필요한 데이터를 제공합니다. View: 사용자에게 데이터를 보여주는 역할을 합니다. 액션을 받아 처리하고, 모델의 상태를 표시합니다. Intent: 사용자의 액션을 나타내는 객체로, View에서 생성되어 Model에 전달됩니다. 액션에 대한 정보를 담고 있으며, Model의 상태 갱신을 위한 명령을 전달합니다. MVI 패턴은 단방향 데이터 흐름을 가지며, 상태 관리를 중심으로 합니다. 사용자의 액션은 Intent로 전달되고, Model은 이를 기반으로 상태를 변경하고, 변경된 상태는 View에 반영됩니다. 이를 통해 상태 관리와 UI 업데..

코딩 개념 Story 2023.12.06

디자인 패턴(MVC, MVVM, MVP)

MVC (Model-View-Controller) 패턴 Model: 데이터와 비즈니스 로직을 처리하는 부분입니다. 데이터의 상태를 유지하고, 데이터에 대한 조작 및 업데이트를 담당합니다. View: 사용자에게 데이터를 보여주는 역할을 합니다. 사용자 인터페이스(UI)를 표현하고, 데이터의 시각적인 표현을 담당합니다. Controller: 사용자의 입력을 처리하고, Model과 View 사이의 상호작용을 조정하는 역할을 합니다. 사용자로부터의 입력을 받아 Model의 데이터를 업데이트하고, View를 업데이트하여 사용자에게 보여줍니다. MVC 패턴은 각각의 역할을 분리하여 유연하고 확장 가능한 애플리케이션을 구축할 수 있도록 도와줍니다. 데이터, 표현 및 상호작용이 분리되어 있으므로, 변경 사항이 다른 부..

코딩 개념 Story 2023.12.04

SAN

SAN SAN (Storage Area Network) 은 컴퓨터 시스템에서 데이터를 저장하고 공유하기 위한 전용 네트워크입니다. SAN은 일반적으로 고속의 전용 네트워크를 사용하여 서버와 스토리지 장치를 연결합니다. 이렇게 함으로써 서버와 스토리지 간의 데이터 전송 속도와 성능을 향상시킬 수 있습니다. 또한, SAN은 데이터의 안정성과 가용성을 높이고, 중복 데이터를 효율적으로 관리할 수 있도록 지원합니다. SAN은 네트워크를 통해 여러 대의 서버에서 스토리지 장치에 동시에 액세스할 수 있으며, 이는 데이터의 공유와 중앙 집중화를 가능하게 합니다. 이를 통해 여러 서버 간의 데이터 공유와 협업이 용이해지며, 데이터 관리와 백업 작업도 효율적으로 수행할 수 있습니다. SAN은 기업과 조직에서 대량의 데이..

DevOps/지식창고 2023.12.02

데이터 티어링(Data Tiering)

데이터 티어링 데이터 티어링은 데이터를 다양한 계층으로 분류하여 저장하는 개념입니다. 데이터를 저장할 때, 데이터의 중요도, 액세스 빈도, 보존 기간 등을 고려하여 데이터를 계층화합니다. 이를 통해 데이터에 대한 접근성과 성능을 최적화할 수 있습니다. 💡 예를 들어, 자주 액세스되는 데이터는 빠른 응답 시간을 보장하기 위해 빠른 스토리지 계층에 저장되고, 보존 기간이 긴 데이터는 비용 효율적인 스토리지 계층에 저장될 수 있습니다. 데이터 티어링은 데이터 관리 측면에서도 중요한 역할을 합니다. 데이터의 중요도에 따라 백업 및 복구 전략을 수립하고, 데이터의 보안 및 규정 준수를 위한 조치를 적용할 수 있습니다. 또한, 데이터 티어링은 데이터의 생명주기 관리에도 도움을 줍니다. 데이터의 가치와 활용 가능성이..

DevOps/지식창고 2023.11.29

[Golang] Channel

- 본 글은 2023.09.03 에 작성된 포스트입니다 Channel Channel 은 데이터를 주고 받을 수 있습니다. 주로 Goroutine 에서 스레드간 통신을 위한 매개체로 사용되기도 합니다. Go 에서 채널을 사용한다면 다음과 같은 키워드로 생성, 삭제, 읽기, 쓰기 작업을 수행할 수 있습니다. make(chan {type}, {int}) : 채널을 생성 type : 채널에서 다룰 데이터 형식 int: 버퍼의 개수, default 는 0이며, 버퍼의 개수만큼 지연없이 입력을 할 수 있습니다. 버퍼가 가득차면, 버퍼에서 출력할때까지 입력을 대기합니다.

DevOps/GoLang 2023.09.03

[Golang] Goroutine (고루틴)

- 본 글은 2023.09.03 에 포스트된 글입니다. 개요 프로그램 사용에 따라서 두 개 이상의 쓰레드를 사용 해야 하는 경우도 있습니다. Golang 에서는 고루틴을 통해서 다른 곳에서 쓰이는 쓰레드처럼 멀티작업을 수행할 수 있습니다. Goroutine 고루틴은 Go 런타임에 의해 관리되는 경량 쓰레드 입니다. 고루틴은 KB 범위의 메모리만 소비하기에 경량 쓰레드라는 말이 어울리는 것 같습니다. 하지만 고루틴은 실제 OS 쓰레드와는 다르며, OS 쓰레드에 대한 추상 계층이라고 가정할 수도 있습니다. 고루틴은 로컬 저장소가 없기 때문에 부팅 시간이 OS 쓰레드보다 빠릅니다. 간단하게 go 키워드를 붙혀서 고루틴으로 함수를 실행할 수 있는데, 다음은 say 함수를 Goroutine 으로 실행하는 방법을 ..

DevOps/GoLang 2023.09.03

[Android] Bluetooth BLE 연동 가이드

// 2021. 05.04 에 작성된 가이드입니다. // targetSdkVersion 30 // 참고 : 끝에 full source code 가 있습니다. 급하신 분은 내려서 보시기 바랍니다. Bluetooth BLE Bluetooth BLE 은 Scan 시 다음과 같은 프로파일을 반환합니다. 어떤 디바이스인지 알 수 있게 함이죠. 프로파일 안에는 여러가지 Sercvice와 Service의 Characteristic 으로 나뉘어져 있습니다. 각각의 Charactaristic 은 Bluetooth 기기와의 주고 받을 수 있는 연결체가 됩니다. 이 Characteristic 을 통해서 정보를 정보를 가져올 것이니 기억해두기 바랍니다. 안드로이드에서의 Bluetooth 안드로이드에서 블루투스 BLE 로부터 ..

Android Story 2021.05.04

[colab] 코랩에서 비디오 파일 재생하기

본 글은, 구글에서 제공하는 colab에서 비디오 파일을 재생하는 방법을 설명합니다. 1) 유튜브의 영상을 바로 보는 방법 2) 유튜브의 영상을 다운로드 받아 다운로드된 파일을 보는 방법 의 순서로 설명합니다. 유튜브의 영상을 바로 보는 방법 유튜브에 들어가서 영상의 URL이 어떤 식으로 구성되어 있는지 살펴봅시다. 잘 보면 v= 하고 b5akCiGbOl0같은 태그가 붙어있죠? 이 태그를 활용하면 Colab에서 간단하게 유튜브를 실행할 수 있습니다. 참쉽죠? 다음은 영상을 다운로드 받아야겠죠. 실제 영상은 긴 영상이니까 받은 다음에 영상을 잘라봅시다. 유튜브 영상 다운로드 영상편집은 ffmpeg을 사용! 다운로드가 끝났다면 다음과 같이 test.mp4 파일이 생겼겠죠? 다운 파일 재생하기 재생하는 방법은..

머신러닝 2021.02.23
반응형