hello jiniworld

hello jiniworld

  • hello jiniworld (219)
    • Spring (59)
      • Basic (16)
      • Spring Docs (6)
      • Spring Data JPA Tutorial (14)
      • Spring Boot Tutorial (17)
      • Jersey (6)
    • Go (17)
    • Dev (10)
      • Clean Architecture (3)
      • System Design (2)
      • Documents (2)
      • Client (2)
    • Infrastructure (5)
      • Docker (1)
      • Kubernetes (4)
    • DB (19)
      • MySQL (8)
      • MariaDB (9)
      • Oracle (1)
    • Java (52)
      • Basic (14)
      • coding test (27)
      • Effective Java (11)
    • Python (7)
      • Flask (1)
      • Basic (3)
      • Effective Python (1)
      • coding test (2)
    • Front-end (3)
      • Vanilla JS (2)
      • Basic (1)
    • Linux (11)
      • Basic (2)
      • Command-line (9)
    • Web Server (6)
      • CentOS 7 (5)
      • Oracle Linux 8 (1)
    • WAS (3)
    • CentOS 7 (17)
      • Basic (9)
      • Jenkins (8)
    • Etc (10)
      • Windows 10 (3)
      • trash bin (3)
08-02 05:10
  • 전체보기
  • 방명록
  • jini's GitHub
  • demo api
  • chaeking api
RSS 피드
로그인
로그아웃 글쓰기 관리

hello jiniworld

컨텐츠 검색

태그

week1 centos7 jenkins effectivejava Jersey Spring Boot Tutorial Command-Line MariaDB springboot codility Java Spring Boot spring docs MySQL hackerrank SpringBoot2 https Spring JAX-RS go

최근글

댓글

공지사항

  • SSL 인증서 설정하기

아카이브

hello jiniworld(219)

  • [Kubernetes 시작하기] 01. 쿠버네티스 소개

    2023.11.19
  • [MacOS M1] Apple Silicon Mac에 VM을 이용하여 Ubuntu 설치하기

    2023.11.18
  • [가상 면접 사례로 배우는 대규모 시스템 설계 기초] 11. 뉴스 피드 시스템 설계

    2023.08.26
  • [가상 면접 사례로 배우는 대규모 시스템 설계 기초] 01. 사용자 수에 따른 규모 확장성

    2023.05.19
  • [Hexagonal Architecture] 3. Adapter 구현하기

    2023.03.31
  • [Java - String] 1. 중복 문자 제거하기

    2023.03.08
[Kubernetes 시작하기] 01. 쿠버네티스 소개

이 포스팅은 쿠버네티스 시작하기 3/e 책을 정리한 내용입니다. Kubernetes? (= k8s) 개발 속도 향상 불변성 선언형 configuration 자가 치유 시스템 확장 인프라 추상화 클라우드 네이티브 에코시스템 1. Kubernetes? (= k8s) 쿠버네티스는 컨테이너화된 애플리케이션을 배포하기 위한 오픈소스 오케스트레이터입니다. orchestrator 레지스트리 저장소로부터 컨테이너 이미지를 가져오거나 배치하고 실행중인 컨테이너를 관리할 수 있게하는 도구 k로 시작되서 s로 끝나는 쿠버네티스는 k와 s 사이의 8글자를 줄여서 k8s라고 줄여서 부르곤 합니다. 대부분의 Public cloud 에서 지원하고 있으며, Cloud native application 구축을 위한 표준 API로 자리..

2023. 11. 19. 15:14
[MacOS M1] Apple Silicon Mac에 VM을 이용하여 Ubuntu 설치하기

M1 MacOS에 가상머신을 이용하여 Linux 설치하기 UTM은 Apple Silicon Mac 환경에서 x86/x64 운영체제를 가상화할 수 있게 합니다. 이 Hypervisor를 이용하면 VM환경에서 Linux나 Windows를 설치하여 사용할 수 있습니다. Ubuntu Server를 다운받은 후, UTM을 실행시킵니다. 본인 컴퓨터에 맞는 타입으로 iso파일을 다운받으면 됩니다. 저의 경우 MacOS M1 Appli silicon으로 arm 타입으로 다운받았습니다. 새 가상머신 만들기 버튼을 누르고 Virtualize(가상화) 를 누른 후 운영체제 Linux로 가상머신을 생성합니다. 탐색으로 통해 Boot ISO Image 를 불러오고 장치 설정은 각자 컴퓨터 사양에 맞춰 설정해주면 됩니다. 저의..

