전체 글 316

[Java] 환경변수

환경변수를 설정하는 이유 환경변수(Path)를 설정하지 않고 임의의 프로그램을 실행 하려면 해당 실행 프로그램이 설치된 폴더로 이동해서 실행파일을 더블 클릭 하거나 바로가기를 만들어 이용하거나 작업표시줄에 등록하거나 시작 메뉴에 등록해서 이용하면 되지만 CMD 모드에서는 경로명을 일일히 지정해주거나 해당폴더로 디렉토리 이동해서 실행파일을 실행해주어야 한다 예를 들어 jdk1.8.0_60를 C:\Program files\java에 설치하였고 javac(Java compiler)를 실행하려고 한다면 명령라인에 C:\>cd \Program Files\Java\jdk1.8.0_60\bin 한 후에 C:\Program Files\Java\jdk1.8.0_60\bin\>javac 해당파일 경로\Test.java 해..

[Network] 192.168.1.0/24 고정값 범위

https://medium.com/개발-싹다물어/ip-주소-보다보면-뒤에-24-32-이렇게-쓰여있는데-이건-어떤-의미일까요-192-168-1-0-24-이런거요-1653d5b98180IP 주소 보다보면 뒤에 24 32 이렇게 쓰여있는데 이건 어떤 의미일까요? 192.168.1.0/24 이런거요IP 주소 보다보면 뒤에 24 32 이렇게 쓰여있는데 이건 어떤 의미일까요? 192.168.1.0/24 이런거요medium.com 전체중에 고정값으로 할 비트의 수

[소프트웨어공학] 익스트림 프로그래밍 XP

XP(eXtreme Programming) 기법 XP의 개요 - 수시로 발생하는 고객의 요구사항에 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상시키는 기법 - 짧고 반복적인 개발주기, 단순한 설계, 고객의 적극적인 참여를 통해 빠르게 개발하는 것이 목적 - 릴리즈의 기간을 짧게 반복하면서 요구사항 반영에 대한 가시성을 높임 - XP의 5가지 핵심 가치 : 의사소통, 단순성, 용기, 존중, 피드백 XP 개발 프로세스 - 사용자 스토리 -> 고객의 요구사항을 간단한 시나리오로 표현 - 릴리즈 계획 수립 -> 몇 개의 스토리가 적용되어 부분적으로 기능이 완료된 제품을 제공하는 것에 대한 계획 수립 - 스파이크 -> 요구사항의 신뢰성을 높이고 기술 문제에 대한 위험을 감..

[소프트웨어공학] 현행시스템 파악

현행 시스템 파악 현행 시스템 파악 절차 1단계 -> 시스템 구성 파악 : 조직의 업무를 담당하는 기간 업무와 이를 지원하는 업무로 구분하여 나타낸 구성을 파악 -> 시스템 기능 파악 : 현재 제공하는 기능들을 주요, 하부, 세부 기능으로 구분하여 계층형으로 표시 -> 시스템 인터페이스 파악 : 주고받는 데이터의 종류, 형식, 프로토콜, 연계 유형, 주기 등을 명시 2단계 -> 아키텍쳐 구성 파악 : 어떠한 기술 요소들이 사용되는지 최상위 수준에서 계층별로 표현한 구성 파악 -> 소프트웨어 구성 파악 : 업무 처리를 위해 설치되어 있는 소프트웨어의 제품명, 용도, 라이선스 적용 방식 등을 명시 3단계 -> 하드웨어 구성 파악 : 단위 업무 시스템들이 운용되는 서버의 주요 사양과 수량 및 이중화 적용 여부..

[SpringBoot] 빌드 툴

- 소스 코드 파일들을 컴퓨터에서 실행할 수 있는 제품 소프트웨어로 변환하는 과정 또는 결과물 - 소스 코드를 소프트웨어로 변환하는 과정에 필요한 전처리, 컴파일 등의 작업을 수행 빌드 자동화 도구 빌드 자동화 도구의 개념 - 소스 코드를 컴파일한 후 여러 개의 모듈로 묶어 실행 파일로 만드는 과정을 포함하여 테스트 및 배포를 자동화하는 도구 Jenkins - Java 기반의 오픈소스 - 서블릿 컨테이너에서 실행되는 서버 기반 도구 - 형상 관리 도구와 연동 가능 - Web GUI 제공으로 사용이 쉬움 - 여러 대의 컴퓨터를 이용한 분산 빌드나 테스트 가능 Gradle - Groovy를 기반으로 한 오픈 소스 형태의 자동화 도구 - 안드로이드 앱 개발 환경에 사용 - Java, C/C++, Python ..

