본문 바로가기

분류 전체보기

(889)
수영장 락커 시스템 디자인 새벽 수영을 다녀오면서 수영장의 락커 시스템을 설계해보면 재미있을 것 같았다.그래서 실제 수영장의 요구사항을 기반으로 문제를 만들어보았다.기본 요구사항수영장에는 무인자동화발권기가 있습니다. 발권기를 통하여 신발장과 옷장의 락커를 배정받을 수 있습니다.총 480개의 신발장과 옷장이 있는 락카 시스템을 설계해보세요.요구사항 명확화수영장 입장과 퇴장은 어떻게 진행하나요? → 수영장 입장을 하는 키오스크에서 등록된 회원 카드를 접속하거나 일일입장 기능을 통해 비어있는 락커를 배정받을 수 있습니다. 락커는 어떻게 확인을 하나요? → 발권기는 배정 받은 락커 번호가 출력되는 표를 받습니다.신발장과 옷장의 락커 번호는 동일한가요? → 네. 최초 신발장에 열쇠가 꽂혀있고 그 열쇠를 이용하여 옷장을 열 수 있습니다.추가..
국민연금 홈페이지 서비스 일시중단 안내와 에러 메시지 2025년 2월 1일 오전에 국민연금 조회를 하려고 서비스 접속을 하려는데 로그인이 되지 않았다.모바일은 되나 싶어서 해보니 아래와 같은 오류가 발생했다.1회2회최초는 "오류가 발생했습니다."라는 개발자로서 퉁치는 에러메시지가 나왔다.두 번째는 "금융인증서 로그인 오류가 발생했습니다."라는 좀 더 구체적인 메시지가 나왔다.뒤에는 세부 내용이 덧붙어 있지만 이해할 수 없는 내용이다. 개발자 감으로 느끼면 뭔가 JavaScript의 TIL43-03 에러 메시지 같았다.더보기TIL43-03 에러 메시지let obj = { name: "John", age: 30 };console.log("My name is " + obj); // My name is [object Object]혹시나 싶어 공지사항을 확인해 보..
소나클라우드가 소나큐브 클라우드가 되었다. sonarqube의 매니지드 서비스 - 일명 클라우드 - 인 SonarCloud가 SonarQube cloud가 되었다.찾아보니 2024년 10월 1일에 공지가 있었다.아래와 같이 이름이 바뀌는 것이었다.SonarQube → SonarQube ServerSonarCloud → SonarQube CloudSonarLint → SonarQube for IDESonarQube Community Edition → SonarQube Community Build사이트의 도메인주소도 바뀌나 싶었는데 Aurelien의 질문에 현재 바꿀 계획은 없다고 한다. 그동안 SonarCloud와 SonarQube의 관계에 대하여 처음 설명할 때 길게 이야기를 해야 이해를 할 수 있었다면이젠 좀 더 직관적으로 SonarQube의 ..
메시지 템플릿 방식 및 구현 기술 조사 존 벤틀리의 생각하는 프로그래밍(원서명: Programming Pearls)의 컬럼3에 "폼 레터 프로그래밍"이 있다.일종의 메시지를 구성하는 템플릿에 대한 이야기이다.2022년 메시지 발송 관련 개발을 하면서 메시지 템플릿을 어떻게 할지 조사한 적이 있었다. 결과적으로는 "{{ mustache }}" 형태로 변수를 치환하는 Moustache 문법 방식을 채택했다.비개발자들도 템플릿 문법에 거부감없이 사용할 수 있어야 했던 것이 가장 큰 이유였다.기존의 마케터 분들이 사용하는 Braze의 Webhook Templates과 유사했기에 추가적인 학습 비용을 낮출 수 있었기 때문이다.물론, {% Directives %} 를 사용하기도 한다.구현체로는 Pebble Templates을 사용했다. Java, Kot..
[WIL] AWS RDS Aurora Cluster의 Read/Writer 연결 분리 이력 - 3가지 요약수동: 수동으로 DataSource 분기를 해서 사용하기AbstractRoutingDataSourceLazyConnectionDataSourceProxy자동 (라이브러리에 맡기기)MariaDB Java Client 2.7.12AWS Advanced JDBC Wrapper with readWriteSplitting 플러그인0. MySQL Connector/Jhttps://github.com/mysql/mysql-connector-jMVN Repository: https://mvnrepository.com/artifact/com.mysql/mysql-connector-j1. AWS JDBC Driver for MySQLhttps://github.com/awslabs/aws-mysql-jdbcMVN Rep..
Spring Cloud 2024.0.0 릴리스 Spring Boot 3.4.0이 릴리스할 때 처음 의존하는 Spring Cloud 2024.0.0이 아닌 RC1이었다.[WIL] Spring Boot 3.4.0 - JPA 통합테스트 깨짐 이슈3일전 2024년 12월 2일 2024.0.0이 릴리스되었다.릴리스 노트: https://github.com/spring-cloud/spring-cloud-release/wiki/Spring-Cloud-2024.0-Release-Notes 이제 https://start.spring.io/에서도Spring Cloud 의존이 된 경우 마일스톤용 리포지토리가 불필요하다. 이전:repositories { mavenCentral() maven { url = uri("https://repo.spring.io/mil..
[WIL] Spring Boot 3.4.0 - JPA 통합테스트 깨짐 이슈 스프링 부트를 3.3.5에서 3.4.0으로 올렸다.총 4293개의 테스트 케이스중에 15개의 에러, 1개의 실패가 발생했다. 1개의 실패는 spring-web의 DefaultResponseErrorHandler 코드의 변경으로 이루어졌다.3.3.5 업데이트글과 마찬가지로 getErrorMessage의 메시지 구성이 변경되어 깨지는 것이었다.이슈: https://github.com/spring-projects/spring-framework/pull/28958커밋: https://github.com/spring-projects/spring-framework/commit/f85c4e1ea714281c03287d1448dab9efcf81fc34Spring Cloud의 의존 버전이 2024.0.0가 아닌 202..
[WIL] Laravel 업데이트 현재 서비스 중인 PHP 프레임워크인 라라벨의 버전은 5.6.39이다.6년전인 2018년 2월 릴리스되었고 현재 마지막 버전은 2024년 3월에 릴리스한 11이다. 오래된 프레임워크 버전을 사용하다보니 여러가지 이슈가 나왔다.의존하고 있는 라이브러리들이 더 이상 업데이트가 되지 않고 심지어 개발 환경을 구축하기 위한 php 버전을 불편하게 설치해야 한다.예) homebrew - php@7.4 no longer works after icu4c 72 upgrade 이를 위해 개인이 만든 brew tab 을 이용하여 낮은 버전의 php 를 설치해야 했다.brew tap shivammathur/phpbrew upgrade shivammathur/php/php@7.4 반면 신규 개발 환경인 Kotlin + Spr..