| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 윤성우 열혈자료구조
- R
- coding test
- Selection Sorting
- C 언어 코딩 도장
- JSON
- Stack
- 이스케이프 문자
- stream
- Algorithm
- 윤성우의 열혈 자료구조
- 메모리구조
- Graph
- C programming
- 알기쉬운 알고리즘
- ㅅ
- datastructure
- 이것이 자바다
- s
- list 컬렉션
- Serialization
- buffer
- insertion sort
- 혼자 공부하는 C언어
- Today
- Total
목록전체 글 (607)
Engineering Note
플립플롭 블럭다이어그램 D-Flip-Flop 타이밍 다이어그 플립플롭(Flip-Flop) 동작 원리플립플롭 1비트를 저장하는 기본 메모리 소자핀 구성D(data): 저장하고 싶은 입력 값CLK(Clock): 언제 그 값을 저장할 지 알려주는 신호Q: 저장된 값이 출력 되는 곳핵심 동작 원리플립플롭은 클럭의 상승 엣지(rising edge) 순간에만 D 입력값을 "스냅샷" 찍듯이 캡처해서 Q로 출력 => 엣지 트리거(edge-triggered) 방식클럭이 낮은(0) 동안이나 높은(1) 동안에는 D가 아무리 바뀌어도 Q는 그대로 유지클럭이 0->1로 올라가는 그 순간에만 D값을 보고 Q로 반영Setup Time/ Hold TimeSetup Time : 클럭 엣지가 오기 전에 D가 미리 안정되어 있어야 하..
CDC(Clock Domain Crossing)와 Metastability(메타스테이블) 1. CDC(Clock Domain Crossing)란?디지털 회로에서 서로 다른 클럭 도메인(주파수가 다르거나, 같은 주파수라도 위상이 다르거나 비동기적인 클럭)사이에서 신호가 전달되는 경우예시 상황:CPU 클럭(예:100MHz)과 USB 컨트롤 클럭(예:48MHz)이 서로 달느 발진기에서 나옴두 클럭이 서로 위상 관계를 예측할 수 없는 비동기(asynchronous)관계 2. CDC가 문제가 되는 이유 -> Metastability(메타스테이블)플립프롧은 클럭 엣지 근처의 정해진 시간 윈도우(set up/hold window)안에서 데이터가 안정적으로 유지되어야 정상 동작 비동기 신호는 목적지 클럭 엣지와 아무 ..
NOR 게이트- OR 연산의 결과를 반전시켜 출력(OR 게이트는 입력 값이 하나라도 1이면 출력이 1)- 입력 값 중 하나라도 1이면 출력이 0 진리표ABF001010100110
컴퓨터 분야에서 클럭은 3가지 의미로 사용된다.첫 째는 컴퓨터 CPU의 속도다. 주파수의 개념으로 1초당 논리 연산을 한 횟수를 의미한다.둘 째는 시간의 개념이다. 디바이스 레벨의 아날로그, 디지털 회로에서 전압이 상승하는 주기를 의미한다. 셋 째는 전압이 상승하는 이벤트 사건 행위 그 자체에 대한 의미로 사용된다.
fetch join을 사용하는 이유fetch join은 JPA에서 지연로딩으로 설정되어 있는 연결된 엔티티를 지연로딩으로 조회하지 않고 한 번에 조회하기 위해 사용. fetch join의 한계일대다 컬렉션으로 연관관계를 맺고 있는 엔티티의 경우 페이지네이션이 불가능하다. 왜 페이지네이션이 적용이 안되나?RDBMS는 두 개의 테이블을 조인할 때, Cartesian Product(카테시안 곱)이 일어나는데 이때 데이터 중복이 발생한다. 예를 들면, 하나의 게시글에 3개의 댓글이 달렸다고 할 때, Post(게시글 테이블)과 Comment(댓글 테이블)을 조인하면 3개의 Row가 생긴다. Post 테이블post_idtitle1JPA 공부중 Comment 테이블comment_idpost_idcontents11..
분산 트랜잭션 처리 패턴- 여러 개읜 분산된 서비스를 하나의 일관된 트랜잭션으로 묶는 것 분산 트랜잭션 처리를 위한 전통적인 방법- 2단계 커밋- 원자성을 유지하기 위해 분산 데이터베이스 트랜잭션에 포함돼 있는 모든 노드가 커밋(commit)되거나 롤백(rollback)하는 메커니즘- 단점 : 각 서비스에 잠금(lock in)이 걸려 발생하는 성능 문제 탓에 효율적인 방법이 아니다. 사가 패턴- 일관성 유지가 필요한 트랜잭션을 모두 묶어 하나의 트랜잭션으로 처리하는 것이 아니라, 각 로컬 트랜잭션으로 분리해 순차적으로 처리하는 방법.- 롤백이 필요한 경우 보상 트랜잭션으로 데이터의 일관성을 유지한다. 보상 트랜잭션- 어떤 서비스에서 트랜잭션 처리에 실패할 경우 그 서비스의 앞선 다른 서비스에서 처리..
고아 객체JPA에서 부모 엔티티와 연관관계가 끊어진 자식 엔티티. 참조가 제거된 엔티티 고아 객체 제거부모 엔티티와 연관관계가 끊어진 자식 엔티티를 자동으로 삭제하는 기능. 또는 부모가 제거되면 자식이 제거되는 기능(부모를 제거하면 자식은 참조가 끊기기 때문. CascadeType.REMOVE 설정과 같은 역할을 함.)이 기능을 사용하면 부모 엔티티의 컬렉션에서 자식 엔티티의 참조만 제거할 때 자식엔티티가 삭제된다.참조하는 곳이 하나일 때만 사용할 수 있다. => @OneToOne, @OneToMany에만 사용할 수 있다. //예제 8.19 고아 객체 제거 기능 설정@Entitypublic class Parent { @Id @GeneratedValue private Long id; @OneToMan..
8.4 영속성 전이 CASCADE부모의 엔티티를 저장할 때 자식 엔티티도 저장할 것인지 설정하게 해주는 기능 8.4.1 영속성 전이: 저장 //예제 8.14 부모 엔티티@Entitypublic class Parent { @Id @GeneratedValue private Long id; @OneToMany(mappedBy = "parent") private List children = new ArrayList();}//예제 8.15 자식 엔티티@Entitypublic class Child { @Id @GeneratedValue private Long id; @ManyToOne private Parent parent;} 영속성 전이 설정을 하지 않고 Entity를 저장하는 예제private stat..