카테고리 없음 2020.08.21

[Network] 세션 통제(Session Control)

세션 통제 세션 통제의 개요 - 서버와 클라이언트의 연결인 세션 간의 연결로 인해 발생하는 정보를 관리 - 요구사항 분석 및 설계 단계에서 진단해야 하는 보안 점검 내용 불충분한 세션 관리 - 일정한 규칙이 존재하는 세션ID가 발급되거나 타임아웃이 너무 길게 설정되어 있는 경우 발생 - 세션 하이재킹(세션 정보를 가로채는 공격)을 통해 획득한 세션 ID로 접근할 수 있음 잘못된 세션에 의한 정보 노출 - 다중 스레드 환경에서 멤버 변수에 정보를 저장할 때 발생 - 변수의 범위를 제한하는 방법으로 방지 가능 - 싱글톤 패턴에서 발생하는 레이스컨디션으로 인해 동기화 오류가 발생하거나 멤버 변수의 정보가 노출될 수 있음 - 레이스컨디션(race condition) : 두 개 이상의 프로세스가 공용 자원을 획득..

[Network] 흐름제어 Flow Control

흐름 제어 - 네트워크 내의 원활한 흐름을 위해 송수신 사이 전송되는 패킷의 양이나 속도를 규제 - 송수신간 처리 속도 또는 버퍼 크기의 차이에 의해 생길 수 있는 버퍼 오버플로우를 방지 - 정지-대기(Stop and Wait) : 수신 측에서 확인 신호를 받아야 다음 패킷을 전송 - 슬라이딩 윈도우(Sliding Window) -> 확인 신호를 이용하여 송신 데이터의 양을 조절 -> 수신 측의 확인 신호를 받지 않아도 정해진 패킷 수만큼 연속적으로 전송하는 방식 -> 한 번에 여러 개의 패킷을 전송할 수 있음

[Network] 경로제어

경로제어의 개요 - 전송 경로 중 어느 한 경로에 데이터의 양이 집중되는 것을 피하면서 최저의 비용으로 최단 시간에 송신할 수 있는 경로인 최적패킷교환경로를 결정 - 경로 제어표를 참조해서 라우터에 의해 수행 - 경로 제어 요소 : 성능 기준, 경로의 결정 시간 / 장소, 정보 발생지, 경로 정보의 갱신 시간 경로제어프로토콜 - 효율적인 경로 제어를 위해 네트워크를 제어하는 프로토콜 - IGP(Interior Gateway Protoco, l내부 게이트웨이 프로토콜) -> 하나의 자율시스템(AS) 내의 라우팅에 사용 -> RIP : 현재 가장 널리 사용되며 소규모 네트워크에서 효율적인 방법 -> OSPF (Open Shortest Path First) : 대규모 네트워크에서 많이 사용되는 프로토콜 - E..

[Network] 스위치 Switch

스위치 스위치의 정의 - LAN과 LAN을 연결하여 훨씬 더 큰 LAN을 만드는 장치 스위치의 분류 - L2 스위치(L이 Layer인듯) -> OSI 2계층에 속함 -> 일반적으로 부르는 스위치를 말함 -> MAC주소를 기반으로 프레임 전송 -> 동일 네트워크 간 연결만 가능 - L3 스위치 -> OSI 3계층에 속함 -> L2스위치에 라우터(router)기능이 추가 -> IP주소를 기반으로 패킷(packet) 전송 -> 서로 다른 네트워크 연결 가능 - L4 스위치 -> OSI 4계층에 속함 -> L3스위치에 로드밸런서(트래픽 분산 장치, load balancer) 추가 -> IP 주소 및 TCP/UDP기반으로 사용자들의 요구를 서버의 부하가 적은 곳에 배분하는 로드밸런싱 기능 제공 - L7 스위치 -..