전체 글
-
컨테이너(Container) , 쿠버네티스(Kubenetes), 오픈시트(Openshift differences) 차이점IT/서버 2023. 7. 30. 20:24
📑 컨테이너란? 컨테이너는 격리된 애플리케이션 런타임 환경이다. 오버헤드가 가상화보다 적다. 서버의 자원 활용 효율성을 높이려면, 하나의 서버에서 여러 애플리케이션을 실행하는 것이 좋다. 이때 애플리케이션들은 다른 애플리케이션에게 영향을 주지 않도록 격리되어야 한다. 컨테이너는 바로 격리된 런타임을 제공하는 기술이다. 컨테이너는 (가상화 VM과는 달리), 별도의 OS를 구동하지 않기 때문에 오버헤드가 더 적다. 오버헤드가 적은 많큼, 더 많은 애플리케이션을 구동할 수도 있다. 컨테이너는 런타임이 수백 수천개로 늘어나면 관리의 복잡도가 증가한다. 이런 단점을 해결하기 위해, 컨테이너 오케스트레이션 시스템이 필요하다. 쿠버네티스가 바로, 컨테이너 오케스트레이션 시스템의 대표적인 사례이다. 📑 컨테이너 애플리..
-
VM(가상머신)과 Container(컨테이너)의 차이IT/서버 2023. 7. 30. 18:33
컨테이너 엔진이 바로 도커이다. 📑 컨테이너와 가상 머신이란? 컨테이너 및 가상 머신은 애플리케이션을 IT 인프라 리소스로부터 독립적으로 만드는 기술이다. 📌 컨테이너는 애플리케이션의 코드, 라이브러리 및 기타 종속 구성 요소를 포함하고 있는 소프트웨어 코드 패키지이다. 컨테이너화를 통해 애플리케이션을 이동 가능하도록 만들어 모든 디바이스에서 동일한 코드를 실행할 수 있다. 📌 가상 머신은 물리적 머신의 디지털 사본이다. 동일한 호스트 운영체제에서 고유한 개별 운영체제가 실행되는 여러 가상 머신을 보유할 수 있다. 또한 애플리케이션을 실행하는 데 필요한 모든 것이 포함된 가상 머신을 생성할 수 있다. 📑 컨테이너와 가상 머신은 어디에서 사용되나요? 컨테이너와 가상 머신은 모두 배포 기술이다. 소프트웨어 ..
-
[CLOUD] Iass vs Paas vs SaasIT/클라우드 2023. 7. 23. 13:52
각 차이점에 들어가기 앞서 클라우드 컴퓨팅에대해 먼저 정리해보려 한다. 📑 클라우드 컴퓨팅이란? 스토리지, 플랫폼, 애플리케이션, 네트워크 등의 IT 자원들을 사용자가 소유하지 않고 통신망/인터넷을 통해 제공하여 소비자가 필요한 만큼 빌려쓰고, 사용한 만큼 비용을 지불하는 서비스 방식을 말한다. 즉) 인터넷 상의 가상화된 서버에 프로그램을 두고 필요할때마다 컴퓨터나 스마트폰 등에 불러와 사용하는 서비스이다. 클라우드(Cloud)라는 단어가 말해주듯, 인터넷 통신망 어딘가에서 구름에 싸여 보이지 않는 컴퓨팅 자원(CPU, 메모리, 디스크 등)을 원하는 대로 가져다 쓸 수 있다. 장점으론 다음과 같이 3가지가 있다. 📌 1. 서버를 직접 구매할 때 고려해야 할 전력, 위치, 확장설을 고민하지 않아도 된다. ..
-
Refused to apply style from '' because its MIME type ('application/json') is not a supported stylesheet MIME type, and strict MIME checking is enabled.프로그래밍 언어/에러노트 2023. 7. 18. 11:11
jsp 파일에 css 가 적용되지 않는 걸 확인했다. 아래와 같이 적용되지 않은 모습이다. jsp에서 사용한 link 태그를 살펴보면 경로가 다음과 같이 되어있다. 이 경로 앞에 /를 추가해주면 정상적으로 출력된다. 📌 / 추가!
-
[Spring Boot] 2-7. Validation 회원가입 중복 체크프로젝트/도서 관리 시스템 2023. 7. 17. 14:29
validation 어노테이션으로는 단일 필드에 대한 유효성 검증만 처리가 가능하기 때문에, 중복체크 같은 경우는 validation 어노테이션으로 해결이 불가능하다. 이전 포스팅에서는 js로 중복 검사를 하였는데 이번엔 validation을 커스터마이징하는 방법을 사용하려고 한다. 📑 1. Mapper 회원가입 시 사용자가 입력한 이메일 또는 닉네임에 해당하는 회원 정보가 db에 있을 경우 boolean 타입으로 true를 반환한다. 즉) false를 반환되어야 회원 가입이 가능한 것이다. select count(*) from members where email = #{email} select count(*) from members where nickname = #{nickname} package co..
-
[JAVA SWING] The type javax.swing is not accessible프로그래밍 언어/에러노트 2023. 7. 12. 11:33
오랜만에 Swing을 사용해보려고 했는데 빨간줄이 뜨면서 아래와 같은 경고가 떴다. The type javax.swing.JFrame is not accessible 아예 import 인식이 안되길래 검색해보니 프로젝트 생성 시 체크해서 만들었던 "module-info.java"라는 모듈 파일이 문제였다. 프로젝트를 생성할 때 create module-info.java 체크를 해제하거나 해당 파일을 삭제하면 정상적으로 처리된다.
-
[JAVA] Map에서 key, value 꺼내기 (entrySet, keySet, Iterator)프로그래밍 언어/JAVA 2023. 7. 10. 14:53
Map에 값을 전체 출력하기 위해서는 entrySet(), keySet() 메서드를 사용하면 되는데 entrySet() 메서드는 key와 value의 값이 모두 필요한 경우 사용하고, keySet() 메서드는 key의 값만 필요한 경우 사용한다. 📑 1. Iterator 사용 1 - keySet() : key 출력 keySet은 HashMap에 저장된 모든 키가 저장된 Set을 반환한다. 반환된 값들을 iterator()를 이용해 Collection의 Iterator를 얻어서 반환한다. Iterator는 자바의 컬렉션 프레임워크에서 컬렉션에 저장되어 있는 요소들을 읽어오는 방법을 표준화한 것이다. package parser; import java.util.HashMap; import java.util.I..
-
[Spring Boot] java.lang.Boolean is in module java.base of loader 'bootstrap' 에러 해결프로그래밍 언어/에러노트 2023. 7. 7. 18:40
java.lang.ClassCastException: class com.wish.library.security.domain.MemberSaveForm cannot be cast to class java.lang.Boolean (com.wish.library.security.domain.MemberSaveForm is in unnamed module of loader org.springframework.boot.devtools.restart.classloader.RestartClassLoader @1a899ccb; java.lang.Boolean is in module java.base of loader 'bootstrap') at com.sun.proxy.$Proxy70.getOneByEmail(Unkn..