동시성(Concurrency)동시성은 단일 코어에서 시간 분할을 통해 여러 스레드를 번갈아 수행하여 동시에 작업이 처리되는 것처럼 보이게 만드는 개념이다. I/O 작업(사용자 입력, 네트워크 요청, 파일 입출력 등) 중 CPU가 유휴 상태일 때 context switching으로 다른 스레드 작업을 처리하여 효율성을 높일 수 있다. 이를 통해 서버는 여러 클라이언트 요청을 동시에 처리할 수 있지만, 동시성 환경에서는 Deadlock, Race Condition, Starvation 등의 문제가 발생할 수 있어 신중한 설계가 필요하다.비관적 락특징: 다른 트랜잭션이 해당 데이터에 접근하려고 하면 락이 해제될 때까지 기다리게 한다.장점: 데이터 충돌을 방지하여 트랜잭션이 실패할 위험이 적고 데이터의 일관성과..

인덱스가 무엇인가요?RDBMS에서 테이블의 검색 속도를 높이기 위해 사용하는 자료 구조입니다. 테이블 내의 하나 또는 여러 개의 열을 기반으로 생성되며, 특정 열에 대해 데이터를 정렬하거나 검색 효율을 높이는 역할을 합니다. 인덱스를 사용하면 Full Table Scan을 피하고, 필요한 데이터를 더 빠르게 찾을 수 있습니다. 주로 B-Tree, Hash 등의 알고리즘을 활용하여 구현되며, 검색 속도 향상뿐만 아니라 레코드 접근의 효율성을 높이는 기초를 제공합니다. Full Table Scan: 테이블의 모든 행을 확인인덱스가 동작하는 원리데이터베이스에서 특정 열을 검색할 때, 쿼리 옵티마이저(Query Optimizer)가 인덱스를 사용할지를 판단합니다. 옵티마이저는 SQL을 가장 빠르고 효율적으로 수..

https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr처음 문제를 봤을 때 중첩된 반복문으로 해결할 수 있을 거라 생각함. 코드 해설첫 번째 반복문에서 각 요소를 순회하고, 두 번째 반복문에서 해당 요소의 뒤에 있는 값들과 비교하여 첫 번째로 큰 값을 찾습니다. "다음 큰 수"를 찾을 때마다 두 번째 반복문을 종료하고, 결과를 저장합니다. 작성했던 코드class Solution { public int[] solution(int[] numbers) { int[] answer = n..

1. 프로듀서(Producer)데이터(메시지)를 발행하는 서비스.다양한 데이터 소스에서 가져온 데이터를 kafka의 특정 토픽에 저장.2. 브로커(Broker)kafka의 핵심 서버 컴포넌트.프로듀서로부터 데이터를 받아 저장하고, 컨슈머에게 전달.kafka 클러스터는 여러 브로커로 구성되며, 각 브로커는 하나 이상의 토픽 데이터를 관리.※ 클러스터: 비슷한 요소들이 모여 집합이나 군집을 이루는 것을 의미.※ 클러스터링: 비슷한 특성을 가진 데이터를 그룹으로 나눈 것.3. 토픽(Topic)kafka에서 데이터를 분류하는 단위.N개의 파티션으로 나뉘어 병렬 처리 지원.프로듀서는 특정 토픽에 데이터를 발행하고, 컨슈머는 해당 토픽을 구독하여 데이터를 소비.4. 파티션(Partition)토픽 내 데이터를 나눈 ..
최대공약수두 개 이상의 자연수의 공통된 약수 중 가장 큰 공약수를 바로 최대공약수라고 한다.예를 들면 12와 8의 최대공약수12의 약수: 1, 2, 3, 4, 6, 128의 약수: 1, 2, 4, 8두 수의 최대공약수는 4이다. 숫자가 3개 이상인 경우1. 모든 수를 동시에 반드시 나눌 수 있는 수로 나눈다.2. 더 이상 동시에 나눌 수 없으면 끝.3. 왼쪽 공약수를 모두 곱한다.최소공배수두 개 이상의 자연수의 공통된 배수 중 가장 작은 값을 의미한다.예를 들면 12와 8의 최소공배수12의 배수: 12, 24, 36, 48,...8의 배수: 8, 16, 24, 32, 40, 48,...두 수의 공통된 배수는 24, 48,...두 수의 최소공배수는 24이다. 숫자가 3개 이상인 경우1. 서로소가 아닌 수가..
https://school.programmers.co.kr/learn/courses/30/lessons/12948 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명더보기더보기더보기더보기프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해 주세요. 내가 푼 방식phone_number를 char[] temp에 변환해 저장반복문(for)에서 i 값이 마지막 4자리 전까지는 '*'을 answ..
https://school.programmers.co.kr/learn/courses/30/lessons/12931?language=java 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명 더보기더보기더보기더보기자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어주세요.예를 들어 N = 123이면, 1 + 2 + 3 = 6을 return 하면 됩니다. 내가 푼 방식int를 String으로 형변환 후 toCharArray() 메서드를 활용하여 char[] 배열에 담기반복문(for)을 통해 answer에 값 더해주기 char 타입의 문자 '1'을 in..
- Total
- Today
- Yesterday
- Python
- isalpha
- combinations
- counter
- function
- Built-in Functions
- isdigit
- index
- for
- Lambda
- zip
- find
- Lower
- Upper
- permutations
- operators
- Method
- If
- bool
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |