2024/12 3

[database] MySQL 엔진 아키텍처...1편

MySQL에서 서버는 머리에 해당하는 MySQL 엔진과 손발에 해당하는 스토리지 엔진으로 구분할 수 있다.만약 스토리지 엔진은 핸들러 API를 만족한다면 누구든 스토리지 엔진이 구현 가능하여 MySQL 서버에 추가해서 사용이 가능하다. 그래서 이번 블로그에서는 직접 스토리지 엔진을 구현하기 전에 MySQL 서버에서 기본적으로 제공되는 InnoDB 스토리지 엔진과 MyISAM 스토리지 엔진을 구분하며 MySQL의 아키텍처에 대해 살펴보자. MySQL 엔진 아키텍처 MySQL의 쿼리를 작성하고 더 좋게 튜닝하기 위해서는 기본적인 MySQL 엔진의 구조를 알아야 한다.MySQL의 서버는 다른 RDBS에 비해 독특하다. 사용자 입장에서는 모를 수도 있지만 독특해 다른 RDBS에서 얻을 수 없는 장점이 존재하기도..

카테고리 없음 2024.12.21

[project] 프로젝트 "Expo" 소프트웨이브까지의 회고..

프로젝트 소개광주광역시교육청의 외주를 받아 박람회의 관람객과 연수자, 일반 프로그램과 연수 프로그램 등을 단 하나의 QR로 입장 및 퇴장, 출석 등을 체크하여 통계를 낼 수 있도록 만든 프로젝트이다. 백엔드 깃허브Github: https://github.com/School-of-Company/Expo-Server GitHub - School-of-Company/Expo-ServerContribute to School-of-Company/Expo-Server development by creating an account on GitHub.github.com 기간2024.10.08 ~ 진행 중 팀원AOS: 1명 | Server: 1명 | iOS: 1명  | Front: 2명 | Design: 1명첫 외주현재..

project 2024.12.16

[spring] @Transactional인데 readOnly를 곁들인..

Spring을 사용하여 개발하다 보면 서비스 로직에 빠질 수 없는 것이 @Transactional 어노테이션이다. 하지만 이것에도 많은 옵션이 있다는 걸 아셨나요? 많은 것 중에 api의 성능을 높일 수도 있는 옵션은 readOnly를 알아보고자 합니다. @Transactional(readOnly = true)Spring에서 AOP를 사용하여 @Transactional을 사용할 수 있는데 여기서 위와 같이 readOnly를 true로 하게 된다면 읽기 전용으로 변경이 가능하다. 하지만 주의해야 될 점이라고 하자면 readOnly라는 옵션에서 직관적으로 알 수 있듯이 서비스 자체가 데이터를 DB에서 읽기만 하는 것에 적용을 해야 된다는 것이다. 만약 CUD 작업을 해야 되는 서비스이라면 데이터를 추가, 수..

spring 2024.12.07