| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- 환급챌린지
- 시스템설계
- Spring
- 백준
- 국비지원취업
- baekjoon
- 디자인교육
- Be
- 티스토리챌린지
- JPA
- UXUIPrimary
- 백엔드 부트캠프
- 객체지향
- 오픈패스
- 디자인챌린지
- 국비지원교육
- UXUI기초정복
- 내일배움카드
- OPENPATH
- 패스트캠퍼스
- 디자인강의
- 국비지원
- UXUI챌린지
- KDT
- 오블완
- 백엔드개발자
- mysql
- 오픈챌린지
- 부트캠프
- Java
- Today
- Total
목록2025/09 (5)
군만두의 IT 개발 일지
목차 1장. 준비하기1.1 샘플 데이터베이스에 대해온라인 서점 '북원스' 운영 시나리오고객이 웹 사이트를 방문한다.고객은 자신의 세부 정보를 등록하기도 한다.그다음 장바구니에 한 권 이상의 책을 추가한다.이후 결제까지 넘어가 책을 구매한다.'북웍스'는 책을 확보한 후 고객에게 배송한다.1.2 설정하기1.2.1 데이터베이스 관리 소프트웨어DBMSPostgreSQLMariaDB/MySQLMicrosoft SQL Server(MSSQL)SQLiteOracle1.2.3 샘플 데이터베이스샘플 데이터베이스를 만든다. 그리고 데이터베이스에 연결한다.CREATE DATABASE bookworks;DBMS 옵션을 설정한다. 파일을 다운로드하고 압축을 풀어준다. 데이터베이스를 사용해 새로운 데이터베이스에 연결한다. 스크립..
목차 책 '주니어 백엔드 개발자가 반드시 알아야 할 실무 지식' 6장을 읽고, 재고 관리 서비스에서 마이너스 재고 문제가 발생했을 때를 생각하면서 동시성 제어 방법들을 정리했다.1. 동시성 문제란?여러 사용자가 동시에 같은 데이터를 수정할 때 발생하는 예측할 수 없는 결과다. 가장 흔한 예시는 재고 관리다.상황: 재고 10개인 상품에 동시에 15개 주문이 들어옴예상 결과: 10개만 주문 성공, 5개는 재고 부족으로 실패실제 결과: 15개 모두 주문 성공, 재고 -5개 (데이터 손상)// 문제 코드 - Race Condition 발생@Service@Transactionalpublic class ProductService { public void purchaseProduct(Long produc..
목차7장. 분산 시스템을 위한 유일 ID 생성기 설계분산 시스템은 여러 서버가 동시에 데이터를 생성하므로, 각 데이터를 고유하게 식별하고 충돌을 방지하기 위해 유일한 ID가 필요하다. 따라서 분산 시스템에서 유일성이 보장되는 ID를 만드는 것은 흥미로우면서도 까다로운 문제다. 이번 장에서는 분산 환경에서 사용할 유일 ID 생성기를 설계한다.1단계 문제 이해 및 설계 범위 확정요구사항ID는 유일해야 한다.ID는 숫자로만 구성되어야 한다.ID는 64비트로 표현될 수 있는 값이어야 한다.ID는 발급 날짜에 따라 정렬 가능해야 한다.초당 10,000개의 ID를 만들 수 있어야 한다.2단계 개략적 설계안 제시 및 동의 구하기분산 시스템에서 유일성이 보장되는 ID를 만드는 방법은 여러 가지가 있다.1. 다중 마스터..
목차CHAPTER 06 데이터베이스1. 데이터베이스의 큰 그림데이터베이스와 DBMS데이터베이스(Database): 원하는 기능을 동작시키기 위해 마땅히 저장해야 하는 정보의 집합DBMS(Database Management System): 데이터베이스를 관리하기 위한 프로그램(소프트웨어)로, 크게 관계형 데이터베이스 관리 시스템(RDBMS)과 NoSQL 데이터베이스 관리 시스템 두 가지 유형으로 나뉜다.RDBMS: MySQL, Oracle, PostgreSQL, SQLite, MariaDB, Microsoft SQL Server 등NoSQL: MongoDB, Redis 등서버로서의 DBMSDBMS는 다른 응용 프로그램과 상호작용하며 서버처럼 동작한다. 응용 프로그램은 DBMS에 쿼리(query)를 보내 데..
목차10장. 객체지향 쿼리 언어- JPQL (Java Persistence Query Language)- Criteria 쿼리와 QueryDSL- 네이티브 SQL과 다양한 쿼리 기술10.1 객체지향 쿼리 소개JPA는 복잡한 검색 조건을 사용해서 엔티티 객체를 조회할 수 있는 다양한 쿼리 기술을 지원한다.EntityManager.find() 메소드만으로는 애플리케이션에서 필요한 모든 검색 기능을 구현하기는 현실적으로 어렵다.ORM을 사용하면 데이터베이스 테이블이 아닌 엔티티 객체를 대상으로 개발하므로 검색도 테이블이 아닌 엔티티 객체를 대상으로 하는 방법이 필요하다.JPA가 공식 지원하는 쿼리 방법JPQL (Java Persistence Query Language): SQL과 가장 비슷하며 가장 일반적으로..