본문 바로가기

자바 , 기타 공부34

3주차 - Kubernetes 설계 목표: 단순한 완료 보다는 학습 이후 개념의 확장과 추가에 이해를 응용하자 . 어떠한 가상머신에도 동일하게 관리되고 사용되어야 한다. 명령어 set들(script)를 활용할 수도 있다. Kubernetes는 스스로 monitoring하고 관리를 처리한다. (OpenStack의 , 사용자에게 monitoring과 처리의 전반을 맡기는 개념과는 반대의 개념이다. ) EX) WORK NODE에서 CONTAINER X를 NODE B에서 작업하라는 명령. 만약에 WORK NODE에서 명령을 내린다면, NODE B의 장애가 생겼을때 USER가 직접 이를 해결해야 한다. 즉, KUBERNES의 세부적인 명령을 내리지 않고 원하는 상태만을 서술하고 이후 기능을 KUBERNETES가 진행해주는 식의 설계를 식으로 설계하.. 2024. 1. 10.
2단원 소프트웨어 개발 인수테스트 ㅡ 사용자의 요구사항 확인 (알파 , 베타) 1. 자료 구조 **** 선형 구조 1. 배열 각 데이터마다 동일한 이름 변수를 사용한다. 2. 선형 리스트 연속 리스트 배열과 굉장히 유사하다. 삭제와 삽입시 해당 빈 공간을 밀어주고 땡겨주기가 필요 연결 리스트(Linked list) HEAD와 TAIL있는 [ ] 구조 기억하지? 바로 그것 .(검색은 느리고 중간 끊어지면 찾기가 힘듬) 하지만 삽입 삭제가 되게 쉬웠다. 3. 스택 LIFO. 꽉 채워진 상태에서 OVERFLOW . 삭제할 데이터 가 없어서 UNDERFLOW PUSH(삽입), POP(삭제) OVERFLOW> 후위 표기, 깊이 우선 탐색에 사용. 작업스케줄링엔 사용 불가. 차라리 수식 계산은 가능 TOP -> 이제 곧 나갈애 4. 큐 .. 2024. 1. 6.
3주차 WSL 설치 -> 윈도우에서 가상환경으로 LINUX를 사용할 수 있게 되어있다. UBUNTU로 진행하는 이유? UBUNTU에서의 설치와 관리가 용이 대부분의 SERVER들은 현재 LINUX위에서 작동하기 때문이다. VM와의 비교? VM은 너무 느리고 껐다 키기도 불편 . WSL는 가상머신 -> 어플리케이션과 운영체제를 포함.(즉 , 가상머신의 원래 정의는 한개의 컴퓨터에서 다른 운영체제를 사용할 수 있게 설정해주는 기계) 운영체제 -> 하드웨어와 소프트웨어가 통신하고, 어플리케이션을 관리하낟. LOCAL에서 굳이 AWS를 사용하지 않는 이유? 비용 때문. AWS로 공부까지 하기에는 금액상 무리가 굉장히 크다. 초 단순 명령어 작성 - kubernets에서 program 생성 방법 apiVersion: v.. 2024. 1. 3.
1장 - 소프트웨어 설계of 꼭 주의!!gof 주의! 1. 생명주기 ** 생명주기란 개발 방법론의 바탕으로, 운용 유지보수등의 관계를 단계별로 나눈 것. 폭포수,프로토타입, 나선형, 에자일 모형이 있다. 폭포수모형 -> 다시는 돌아갈 수 없다. 각 단계를 확실히 매듭짓고 승인 후 다음단계 -> 타당성 검토, 계획, 요구분석, 설계, 구현, 시험 , 유지보수 (고전모델) 프로토타입 -> prototype(시제품을 만들어, 최종 결과물 예측 . 요구시집 ->빠른 설계- > 프로토타입 -> 평가 -> 조정 -> 구현 반복 나선형 모델 -> 둘을 합친 것 (요구사항이 이해하기 어려울떄) 유지봇 과정 x 계획 수립 -> 위험분석->개발검증->평가. 안정성을 위해 위험을 최소화 . (이를 반복) 에자일 모형 -> 민첩한 모형. 민첩하고 기민하게 . 전반에 걸쳐 사용 .. 2024. 1. 2.
3,4 과목 3, 4과목을 통합한 이유는, 3과목은 sqld와의 유사 출제범위 4과목은 교가과정에서 배운 내용과 유사하기 떄문이다. 3과목 정규화 하는 것은, 테이블을 결합하여 종속성을 감소시키는 것이 아니고, 테이블을 분해하는 과정 -> 종속성을 제거한다. 반 정규화는 중복을 허용하고, 조인을 감소시키는 것. 정규화레벨 트랜잭션 2단계 로킹 규약? 트랜잭셔은 새로운 lock은 수행할 수 이씅나 unlock 이불가능한 확장단계, 새로운 unlock은 되지만 lock은 불가능한 축소단계. 교착상태를 예방할 수 없다. (풀고 lock 모두를 진행해야 되므로) 후보키 -> candidate key , 대체키 -> 후보키 중에서 기본키 제외 모든 키 여러가지 속성들의 집합으로, 각 행을 유일하게 식별 가능. 관계 해석 ->.. 2024. 1. 2.
쓰레드, 프로세스 프로그램은 실행 가능한 파일을 의미하고? 프로세스는 실행중인 프로그램을 의미한다. 프로세스는 자원(resource)와 쓰레드로 구성되어있다. 쓰레드는. 프로세스 네에서 실제 작업을 수행하는 것이다 즉, 개념상으로 이해하자면 프로세스라는 공장에서(실제 가동중) 일꾼들이 일을 하고, 이 일꾼들을 쓰레드라고 한다. 멀티 태스킹은 동시에 여러 프로세스를 실행시키는 것을 의미한다. 멀티 쓰레딩은 하나의 프로세스에서 여러 쓰레드를 실행시키는 것으로 , 생성 비용이 적고 쓰레드들은 자원을 공유한다. 멀티 ㅡ레딩은 자원이 효율적으로 사용되고, 응답성도 좋아진다 허나! 동기화에 주의해야하고 , dead-lock상태가 발생할 수 있다. 즉 주의해야할 사항들이 생긴다. 1. Thread를 상속받아서 사용하거나, 2.Runa.. 2023. 12. 28.
2회차 컨테이너란 ? 컨테이너 안에는 화물이 있고, 컨테이너 간은 독립적이다 . 사이즈나 규격등이 표준적. isolatio,portability가능하며, 동일한 platform 안에 올라갈 수 있다. 처음으로 명확한 컨테이너를 시작한 것이, 리눅스이다. 리눅스의 개념 (간단) namespace -> name (다양한 변수를 분리) 각 그룹이 독자적 사용 Cgroup -> cpu, 메모리 같은 자원을 격리 즉, 여러개의 프로세스가 각자 고립된 공간에서 사용되는 구조를 컨테이너라 한다. https://jihyukcoding.tistory.com/36 쓰레드, 프로세스 프로그램은 실행 가능한 파일을 의미하고? 프로세스는 실행중인 프로그램을 의미한다. 프로세스는 자원(resource)와 쓰레드로 구성되어있다. 쓰레드는.. 2023. 12. 27.
기초 4 -> 제너릭, 열거 ,어노테이션 앞선 11장에 자료구조 내용이 존재하지만, 이는 코딩테스트 수준이 어느정도 쌓여 자료구조로 들어갈때 다시 복습하도록 하겠다 . 코테를 파이썬으로 사용할 예정이라, 혼동을 막기 위함이다. 1. Generic 컴파일시 타입을 체크해줌 -> 안정성을 높여줌(형 안맞을시 compile부터 error) 형변환의 번거로움 줄여줌 Class Box { T item ; void SetItem(T item) {this.item = item ;} T getItem () {return item ;}} 생성시는 Box b = new Box () ; -> string type 변수를 가지는, box class . (한번 들어간 type과 다른 type의 객체는 추가될 수없다. ) 들어올수 있는 변수들의 타입을, 제한한 예시이다.. 2023. 12. 27.
기초 3장 - > 예외처리 , 기타 class 컴파일 에러란? compile시 발생하는 error 런타임 에러 -> 실행시 발생 . 논리적 에러 -> 의도와 다른 동작. (고프 내용을 기억하자) error와 예외의 차이는, 에러는 코드로 수습될 수 없는 오류이고, 예외는 코드로 수습될 수 있다 . error를 control하는것은 힘들지만, 예외는 따로 처리해줘야한다 . 즉, 예외 처리란 프로그램 실행시 발생할수있는 예외에 대비한 코드를 작성하는 것이다. try { //정상적인 행위 } catch (Exception e) { // 예외로 처리한 경우에 따라서, 어떤 일을 할까 } 이와 같으며, 동작 과정은 try 에서 예외가 발생한 경우, 해당 에외 catch qㅡㄹ럭을 확인. 찾게 되면, 그 catch 블럭을 수행하고 try-catch문을 빠져나와.. 2023. 12. 27.
기초 2장 -> 객체 지향 6장. 클래스란? 객체를 정의한 것. 객체는 실제로 존재하는 것. class- > 인스턴스화 인스턴스(객체). 각 객체의 string color(내부에 있는 변수) or void power() (내부 메서드) 이들을 멤버라고 한다. TVCLASS tv = new TV(); TV.CHANNEL = 7; TV.CHANNELDOWN() //내부 메서드 사용 SOUT(간단하게표현) (TV.CHANNEL); 변수 인스턴스변수 -> 각 인스턴스마다 개별적인 저장공간, 생성후 Variables.iv로 접근 가능 class 변수 (static) -> 같은 class의 모든 인스턴스가 공유. class loading시(가장 먼저 생성). 지역변수 -> 지역 블럭을 벗어나면 소멸 . Method main도 class로, .. 2023. 12. 26.