
IT/Cloud 2023. 7. 17.
SaaS 설계 구현 팁
SaaS 가 막 여기저기 정의가 남발되고 있어서, 과제 킥오프 미팅때 들은거 몇장을 공유해 본다. (카톨릭대 서효중 교수님 문제가 되면 바로 내리겠습니다~) SaaS 정리는, 구축형/일회성 지불 모델은 수익성이 점점 없음 - 앵그리버드 앱과 인스타그램 비교??? 구독형 서비스는 대신 사용자가 폭발적으로 늘어야 이익이다. 그리고, 트래픽이나, 성능에 따라 클라우드 내의 서비스 리소스가 자동으로 늘었다 줄었다 하는 것이 핵심이다. 이렇게 되지 않으면 SaaS라 부르기 곤란, 즉 인스턴스 관리가 자동으로 스케일업/다운, 스케일아웃/인 작업이 되어야 한다는 뜻 => 쿠버네티스 도입이 핵심!! 준비를 위해 항목별로 보면, 멀티테넌시를 제공해 줘야 한다. 사용자별 혹은 회사별로 DB든 서비스든 독립적으로 서비스가 ..

IT/Git, GitHub 2021. 11. 19.
GitHub 저장소 위치 바꾸기
GitHub 저장소 위치를 바꾸고 싶다면, 아래 내용을 보고 따라하면 간단하게 해결할 수 있다. 공개 저장소에서 비공개 저장소로 바꾸려고 했는데 잘 안되서 아예 저장소를 새로 만들고 현재 로컬 저장소와 연결을 다시 하고 싶다면 아래 내용을 참고 Git CLI 환경에서, 즉 Git shell 이런것을 실행시킨다. 현재 있는 remote origin을 삭제하고, fork 했다면 그 위에 있는 upstream도 삭제하고 새로 만든 저장소로 remote origin을 붙여주면 된다. $ git remote remove origin (venv) $ git remote remove upstream (venv) $ git remote add origin https://github.com/계정명/새로운저장소명 (ven..

IT/Software 2021. 10. 18.
Git - detached HEAD 설명 페이지
Git 에서 서브모듈을 쓰다가 보면, 최초에 포함된 submoudule init 하고 update 하면 로컬에 다운된 저장소의 브랜치가 특정 브랜치에 붙어 있지 않는 상태라고 한다. 이를 전문 용어로 "detached HEAD" (ㅋㅋ 번역 그대로네...) 라고 한다. 관련된 내용을 아주 잘 설명한 페이지가 있어서 아래에 소개 https://www.devhak.com/blog/git-detached-head detached HEAD 서브모듈이 포함되어 있는 프로젝트를 클론하면 명령어를 사용하게 되는데, 이때 서브모듈의 브랜치를 확인하면 형태인 것을 확인 할 수 있다. 분리되었다뇨... 브랜치랑 다른 뭔가 무서운(?)상 www.devhak.com 결국 브랜치가 없는 상태에서 수정 삭제를 해서 commit ..

IT/Software 2021. 9. 10.
VSCode 에서 파일명으로 파일 찾기
소스 보다 보면 헤더파일을 찾고 싶을때, 파일명으로 찾기가 있으면 편하다. 이거 몰라서 탐색기 검색으로 찾은 적도 있음 VSCode 띄우고 프로젝트에 폴더를 막 넣어 둔 다음 파일명을 알고 있다면, 간단하게 Ctrl + P 누르면 파일 찾기 창이 나타난다. 목록이 나오면 화살표 키로 이동해서 "->" 화살표 오른쪽 버튼을 누르면 그 파일이 열린다. 검색창은 그대로 유지 되므로 또 찾고 싶은 파일을 그대로 찾아서 오른쪽 화살표 버튼 누르고 이러면 된다. 잘 찾아서 굿럭~ BJ.

