트랜잭션의 4가지 핵심 속성 : ACID에 대해 간단하게 알아보기
·
CS
1. ACID란?원자성 (Atomicity), 일관성 (Consistency), 격리성 (Isolation), 지속성 (Durability)의 약자로,데이터베이스의 트랜잭션이 안전하고 일관되게 수행됨을 보장하는 속성입니다.🤔 트랜잭션(Transaction)이란?트랜잭션은 하나의 논리적인 작업 단위를 의미하며,작업 수행시 모두 성공하거나 모두 실패해야 합니다.또한 트랜잭션은 ACID를 만족해야 데이터의 무결성과 신뢰성을 보장할 수 있습니다. 2. ACID의 속성(1) 원자성 (Atomicity)✅ 원자성이란?트랜잭션 내의 모든 작업이 전부 성공하거나 실패해야 한다는 성질입니다. 즉 트랜잭션을 더이상 나눌 수 없는 하나의 단위로 보고,실행 중간에 어떤 작업이 실패하면, 전체 트랜잭션이 수행되지 않은 것..
[정처기] 1과목 : 소프트웨어 설계 내용정리 - 2
·
자격증/정보처리기사
6. 요구사항 개발(1) 요구사항 개발1️⃣ 요구공학정의 및 목적: 고객이 원하는 것을 어떻게 정확하게 뽑아낼 수 있을까?❶ 이해관계자 사이의 원활한 의사소통 수단을 제공❷ 요구사항 누락 방지, 상호 이해 오류 등의 제거로 경제성을 제공❸ 사용되는 도구 - 자료흐름도, 자료 사전, 소단위 명세서 등❹ 요구사항 변경 이력 관리 (문서화)를 통해 개발 비용 및 시간 절약 요구사항 베이스 라인 (기준선) : 이해 당사자 간의 명시적 합의 내용 & 프로젝트 목표 달성 여부 확인 기준 2️⃣ SWEBOK에 따른 요구사항 개발 프로세스SoftWare Engineering Body of Knowledge, 소프트웨어 공학 지식 체계도출(Elicitation) - 분석(Analysis) - 명세(Specifica..
[정처기] 1과목 : 소프트웨어 설계 내용정리 - 1
·
자격증/정보처리기사
1. 소프트웨어 공학의 개념(1) 소프트웨어1️⃣ 소프트웨어의 특징상품성 : 판매를 통해 수익을 올릴 수 있어야 한다.복잡성 : 개발 과정이 복잡하고 관리가 어려움변경 가능성 : 업데이트나 오류 수정을 위해 언제든 변경될 수 있다복제성 : 한 번 만들면 여러 사용자에게 쉽게 복제·배포할 수 있다. 2️⃣ 시스템의 기본요소 : 입력 - 처리 - 출력 - 제어 - 피드백 3️⃣ 소프트웨어 위기의 원인소프트웨어가 복잡해짐에 따라 많은 인력이 많이 필요해지고 개발 기간이 지연됨또한 개발 인력도 부족해졌기에 인건비가 상승됨➡️ 하드웨어 비용을 초과하는 개발 비용의 증가성능 및 신뢰성이 부족하고,유지 보수의 어려움에 따른 엄청난 비용이 발생 (2) 소프트웨어 공학1️⃣ 소프트웨어 공학의 이해: 적은 돈으로 ..
[Spring] RestTemplate을 활용한 공공데이터 API 호출하기
·
Framework/Spring
내일배움캠프 최종 프로젝트를 진행하면서,공공데이터 API를 활용해 주차장 정보를 주기적으로 수집하고 DB에 저장하는 기능을 구현하였습니다. 이 과정에서 외부 API를 호출하기 위해 RestTemplate을 사용했습니다. 이번 글에서 해당 기능을 구현하면서 공부한 RestTemplate과 활용에 대해 정리하고자 합니다. 1. RestTemplate에 대해 알아보기[정의 및 특징 요약]RestTemplate은 Spring에서 제공하는 동기 방식의 HTTP 클라이언트로,사용법이 간단하고 직관적이고 다양한 HTTP 메소드를 지원합니다.하지만, 현재는 공식적으로 deprecated 예정되어 있어 WebClient를 권장하고 있습니다. (1) RestTemplate의 특징1️⃣ 동기 방식의 HTTP 요청 처리..
[Java] AWS Lambda를 이용하여 특정 시간에 외부 API 호출하기
·
AWS
1. AWS Lambda란?AWS에서 제공하는 서버리스(serverless)기반의 FaaS(Function as a Service)로,별도의 서버를 구축하거나 운영하지 않고 코드만 실행할 수 있는 서비스이다. (1) 서버리스란? (Serverless)저장소와 서버와 같은 인프라 요소는 서비스를 제공하는데 있어 꼭 필요하다.하지만 서버리스는 개발자가 직접 서버를 구축하거나 관리하지 않아도 되는 방식이다. 그렇다고 서버가 없다는 의미는 아니며,실제 서버는 존재하지만 AWS 와 같은 클라우드 서비스가 인프라를 대신 관리해준다. 이를 통해 개발자는 서버 설정, 유지보수, 운영 등의 사항은 신경 쓰지 않아도 되어비즈니스 로직에만 집중할 수 있다. 서버리스 특징설명과금 모델실행된 만큼만 비용을 지불자동 확장트래..