본문 바로가기
반응형

IT/Knowledge211

Row Chaining, Row Migration 데이터베이스를 공부하면서 나오는 용어 이지만 IT 지식으로도 알고 있어야할 내용이라고 판단하여 본 포스팅을 DB 범주에 넣지 않았다. 큰 데이터나, 긴 데이터를 저장하려고 할 경우에 나오는 현상들도 둘의 차이를 간단하게 알아볼 것이다. Row Migration 이미지만 봐도 이해 가겠지만 기존에는 사이즈에 맞는 데이터였지만 값이 Update 되면서 기존 블록에서는 길이가 넘쳐서 다른 블록에 저장하는 현상이다. Row Chaining 이 또한 이미지가 잘 설명하고 있지만. Row Migration 과의 차이는 Migration 은 Update 시에 , Chaining 은 Insert 라고 생각하면 된다. 처음에 저장부터 공간이 부족하여 다음 블록까지 넘어가서 저장을 할 경우이다. 둘의 공통점은 저장시 공간.. 2023. 12. 1.
IDLE 상태 IDLE 상태 , 그리고 한글로 읽을때는 아이들 상태라고 한다. 피시나 서버 등에서 프로세스의 동작 여부에 따라 자원이 소모가 되고 그러면서 전력이 측정이 된다. 고사양 게임을 하거나 GPU 작업을 돌리게 되면 프로세스 자체가 크기 때문에 고전력이 요구 되지만, 아무것도 안하거나 작은 프로세스만 돌릴 경우엔 저전력으로도 충분히 유지가 가능하다. 이럴경우에 상태를 아이들 상태라고 한다. 서버를 살 경우에는 전력을 필히 고려해야하는데 주로 이 아이들 상태를 많이 보곤 한다. 그 밖에 다른 프로세스 들의 상태는 아래와 같다. IDLE 프로그램을 수행하지 않는 상태(프로세스가 아님) READY 대기 상태, 스케쥴러에 의해 자신의 순서를 대기하고 있는 상태 스케쥴러에 의해 자신의 순서가 오면 Disptch하여 R.. 2023. 11. 18.
Webhook 이란? webhook은 웹페이지나 앱에서 발생하는 특정 이벤트들을 커스텀 callback으로 변환해주는 방법이다. 설명을 텍스트로 보면 어려우니 그림으로 설명하면 아래와 같다. 일반적인 polling 방식은 계속해서 반응이 있는지, DB sync 맞추는것처럼 계속 polling 을 할수 있지만, webhook은 필요시 상대방쪽에서 event 를 발생해주면 그때 반응하는 것이다. 유의점 만약 앱이 중지 된다면 endpoint 의 event는 유실되게 된다. 지속적인 모니터링이나 알림을 잘 받아서 처리가 가능해야한다. 예외처리가 잘 되어있어야한다. 2023. 11. 15.
[암호화] AES-128과 SHA-256 암호화란? 데이터를 있는 그대로 저장할 경우 해킹을 당하면 개인 정보가 그대로 노출이 된다. 이럴 경우를 대비하기 위해서 개발자들은 암호화 라는 기법을 사용하기 시작하였다. 암호화를 하게 되면 암호화 된 상태는 읽기가 불가능 하고 이것을 읽기 위해서는 암호화 키가 필요하다. 해당 키를 가지고 복호화 작업을 거쳐야만 다시 읽을수 있는 상태로 돌아간다. 뒤에 숫자는 bit수를 가리키며 숫자가 높을수록 암호화 키의 크기가 커짐을 의미한다. 256은 2의 256승이다. 종류는 아래 그림과 같다. SHA-256은 단방향 암호화로 복호화 하는 방법이 없어서 불가능이다. 양방향 암호화로는 대표적으로 AES와 RSA가 있다. RSA에 관련된 내용으로 서버 접근하기 위한 key에 대한 내용이 있는데 아래 참고 포스팅 참.. 2023. 10. 16.
[Flyway] DB Migration 도구 (migraion) 포스팅에 앞서 먼저 알고 넘어가야하는 용어가 마이그레이션이다. 마이그레이션이란?(migration) 단어의 뜻은 이주 의 의미를 갖고있다. 의미 그대로 IT에서도 다른 환경으로 데이터를 옮기든 코드를 옮기든 이런 이관 작업을 의미한다. 오늘 다룰 Flyway는 DB migration 도구라고 생각을 하면 된다. 또는 다르게 생각하면 DB 형상관리라고 생각이 된다. 형상관리에 대해서는 아래 참고 포스팅을 참고 바란다. 만약 백엔드에서 사용중인 데이터베이스 테이블에 테이블 변화가 생긴다면 어떻게 해야할까? cloud에 올린 db라면 괜찮지만 아직 dev 환경이 구축되지 않아 local에서 각각의 db를 구축하여 개발을 해야 할 경우에 말이다. sql 문 자체를 만들어서 팀원들과 공유를 하며 형상을 관리해야한.. 2023. 10. 8.
callback VS fallback (차이) 개발을 하다보면 callback과 fallback에 대해서 많이 다루게 된다. 발음도 비슷하고 하는일도 비슷해서 헷갈리곤 하지만 둘의 차이를 정확하게 짚고 넘어가려고 한다. callback은 코드를 실행하고 난 후에 실행하는 함수나 메서드 등을 의미한다. 혹은 다른 함수가 실행을 끝낸 뒤 실행되는 callback되는 함수 를 말한다. 정상적으로 되거나 실패를 할경우 모두 callback을 실행한다. https://ko.wikipedia.org/wiki/%EC%BD%9C%EB%B0%B1 콜백 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 프로그래밍에서 콜백(callback) 또는 콜백 함수(callback function)는 다른 코드의 인수로서 넘겨주는 실행 가능한 코드를 말한다... 2023. 10. 7.
OpenAI 란? AI와 ChatGPT 에 대해서 많이 떠오르면서 유명한 조직이 있는데 바로 OPEN AI 이다. ChatGPT에 대한 내용은 아래 참고 포스팅 참고 바란다. Open AI 란 인공지능 연구를 주도하고 인공지능의 장기적인 이점을 추구하기 위해 설립된 연구기반의 비영리 조직으로 자세한 내용은 아래 위키를 참고 바란다. https://ko.wikipedia.org/wiki/%EC%98%A4%ED%94%88AI 오픈AI - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 오픈AI(OpenAI)는 프렌들리 AI를 제고하고 개발함으로써 전적으로 인류에게 이익을 주는 것을 목표로 하는 미국의 인공지능 연구소이다. 이윤을 목적으로 하는 기 ko.wikipedia.org OpenAI가 주목을 받고 있는.. 2023. 10. 6.
127.0.0.1 / localhost (LoopBack IP 주소) 리눅스에서 ifconfig 를 검색해보면 이와 같이 나온다. 이더넷 카드나 무선인터넷 갯수 유무에 따라 보이는게 다르겠지만 동일한것이 하나 있다. 맨 처음에 lo0: 으로 시작하는 주소가 있고 inet 127.0.0.1 이라고 쓰여있다. 이 lo는 loopback 의 약자로 자기 자신을 뜻한다. 이 주소를 루프백(loopback) 혹은 로컬호스트 주소(localhost)라고도 불린다. IPv4에서의 루프백 주소는 127.0.0.1이며, IPv6에서는 ::1 (0:0:0:0:0:0:0:1의 약자)로 사용된다. localhost로 불리는것에 대해서는 아래 참고 포스팅 참고 바란다. loopback의 동작 원리는 아래와 같다. TCP/IP 모델에서 생성된 모든 메시지는 수신자의 IP주소를 포함하게 된다. 특정.. 2023. 10. 5.
Java 와 Kotlin 차이점(안드로이드 개발) 안드로이드 어플을 만들 당시에 Kotlin에 대해서 처음 접해보게 되었었다. 둘은 다르지만 비슷한 언어로 많이 여겨지는데 둘의 차이에 대해서 다뤄볼 것이다. 일단 자바는 먼저 spring 이라는 막강한 프레임워크가 존재하여 큰 생태계가 존재하여 둘의 비교를 하기엔 코틀린이 상대가 안된다 생각할수 있지만 본 포스팅에서는 안드로이드 앱 개발에 한정되어 의견을 적어본다. 하지만 안드로이드 어플 내에서는 순수 자바를 사용하기에 코틀린과 많이 비교가 된다. 먼저 함수의 시작을 알리는 main 메서드에 대해서 코드를 살펴보면 자바 Class JavaClass{ public static void main(String[] args){ // } } 코틀린 fun main(){ // } 이렇게 사용이 되어 코틀린이 좀더 .. 2023. 9. 30.
반응형