IT/Software 2021. 7. 16.
저작권 copyright 표기법
머 여러가지 버전이 있는데, 복잡한거 단순한거... 정답은 단순할 수록 더 범위가 커진다는 거.. 아래글 참고합시다. 소스 코드 내 저작권 표시 이유와 올바른 방법 TL;DR 아래 포맷의 저작권 및 라이선스 표시 당신이 작성한 모든 소스 코드 파일에 추가하라. SPDX-FileCopyrightText: © {$year_of_file_creation} {$name_of_copyright_holder} SPDX-License-Identifier: {$SPDX_license_name} 예를 들어, 내가 오늘 소스 코드 파일을 하나 작성하였고, 이를 [BSD-3-Clause license][bsd-3-clause] 라이선스로 공개하였다면, 다음과 같은 내용을 파일 상단 주석 부분에 추가한다. SPDX-FileC..

IT/파이썬 2021. 6. 22.
파이썬 - 데코레이터 함수
데코레이터라고 막 쓰고 있는데, 함수 호출 이전에 호출되는 함수 정도로 알고 있었는데, 호출되는 함수 전체를 싸고 있는 함수구나 왜 쓰는지? 1. 즉 이미 구현한 함수를 고치거나 수정하지 않고 그 함수 앞 뒤로 어떤 조건이나 리턴을 수정하려면 데코레이터 함수를 만들어서 쓰도록 하자. 2. 중복되는 형태의 함수가 아주 많이 있다면, 데코레이터로 정의해서 코드 양을 줄일 수 있겠다. 예를 들면 try, except 구문이 거의 동일한 API 함수들이 아주 많다면 데코레이터로 정의해서 만들도록 하자. 아래분의 글을 보는게 나을 듯 하고, 난 의미만 알면되지. http://schoolofweb.net/blog/posts/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EB%8D%B0%EC%BD%94%EB%A..

IT/파이썬 2021. 1. 25.
파이썬 람다 함수 - lambda inline function
파이썬 소스 코드에서 lambda 라는 문구가 뵈길래, 또 찾아봄 간단하게 말하면 inline 함수같은 모양새네.. 문법은 lambda [매개변수 리스트] : [구문들...매개변수를 여기서 활용하는 간략한 코드] (lambda x,y: x + y)(10, 20) >> 30 파이썬의 다양한 기능과 합쳐져서, 강력하게 쉽게 사용할 수 있는 예제를 다양하게 찾아볼 수 있다. 겸사 map, filter, reduce 함수 같은 것도 배우자. 많은 소스들 중에서 아래 링크에서 정보를 획득하도록 하자. 잘 정리된 것만 여기에 올린다. ㅋㅋ 원본 링크 글에 많이 가셔서들 보세요. 여기 아래는 내가 나중에 이해가 쉽도록 간략하게 몇개만 가져옴. teddylee777.github.io/python/lambda-map-f..

IT/리눅스 2021. 1. 18.
우분투 리눅스 파이썬 버전 확인 필수 - 제길 python 2 가 기본이라뉘
윈도우 환경에서 잘 돌아가던 파이썬 코드를 그대로 올려서 기분좋게 run 시켰는데, 제길.... 제목 그대로다. 제길 파이썬 버전 2.x가 기본으로 사용되고 있다뉘....제길제길.. 먼가 설치가 자꾸 에러가 나더라니.. 찾아보니 많은 자료가 있네. 파이썬 버전 변경 방법으로 검색해 보면 된다. mickael-k.tistory.com/92 [Ubuntu] 파이썬(Python) 버전 변경 방법 기본 우분투를 깔고 터미널창을 열고 'python'이란 명령어를 치면 자동으로 python 2.x버전이 잡힙니다. 이번 포스트에서는 리눅스 Alternatives를 활용하여 Python의 기본 default인 2에서 새롭게 3으로 바 mickael-k.tistory.com 머 그러나, 깔끔하게 버전 2.x를 지워보려고..

