본문 바로가기

캐싱6

[마이바티스(MyBatis)] 마무리 (주의사항 및 성능 최적화) Chapter 10. 마무리 (주의사항 및 성능 최적화) 마이바티스의 기본적인 개념부터 실제 활용 방법까지 다양한 내용을 알아보았으며. 이 장에서는 마이바티스를 사용하며 주의해야 할 사항과 성능 최적화 방법에 대해 알아보겠습니다. Chapter 10. 마무리 (주의사항 및 성능 최적화) 10.1. 마이바티스 사용 시 주의사항 10.1.1. N+1 문제 10.1.1.1. N+1 문제의 정의 10.1.1.2. N+1 문제 해결 방법 10.1.2. 커넥션 누수 10.1.2.1. 커넥션 누수의 원인 10.1.2.2. 커넥션 누수 방지 방법 10.2. 성능 최적화 10.2.1. 캐싱 방법 10.2.1.1. 캐싱의 중요성 10.2.1.2. 마이바티스에서의 캐싱 방법 10.2.2. 쿼리 최적화 10.2.2.1. 쿼리.. 2023. 5. 16.
[파이썬(PYTHON) : 고급] 성능 최적화 3. 성능 최적화 3.1. 프로파일링 및 벤치마킹 3.1.1.1. 프로파일링이란? 프로파일링은 코드의 성능을 분석하고 최적화하는 과정에서 중요한 단계입니다. 이는 우리의 코드가 어느 부분에서 가장 많은 시간을 소비하고 있는지, 어느 부분이 가장 많은 메모리를 사용하고 있는지를 알려줍니다. 이 정보를 통해 우리는 성능을 개선할 수 있는 부분을 파악하고 최적화 작업에 착수할 수 있습니다. 3.1.1.2. 파이썬에서의 프로파일 파이썬에서는 cProfile이라는 모듈을 통해 프로파일링을 할 수 있습니다. cProfile은 파이썬 코드의 실행 시간을 측정하고 분석하는 데 사용됩니다. import cProfile import re def example_function(): re.compile("foo|bar") c.. 2023. 5. 13.
[스프링 부트(Spring Boot) & 마이바티스(Mybatis) 연동] 연동이란? 스프링 부트(Spring Boot) & 마이바티스(Mybatis) 연동이란? 스프링 부트(Spring Boot)와 마이바티스(MyBatis) 연동은 스프링 부트 프레임워크와 데이터베이스 연동 프레임워크인 마이바티스를 함께 사용하여 웹 애플리케이션을 구축하는 방법입니다. 마이바티스는 자바 개발자들이 데이터베이스와 상호 작용할 수 있도록 도와주는 프레임워크로, SQL 쿼리문을 작성하고 실행하여 데이터베이스와 상호작용할 수 있습니다. 반면 스프링 부트는 자바 기반의 웹 애플리케이션 개발을 위한 프레임워크로, 높은 생산성과 간편한 설정 방법 등의 장점을 가지고 있습니다. 스프링 부트와 마이바티스를 연동하여 사용하면, 데이터베이스 연동 기능을 빠르고 쉽게 구현할 수 있으며, 개발자들이 웹 애플리케이션 개발에 집중.. 2023. 5. 6.
[스프링 부트(SpringBoot) : 고급] 고급 실전 예제 및 최적화 전략 10. 고급 실전 예제 및 최적화 전략 스프링 부트의 고급 기능을 활용하여 웹 애플리케이션을 개발하고, 클라우드 네이티브 애플리케이션을 구축하는 방법을 배우고, 성능 및 안정성을 최적화하는 전략을 학습합니다. 10.1 고급 웹 애플리케이션 개발 고급 웹 애플리케이션 개발에서는 스프링 부트를 활용하여 웹 애플리케이션을 개발하는데 필요한 고급 기능과 전략들을 다룹니다. 이 과정에서는 웹소켓을 이용한 실시간 통신, 캐싱을 통한 성능 향상, 데이터 유효성 검사, 국제화 및 지역화 처리 등 다양한 주제를 다룰 예정입니다. 웹소켓을 이용한 실시간 통신 : 웹소켓(WebSocket)은 브라우저와 서버 간의 양방향 통신을 가능하게 하는 프로토콜입니다. 이를 활용하여 실시간 애플리케이션을 구축할 수 있습니다. ☞ 예제 .. 2023. 5. 6.
[스프링 부트(SpringBoot) : 중급] 성능 최적화 및 모니터링 도구 8. 성능 최적화 및 모니터링 도구 8.1. 애플리케이션 성능 모니터링 애플리케이션 성능 모니터링(APM)은 애플리케이션의 성능을 실시간으로 모니터링하고 분석하는 도구입니다. 스프링 부트 애플리케이션에서는 다양한 APM 도구를 사용할 수 있으며, 이 중에서 인기 있는 몇 가지 도구는 다음과 같습니다. Spring Boot Actuator: 스프링 부트 애플리케이션의 상태를 모니터링하고 관리하는 데 사용되는 모듈입니다. Actuator를 사용하면 애플리케이션의 상태, 메트릭, 빈, 스레드 등을 확인할 수 있습니다. // pom.xml org.springframework.boot spring-boot-starter-actuator Micrometer: 스프링 부트와 함께 사용할 수 있는 애플리케이션 메트릭 .. 2023. 5. 5.
[스프링 부트(SpringBoot) : 중급] 데이터베이스 연동 심화 2. 데이터베이스 연동 심화 여기서는 스프링 부트와 데이터베이스 연동의 심화된 내용을 다룹니다. 트랜잭션 관리, 캐싱 사용, 여러 데이터 소스 설정에 대해 알아보겠습니다. 2.1. 트랜잭션 관리 트랜잭션은 데이터베이스 작업의 원자성(Atomicity)을 보장하기 위한 방법입니다. 스프링 부트에서 트랜잭션 관리를 위해@Transactional 어노테이션을 사용합니다. 예를 들어, 사용자 정보를 등록하고 금액을 이체하는 작업이 있을 때 이 두 작업을 트랜잭션으로 묶어 원자성을 보장할 수 있습니다. @Service public class UserService { @Autowired private UserRepository userRepository; @Autowired private MoneyTransferS.. 2023. 5. 5.