데이터베이스 트랜잭션의 ACID 원칙
데이터베이스 트랜잭션의 ACID 원칙 CS 2024. 7. 30. 23:52

트랜잭션이란데이터베이스 시스템에서 트랜잭션이란 하나의 기능을 수행하는 작업 단위입니다.ACID 원칙은 이러한 트랜잭션의 일관성과 무관성을 지켜주는 핵심 개념입니다.예를 들어, 상대방에게 이체를 하는 기능이라면 이런 과정을 거치게 됩니다.나의 계좌를 확인한다.계좌에서 잔액을 확인하여 출금한다.상대방의 계좌에 보낸 금액을 입금한다.이 과정들은 하나로 묶여서 '이체'라는 기능을 수행하고 있고, 이를 하나의 트랜잭션으로 볼 수 있습니다.하나의 기능을 위해 여러개의 연산 과정을 거치면서 여러 데이터 값을 변경하고 있으므로 정확한 처리가 필요합니다.여기서 ACID 원칙이 중요한 역할을 합니다.ACID 원칙ACID원칙은 다음 네가지 요소로 구성됩니다.Atomicity(원자성)Consistency(일관성)Isolati..

정보처리기사 및 SQLD 합격
정보처리기사 및 SQLD 합격 이런저런이야기 2024. 7. 29. 22:12

정보처리기사와 SQLD3번의 시험정보처리기사를 따는데 참 오래 걸렸다. 지난주 본 시험에서 드디어 합격하여 발표 대기 중이다. 작년 초에 기출을 여러 번 돌려 공부하여 필기는 금방 합격했지만, 곧이어 본 실기 시험에서는 처참하게 떨어졌었다.(첫 번째 시험)시험 개편 이후에 코딩문제가 절반가까이 나오는 게 트렌드인데 C언어, java, 파이썬, SQL 문제가 골고루 나와서 대비하기가 까다로웠다.더욱이 다소 지엽적(?)인 보안 쪽 용어 문제들이 나오기 때문에 비전공자가 쉽사리 붙긴 어려운 시험이다. (합격률을 보면...) 거기에 1년에 딱 세 번밖에 없는 유니크한 시험인 것도 크다.접수 날 시작하자마자 큐넷을 들어가면 동접자 4~5만명이 기다리고 있는 것을 볼 수 있다.큐넷에서 이를 해결하기 위해 뭔가 방안..

인터넷 프로토콜 스택의 4계층, TCP/IP 레이어
인터넷 프로토콜 스택의 4계층, TCP/IP 레이어 CS 2024. 7. 28. 20:54

인터넷 프로토콜 스택(TCP/IP 레이어)인터넷 통신은 우편이나 택배 서비스 등으로 비유를 합니다.발신자(클라이언트)가 있고, 택배물건(패킷)을 통해 수신자(서버)에 전달하고, 물류센터들(노드)을 거쳐 수신자에게 전달되는 점에서 그렇습니다.그렇지만 일반 택배와 다른 점이 있다면 정해진 상자(패킷 크기)에 나누어서 보내야하고, 나누어서 보내기 때문에 조립순서가 필요합니다. 따라서 순서를 확인하기 위한 어떤 무엇인가가 있어야 할 것이고, 수신자 주소와 발신자 주소도 제대로 적혀있어야 합니다.인터넷 통신에서는 이렇게 순서를 확인하고, 실제로 발신자가 있는지 확인하는 프로토콜(언어)이 TCP(Transmission Control Protocol, 전송 제어 프로토콜)이고, 수신자와 발신자가 적혀있는 것이 IP(..

GIT 사용법 간단 정리
GIT 사용법 간단 정리 TOOL/GIT 2024. 7. 27. 18:02

Git과 GitHub의 차이Git: 소스 코드 버전 관리 시스템GitHub: Git 저장소를 올려서 관리할 수 있는 웹서비스Git 초기 설정git config --global user.name "닉네임"git config --global user.email "이메일"위 설정은 전역 계정 설정입니다.특정 프로젝트에서 다른 계정을 사용하는 경우 해당 폴더에서--global을 제외한 명령어를 입력하면 해당 프로젝트에만 사용하는 계정 설정이 가능합니다.프로젝트를 처음 시작하는 경우git init // git 초기화git add . // 모든 파일을 추가git commit -m "Initial commit" // 커밋메시지 입력git remote add origin [GitHub 저장소 URL] // git..

chmod 755 는 뭘까 - 리눅스 파일 시스템 권한 관리
chmod 755 는 뭘까 - 리눅스 파일 시스템 권한 관리 CS/OS 2024. 7. 26. 23:07

permission denied맥북을 사용하다보면 심심치 않게 파일을 실행할 때 permission denied를 만날 수 있습니다.이럴 때마다 chmod 755 명령어를 사용하여 파일에 대해 권한을 주어 해결하곤 하는데요.얼마전 시험에서도 공부했던 부분이라 정리 차원에서 더 공부하여 포스팅합니다.chmod 명령어란?chmod 명령어는 "change mode"의 약자로, 파일이나 디렉토리의 권한을 변경하는 리눅스(유닉스) 명령어입니다.(읽을때마다 쵸몬도로 읽게되어 썸네일에 추가해 봤습니다.) 엄밀히 말하면 유닉스 명령어이지만 리눅스도 유닉스 계열이고, 맥북의 macOS도 유닉스 계열이다보니 사용할 수 있는 것이지만 편의를 위해 리눅스 명령어라고 칭하겠습니다.755는 뭐지?리눅스의 파일 권한은 소유자/그룹..

자바 가변인자(varargs)와 힙 오염(Heap pollution)
자바 가변인자(varargs)와 힙 오염(Heap pollution) Language/JAVA 2024. 7. 25. 22:33

가변인자가변인자(Variable Arguments, 줄여서 varargs)는 자바 5에서 도입된 기능으로 메소드의 파라미터를 가변적으로 받을 수 있게 해주는 문법입니다. 메소드 오버로딩을 하기 위해서 파라미터를 바꿔가며 만드는 것이 아니라 하나의 메소드로 표현이 가능합니다.가변인자 예시Java의 API에서 가변인자를 사용하는 많은 메소드가 있습니다.가장 흔한 예로는 배열을 쉽게 만드는 Arrays.asList(), 여러개의 문자열을 받아 포맷을 만드는 String.format()등의 메소드가 있습니다.클래스에 들어가보면 메소드에서 파라미터 (...args) 형태로 인자를 받은 것을 볼 수 있습니다.하나의 메소드에 가변인자를 적용함으로써 메소드를 하나만 적을 수 있고, 사용하는 곳에서 유연하게 인자를 처리..

image