소개 Fontend 개발에 있어 HTML 사용은 기본이 됩니다. 웹 페이지를 이루는 기반으로써 구성요소는 무엇인지, 어떻게 구조화하는 것이 좋은지, 구조화에 필요한 box 모델에 대해서 한번 정리 해보려 합니다. HTML(Hyper Text Markup Language) 웹을 이루는 가장 기초적인 마크업 언어로, 콘텐츠의 구조와 의미를 정의하는데 사용됩니다. 기본적으로 HTML 을 이루는 요소는 아래와 같습니다. 요소는 속성도 가질 수 있습니다. HTML을 […]
Python Decorators 데코레이터 구현
소개 Python open source 나 framework 코드를 보면 함수 앞에 @를 통해 사용되는 Decorators 를 많이 볼 수 있습니다. 이 데코레이터를 이용하면 보다 효율적인 코딩을 할 수 있는데요. 이것이 무엇인지, 언제 사용하는 것인지, 어떻게 사용하는 것인지를 정리 해볼까 합니다. Decorators 가 무엇인가? Python에서 함수(Function)는 일급함수(First-class Functions)입니다. 일급함수가 무엇인가요?? 일급함수는, 그리고 파이썬에서 함수는 중첩 함수로도 만들수가 […]
Python Multiprocessing (파이썬 멀티프로세싱)
소개 Python 에서 병렬처리를 위한 threading 과 Multiprocessing 중에서 이번에는 Multiprocessing 에 대해서 정리해보고자 합니다. 앞선 포스팅을 통해서 각각의 특징을 정리해보았었는데요. 다시 한번 간단히 정리해보자면, Multiprocessing 은 CPU bound 작업에서 보다 더 유리한 면을 가지고 있습니다. CPU bound 작업이라고 하면 I/O bound (Networking, File upload, download )작업과 대조되는 작업으로, CPU 사용이 더욱 많은 작업을 말합니다. […]
Python Thread 파이썬 쓰레드
소개 Python 에서 Threading 은 I/O bound 작업에 보다 더 적합하다고 앞선 포스팅에서 말씀드렸는데요. 이번엔 직접 Threading 을 구현해 보면서 사용법을 정리해볼까 합니다. Threading 모듈을 활용한 old 한 방법을 먼저 살펴보고, python 3.2 버전부터 등장한 concurrent.futures 모듈을 활용한 좀 더 간편한 thread 사용에 대해서 정리를 해볼까 합니다. Threading 모듈 이용(Old 방식) threading 모듈을 이용한 old […]
Python Threading(쓰레딩) vs Multiprocessing(멀티프로세싱) 비교
소개 프로그램을 만들다 보면 네트워킹 작업이나 파일시스템 관련 I/O 작업등과 같이 synchronous 하게 작업하지 않아도 되는 로직들이 많이 생기게 됩니다. 프로그램 성능 향상을 위해서는 이러한 작업들은 식별하여 병렬 처리를 하도록 로직 처리를 하는 것이 좋은 방법이 될 수 있어요. Python 에서는 이러한 병렬 처리를 위해서 threading 과 multiprocessing 을 지원하고 있습니다. 각각은 무엇이고, 어떻게 동작을 […]
Multipass 이용한 kubernetes 로컬 구축
multipass + kuberspray 이용한 kubernetes 로컬 구축 저는 사용중인 macOS 에 multipass 를 이용하여 노드를 가상머신으로 구축하고, 이 위에 kubernetes 를 구현하여 k8s 테스트 환경으로 사용하고 있습니다. 애플실리콘을 지원하면서 무료인 가상머신 관리자가 마땅치 않은 가운데 multipass 라는 괜찮은 가상머신 관리자를 발견하여 이전 블로그에서도 거론하였듯이 이용하고 있지요. 그래서 multipass 를 이용하여 Kubernetes 를 로컬 랩탑에 구축하는 […]
맥 macOS 무료 가상머신 Multipass
macOS 에서 무료로 사용 가능한 가상머신으로 무엇이 좋을까? 저는 macOS, popOS 를 주로 사용하고 있습니다. 그리고 가상머신 운영을 위해 multipass 를 사용하고 있습니다. macOS 를 m1으로 바꾼 이후 적당한 가상머신 관리자를 찾다가 발견하여 처음 사용을 하긴하였는데요.VMWare, VirtualBox 등도 있지만, 무료 (VirtualBox 는 애플실리콘 미지원) 이기도 하고 CLI 기반의 경량 Ubuntu VM 관리라는 점도 나름 매력적으로 […]