2023. 11. 18. 01:58
[가상 면접 사례로 배우는 대규모 시스템 설계 기초] 11. 뉴스 피드 시스템 설계

요구사항 개략적 설계 피드 발행 뉴스 피드 조회 상세 설계 피드 발행 상세 설계 뉴스피드 조회 상세 설계 캐시 구조 마무리 뉴스피드 시스템은 인스타그램이나 트위터와 같이 홈페이지 중앙에서 지속적으로 업데이트되는 포스팅 시스템을 말합니다. 뉴스피드 시스템을 설계하는데에서 고민해야하는 부분은 아래와 같습니다. 내가 작성한 포스팅을 나를 팔로워한 사용자들에게 발행하는 것 팔로잉하고 있는 사용자의 피드를 나의 뉴스피드에서 읽는 것 간단하게 표현하자면, 데이터를 쓰는 파트 그리고 데이터를 읽는 파트에 대해 설계하면 됩니다. 1. 요구사항 뉴스피드 시스템을 설계하기 위해 필요한 요구사항들을 생각해봅니다. 모바일, 웹 모두 지원 뉴스 피드 내가 직접 포스팅을 올릴수도 있고 팔로잉하고 있는 사용자가 올린 포스팅을 뉴스..

2023. 8. 26. 06:23
[가상 면접 사례로 배우는 대규모 시스템 설계 기초] 01. 사용자 수에 따른 규모 확장성

※ 이 포스팅은 가상 면접 사례로 배우는 대규모 시스템 설계 기초의 1장. 사용자 수에 따른 규모 확장성 부분을 정리한 것입니다. 개요 웹계층 Scale Out 로드밸런서 stateless 메시지 큐 로그, 메트릭, 자동화 데이터 계층 Scale Out 로드밸런서 && 데이터베이스 다중화 데이터베이스 규모 확장 샤딩 데이터베이스 종류에 대한 고민 응답시간 개선 캐시 CDN Cache && CDN 적용 결과 데이터 센터 1. 개요 1.1. 단일서버? 모든 컴포넌트(웹앱, DB, 캐시서버 등)가 단 한대의 서버에서 실행되는 시스템입니다. 웹서비스를 이용하고자하는 사용자가 웹서버에 바로 접근하는 구조로 웹서버가 다운될 경우 웹사이트 접속이 불가능합니다. 또, 데이터베이스가 하나이기 때문에 장애가 발생했을 시,..

2023. 5. 19. 02:16
[Hexagonal Architecture] 3. Adapter 구현하기

Web Adapter 구현하기 Persistence Adapter 구현하기 Output Port ORM Entity Mapper 클래스 참고 1. Web Adapter 구현하기 웹 어댑터는 incoming adapter 중 하나로, 외부로부터 http를 통해 request를 받아 애플리케이션 코어를 호출하는 주도하는 어댑터입니다. 우리가 controller 클래스로 정의하는 부분이 이에 해당되며, http와 관련된 기능을 담당합니다. 웹 어댑터는 application - port - in에 위치한 input port를 호출합니다. input port는 외부 어댑터와 애플리케이션 코어가 통신하는 명세로 인터페이스로 되어있어 DIP(의존성 역전 원칙)이 작용됩니다. 이전시간에 설명했던 UseCase 인터페이..

2023. 3. 31. 03:42
[Java - String] 1. 중복 문자 제거하기

주어진 문자열에서, 중복된 문자는 제거하는 코드를 작성하라 apple -> aple banana -> ban 풀이 indexOf 활용 HashSet 활용 stream의 distinct 활용 성능 1. 풀이 1.1. indexOf 활용 문자열 s의 각 문자를 순회하며 StringBuilder sb에 아직 입력되지 않은 문자를 추가한다. 문자가 sb에 포함되어있지 않다면 추가 포함되어있다면 추가하지 않으면 된다. static String removeDuplicates1(String s) { if (s == null || s.isBlank()) { return s; } StringBuilder sb = new StringBuilder(); for (char c : s.toCharArray()) { if (sb..

2023. 3. 8. 20:36
1 ··· 4 5 6 7 8 9 10 ··· 37
JINIWORLD
© jiniworld. All rights reserved.

티스토리툴바