전체 글

백엔드 개발자
Kotlin

[kotlin] kotest styles에 대해서

Kotest는 10가지의 다양한 스타일의 테스트 레이아웃을 제공합니다. 일부는 다른 인기 있는 테스트 프레임워크에서 영감을 받았습니다.1. Fun specinspired by scala testtest라는 함수를 호출하여 테스트를 실행한다.함수의 인자로 해당 테스트를 설명하는 문자열을 넘긴다.context 및 xtest를 사용하여 테스트를 비활성화할 수 있습니다.class MyTests : FunSpec({ test("String length should return the length of the string") { "sammy".length shouldBe 5 "".length shouldBe 0 } context("this outer ..

Spring

Resilience4j Circuit Breaker에 대해서

Resilience라는 단어의 사전적 의미는 회복성입니다. 심리학적 의학적인 영역에서는 어떤 시련이나 역경을 도약의 발판으로 삼아 더 높이 뛰어오르는 마음의 근력을 말하는데요. 시스템 관점에서의 Resilience의 의미도 크게 다르지 않은 것 같습니다. Resilience4j는 Netflix Hystrix(현재 deprecated)에서 영감을 받은 "fault tolerance" 라이브러리입니다. "fault tolerance"라는 키워드가 중요한 포인트인데 위키에 따르면 이렇게 나와 있습니다. 시스템을 구성하는 부품의 일부에서 결함(fault) 또는 고장(failure)이 발생하여도 정상적 혹은 부분적으로 기능을 수행할 수 있는 시스템이다. 어떤 시스템의 특정 일부분이 고장이 나거나 소위 장애가 발생..

TypeScript

[typescript] 타입스크립트 파헤치기1

노드 설치 명령어npm i -g typescript타입스크립트 버전tsc —versiontsconfig.json 구성하기tsc —inittsc 실행tsc index.ts타입스크립트의 설계 목표 현재와 미래의 ECMA스크립트 제안에 맞춘다. 모든 자바스크립트 코드의 런타임 동작을 유지한다. 자바스크립트 보다 느리다? 소해의 소지가 있음. 운영 프레임워크 대다수는 타입스크립트의 컴파일러를 전혀 사용하지 않습니다. 트랜스 파일을 위한 별도의 도구를 사용하고 타입스크립트는 타입 검사용으로만 사용 타입 스크립트는 코드를 빌드하는데 시간이 조금 더 걸립니다. 타입스크립트 코드는 브라우저나 Node.js 같은 환경에서 실행되기 전에 자바스크립트로 컴파일되어야 함 빌드 파이프라인은 대부분 성능 저하를 무시하도록 설정됨..

DB/Real Mysql

[Real Mysql] 04. 아키텍처

MySQL 서버는 사람의 머리 역할을 담당하는 MySQL 엔진과 손발 역할을 담당하는 스토리지 엔진으로 구분할 수 있다. 그리고 손과 발의 역할을 담당하는 스토리지 엔진은 핸들러 API를 만족하면 누구든지 스토리지 엔진을 구현해서 MySQL 서버에 추가해서 사용할 수 있다. 4.1 MySQL 엔진 아키텍처 4.1.1.1 MySQL 엔진 MySQL 엔진은 클라이언트로부터의 접속 및 쿼리 요청을 처리하는 커넥션 핸들러와 SQL 파서 및 전처리기, 쿼리의 최적화된 실행을 위한 옵티마이저가 중심을 이룬다. 또한 MySQL은 표준 SQL문법을 지원하기 때문에 표준 문법에 따라 작성된 쿼리는 타 DBMS와 호환되어 실행될 수 있다. 4.1.1.2 스토리지 엔진 실제 데이터를 디스크 스토리지에 저장하거나 디스크 스토..

DB/Redis

[Redis] redis 파헤치기

캐시란 자주 사용하는 데이터를 미리 보관해둔 임시 장소를 의미캐시는 비교적 저장 공간이 적고 전체적인 비용이 비쌈 대신 빠른 IO를 통해 성능적 이점을 가져올 수 있음 일반적으로 아래와 같은 특징들을 가지고 있는 데이터에 대해 캐시를 사용하면 좋음도중에 변경될 일이 없는 데이터베이스 조회 값(캐시와 DB값이 다를 수 있는 경우가 있기 때문에)자주 호출되는 데이터스프링 부트에서 사용할 수 있는 캐시는 대부분 JSR-107을 따름JSRJava Specification Requests의 줄임말, 자바 플랫폼에 대한 규격을 제안하거나 기술그 중 JSR-107은 JCache에 관한 내용JSR-107을 따르는 캐시를 사용하면 어떤 구현체 캐시를 사용하는지에 관계 없이 추상화를 지원로컬 캐시로컬(해당 서버)에서만 사..

향찡
Dev Story