컴퓨터의 주기억장치의 종류에는 크게 RAM(Random Access Memory)과 ROM(Read Only Memory)이 있으며, '메모리'라는 용어는 RAM을 지칭하는 경우가 많다. RAM에는 실행할 프로그램의 명령어와 데이터가 저장되며, 전원을 끄면 날아가는 휘
모든 프로세스는 CPU를 필요로 하고 모든 프로세스는 먼저 CPU를 사용하고 싶어한다. 이러한 프로세스들에게 공정하게 CPU 자원을 할당하기 위해 운영체제는 CPU 스케줄링을 한다.CPU 이용률을 극대화하기 위해서는 효율적으로 CPU 스케줄링을 하여 항상 실행 중인 프
📌 Inter Process Communication프로세스 간 소통 방법프로세스는 독립적 (independent)이거나 다른 프로세스와 협력(cooperating)한다.독립적인 프로세스는 동시에 실행 중인 다른 프로세스에 영향을 주지 않지만, 협력이 필요한 프로세스
Open API 요청 시 데이터는 XML 또는 JSON으로 반환된다. 지금 사용하는 데이터는 XML 형식으로 받을 수 있다.이를 애플리케이션에서 사용할 객체로 변환하기 위해서는 파싱을 해야하며, 비교적 사용이 쉬운 DOM 파서를 이용하였다.이전 포스트에서 OpenAPI
공연예술통합전산망의 Open API에서 공연 정보를 받아오고, 데이터를 이용해 요청에 응답하려고 한다.링크에서 인증키 발급신청을 한다.입력한 이메일로 인증키가 발급된다. 해당 인증키를 저장해 둔다.Spring Initializr를 이용하여 프로젝트를 빌드한다.root
네트워크에 입력되는 트래픽 양이 네트워크가 처리할 수 있는 한도(capacity)를 초과할 경우 체증이 발생한다.정상적으로는 input만큼 output이 나와야하지만, congestion 상태에서는 input이 늘어날수록 혼잡도 때문에 output이 떨어지는 상황이 발
TCP는 받은 것에 대해서 ACK을 반드시 해야한다.하지만 실제로는 보낼 세그먼트를 계속 보내고, 보내는 중에 ACK이 날라온다.송신 TCP는 버퍼에 세그먼트를 보관하고 이것들을 순차적으로 전송하고, 수신 TCP는 도착한 세그먼트를 응용 프로세스가 읽을 때까지 버퍼에
TCP는 연결지향 프로토콜, 연속적으로 패킷의 상태 정보를 확인하고 유지한다.장치간에 데이터를 전송하기 전에 세션을 수립한다.클라이언트가 서버에 연결을 요청하고, 서버가 요청을 수락하여 연결을 설정하는 과정이다.클라이언트와 서버 간에 신뢰성 있는 연결을 설정하고 데이터
조인은 데이터베이스에서 테이블 간의 관련된 데이터를 결합하는 작업이며, JPA의 연관관계 매핑은 객체 지향 프로그래밍에서 객체 간의 관계를 표현하는 것입니다. 이러한 연관관계 매핑을 통해 객체 간의 관계를 사용하여 데이터베이스 테이블 간의 조인을 자동으로 처리할 수 있
Intellij - New ProjectSpring Initializr에서 아래와 같이 name, type, group 입력, JDK, java 버전 설정의존성 추가하기src - main - resources - application.properties 파일에서 Ren
Not Only SQL웹이 성장하면서 이미지, 동영상 같은 멀티미디어 데이터뿐 아니라, SNS를 통해 작성되는 다양한 형태의 텍스트와 로그 기록 같은 다양한 유형의 비정형 데이터가 빠른 속도로 대량 생산되고 있다. 이런 환경에서 관계형 데이터베이스는 한계가 있으며, 대
SQL injection은 사용자의 입력값이 서버측에서 코드로 실행되는 ‘코드 인젝션’ 공격 기법 중 하나이다. 📌 SQL injection : 웹 애플리케이션에서 DB Query에 사용될 사용자 입력값을 유효성 검증을 하지 않아, 개발자가 의도하지 않은 동적 쿼리
해시 (Hash) > 📎 **Hash Function : 임의의 데이터를 고정된 길이의 데이터로 매핑하는 단방향 함수. 📎 Hashing : 해시함수를 이용해서 데이터를 해시 테이블에 저장하고 검색하는 기법.** Hash function 보통 복잡하지 않은 알
💡 그래프 : 노드(node)와 노드 사이에 연결된 간선(edge)의 정보를 가지고 있는 자료구조‘서로 다른 개체가 연결되어 있다 → 그래프 알고리즘 고려ex) 여러개의 도시가 연결되어 있다.💡 트리 : 두 개의 노드 사이에 반드시 1개의 경로만을 가지며 사이클이
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".Spring Boot를 사용하면 "그냥 실행"할 수 있는 독립
JDBC API, JdbcTemplate (SQL mapper) 사용CRUD용 SQL 반복 작성테이블 설계 - 객체 모델링객체 모델링을 세밀하게 할수록 객체를 데이터베이스에 저장하거나 조회하기 어려워지고, 많은 SQL을 작성 필요 → 객체 모델은 데이터 중심 모델로 변
🍪 쿠키웹사이트에서 사용자의 브라우저에 전송하는 작은 텍스트 조각.쿠키는 key-value 형식의 문자열이다. 각 사용자마다의 브라우저에 정보를 저장하니 고유 정보 식별이 가능하다. 브라우저 (클라이언트)가 서버에 요청을 보낸다.서버는 클라이언트의 요청에 대한 응답을
운영 서버의 다운타임 (downtime) 제거 → gitlab으로 배포 시 발생했었던소프트웨어 개발 방법이론이 Agile 방식으로 바뀌면서 배포 빈도가 높아졌다.MicroService로 모듈화되어 독립적으로 개발하고 동시에 배포하고 있다. 다수의 자원 (중앙처리장치
REmote DIctionary Server‘키-값’ 구조의 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 in-momory data structure storeIn-Memory Data Strucrue storeOpen Source (BSD 3 License)Su
나중에 올 요청의 결과를 미리 저장해두었다가 빠르게 제공해주는 서비스자주 사용하는 데이터를 미리 보관해둔 임시 장소📌 Memory비교적 저장 공간이 적고 전체적인 비용이 비싸다. 대신 빠른 IO를 통해 성능적으로 이점이 있다.20%의 사용자가 80%의 요청을 한다.2