IT/파이썬 2021. 1. 11.
파이썬 - 파이썬의 Asterisk(*) 이해하기
C 같으면 포인터, 약간 유사한 개념이 들어가 있는 것 같다. 일단 공부하기 위해 제일 맘에 드는 사이트 검색 mingrammer.com/understanding-the-asterisk-of-python/ 파이썬의 Asterisk(*) 이해하기 파이썬은 타 언어에 비해 비교적 연산자 및 연산의 종류가 풍부한 편이다. 특히 파이썬이 지원하는 많은 연산자중 하나인 **Asterisk(*)**는 단순히 곱셈 mingrammer.com 잘 읽어보자. 일단 **body 머 이렇게 쓰여진 코드가 있던데, body에 저장된 객체가 dict 형태의 object 같으면 이 내부를 접근하거나 레퍼런스 사용하기 위해 **body 형태로 넘기면 전체가 잘 넘어간다. 머 이정도로 이해하고 마무리하고, 자세한 것은 더 읽어보고 ..

IT/파이썬 2020. 12. 22.
파이썬 - 문자열에 변수 값 넣는 방법
이거 엄청 많이 필요하다.. 파이썬에서 C/C++의 printf("%d", i); 처럼 문자열에 변수 값을 추가 하고 싶다면, 여기여기 블로그 글을 참고하세요. 딱 3가지로 정리를 아주 잘 해 주셨네. from growingsaja.tistory.com/288 [Python] 문자열 안에 변수 값 넣는 3가지 방법 1. %s % 사용 >>> test_string = 'SELECT * FROM raw_data WHERE %s = "%s"' >>> print(test_string % ('date', '2021-12-31')) # SELECT * FROM raw_data WHERE date = "2021-12-31" 2. format {numb.. growingsaja.tistory.com 1. 문자열 포맷 ..

IT/파이썬 2020. 12. 22.
파이썬 - for enumerate 함수 예제
for item in list: actions; 이렇게 쓰고 있는데, 인덱스와 함께 item 값들을 처리하고 싶다면 enumerate 를 사용하면 되네. for index, item in enumerate(list): actions; 레퍼런스 코드 from devpouch.tistory.com/74 [Python] 파이썬 enumerate 함수 사용법/예제 enumerate함수 반복문을 사용할때 리스트의 순서값, 즉 인덱스의 정보가 필요한 경우가 있습니다. enumerate함수는 리스트의 원소에 순서값을 부여해주는 함수입니다. 사용 예제는 아래와 같습니다. devpouch.tistory.com >>> item = ["First", "Second", "Third"] >>> for i, val in enum..

IT/파이썬 2020. 12. 15.
파이썬 - PyQt5 QT Designer를 이용하여 버튼 클릭 창 예제 프로젝트
먼저 PyQt5를 pip command 를 이용해서 설치한다. > pip install PyQt5 이제, QT Designer 도 받아서 설치해보자. 구글에서 아래와 같이 검색하면 다운로드 링크를 쉽게 찾을 수 있다. 그럼 해당 페이지로 접속하여 Windows 버전을 다운로드 받아 설치한다. 그럼 설치는 무조건 예로 다음 눌러서 해 주고, 실행해 보면 아래와 같은 아주 복잡한 창이 실행된다. 그럼 이제 프로젝트를 진행해 볼까? 간단하게 라벨, 라인 에디터 박스, 버튼 객체를 Drag & Drop 으로 main 창에 가져다 놓고 텍스트 부분만 수정해 본다. 그리고, 각 이벤트 코드를 삽입할 수 있는 함수를 쉽게 만들기 위해서 QT Designer 에서 Edit Signals / Slots 기능을 활용해 보..

IT/파이썬 2020. 12. 15.
파이썬 - 개발 환경 세팅 - 윈도우
파이썬 개발환경을 설치한다. 그래도 일단 검색해서 맘에 드는 글을 하나 찾아보고, 아래 글을 기본으로 해서 설치한다. 내용은 아래에 정리중... m.blog.naver.com/wideeyed/221837368919 [Python] 개발환경구축 on Windows (+virtualenv) 원도우에서 파이썬 개발환경을 구축하는 방법에 대해 알아보겠습니다.1) 파이썬 홈페이지 > Downlo... blog.naver.com 먼저 파이썬을 설치한다. 그래도 현재 최신 버전으로 다가 딱.. stable 버전으로 되어 있으니 파이썬 홈페이지 > Download에 접속 www.python.org/downloads/ Download Python The official home of the Python Program..