"The purpose of education is to replace an empty mind with an open one." - Malcolm Forbes
μ΄ Git μ μ₯μλ TIL(Today I Learned)μ κΈ°λ‘νκΈ° μν΄ λ§λ€μ΄μ‘μ΅λλ€.
μ΄ μ μ₯μλ μ£Όλ‘ λκ°μ§ λͺ©μ μΌλ‘ ꡬμ±λμ΄ μμ΅λλ€.
- κ°λ° λΈλ‘κ·Έμ κ²μλλ κΈλ³΄λ€λ κ°κ²°νκ² ννλ ν΅μ¬ κ°λ κ³Ό μ§μμ ꡬ쑰μ μΌλ‘ κΈ°λ‘νλ 곡κ°μ λλ€.
- κΎΈμ€ν νμ΅μ μ§ν₯νλ Today λΌλ λ¨μ΄μ μ¬λ‘μ‘ν λ§€μΌ λ§€μΌ μ 보λ₯Ό κΈ°λ‘νκΈ° μν΄ λΆνμ ν κΈμ μμ±νμ§ μμ΅λλ€.
μ± μ νμ©ν μ€ν°λ μλ£λ₯Ό κΈ°λ‘νκ³ κ³΅μ νλ 곡κ°μ λ³λμ DevBookStudies λ ν¬μ§ν 리 κ° μ‘΄μ¬νλ©° ν΄λΉ λ ν¬μ§ν 리λ₯Ό μ°Έκ³ ν΄μ£Όμλ©΄ κ°μ¬ν©λλ€.
TIL Repositoryλ μ§μμ μΈ νμ΅μ μΆκ΅¬νκ³ , κ·Έ κ³Όμ μμ μ»μ μ§μμ 곡μ νλ €λ λͺ©νλ₯Ό κ°μ§κ³ μμ΅λλ€.
μ΄κ³³μμ μ 곡νλ λͺ¨λ μ 보μ μλ£κ° νΉμλ μμ λ°©λ¬Έμμ κ°κ°μ μ±μ₯κ³Ό λ°μ μ κΈ°μ¬νκΈΈ μ§μ¬μΌλ‘ κΈ°μν©λλ€.
This repository is licensed under the MIT license
π± @ComponentScan , @EnableAutoConfiguration , μ°μ μμ
π± Spring @Transaction, Rollback, Isolation
π± Spring @Transaction μ ν μ ν 1(REQUIRED, REQUIRES_NEW, SUPPORTS, NOT_SUPPORTED)
π± Spring @Transaction μ ν μ ν 2(MANDATORY, NEVER,NESTED)
π± Functional endPoints μ annotation-based Controller
π± Wrapperλ‘ λ³΅μ‘ν Model κ΄λ¦¬νκΈ°
π± Mockito.mock() vs @Mock vs @MockBean & @Autowired vs @InjectionMock
π± SLF4Jμ Placeholder μ log μμ± μ΅μ ν λ°©μ κ³ λ―Ό
π± Spring Reactive Redis Lettuce μ κ°λ¨ μ¬μ© λ°©λ²
π± μ’μ μμΈ μ²λ¦¬ λ°©λ²
ποΈ JPA lock(λκ΄μ , λΉκ΄μ )
ποΈ Spring Data JPA Query Creation
ποΈ @where Annotation
β Stream 볡μ‘ν λ¨μΌ Filter vs λ€μ€ Filter
β Java volatile keyword
β Java Multi Thread νκ²½μμμ Singleton
β ExecutorService & Thread Pool μμ μ 볡 (Update Java 19 Feature)
β Do Not Use Optional Some Case
β var keyword guide
β Try With Resource And AutoClosable
β HashSet κ³Ό Listμ containsAll
β Checked & Unchecked Exception In Java
β Java Thread Synchronization wait(), notify(), and notifyAll()
β lombok @Delegate annotationn
β Google Guavaμ ImmutableListμ Collections.unmodifiableListμ μ°¨μ΄μ
β ParallStream CPU-Bounded , IO-Bounded, μν 곡μ
β Helper Class & Utill Class
β jstackμ νμ©ν μ€λ λ λ€ν
β Atomic Variable
ποΈ SQL κ°λ
μ©μ΄
ποΈ μ νλμ μΉ΄λλ리ν°
ποΈ Database Join
ποΈ Driving Table Driven Table
ποΈ μ€μ²© 루ν μ‘°μΈ & λΈλ‘ μ€μ²© 루ν μ‘°μΈ
ποΈ λΆμ°μ²λ¦¬ νκ²½μμ Data λΆμ° λ°©λ²(Consist Hashing & Sharding)
π Copy Query λ₯Ό νμ©ν DBFile csv fileλ‘ μΆμΆνκΈ°
π Postgres Database Execution Plan(DB μ€ν κ³ν)κ³Ό Explain Option νμ© λ°©μ
π Postgres Port λ³κ²½ & User Password λ³κ²½
π PostgreSQL ν
μ΄λΈ ꡬ쑰 μ¬μμ±μ μν SQL μΆμΆνκΈ°
π Postgres table μ json Dataλ‘ λ³ν λ° Json νμΌλ‘ μ μ₯
π¬ Delete Query SubQuery Dependent subquery μκ° μ§μ°
π MongoDB Basic
π MongoDB Data Modeling
π MongoDB Modeling Pattern
π΄ Redis Collections
βοΈ VPC νκ²½ λ° κ΅¬μΆ κ·Έλ¦¬κ³ InternetGateway & NatGateway
π§ββοΈ kubeconfig Endpoint Mismatch λ¬Έμ
β Helm μ μ₯μ , μ°¨νΈ μμ±, λ°°ν¬ λ° μκ°ν
π SSL(secure sockets layer) & TLS(Transport Layer Security ) & SSL Certification
π CipherSuit
π HTTP Status Code
π SDN
π ipv4 vs ipv6
π Interruption vs Interception vs Modification vs Fabrication
π Dictionary Attack, Rainbow Table κ·Έλ¦¬κ³ ν΄μ μΆ©λ
π Polling vs WebHook
π RPC vs Socket
π» κ°μν(Virtualization)μ κ°μν μ’
λ₯
π» μ κ°μν(FullVirtualization)vsλ°κ°μν(ParaVirtualization)
π» ν¨μ¨κ³Ό μ΄μ©μΈ‘λ©΄μμμ κ°μνμ μ₯λ¨μ
π» HostOSν κ°μν
π» νμ΄νΌλ°μ΄μ (Hypervisor)ν κ°μν
π» 컨ν
μ΄λν κ°μν
π³ mutable Infrastructure
π³ Immutable Infrastructure
π³ Make Docker Image
π³ Container μ€ν, κΈ°λ³Έ λ€νΈμν¬, κ·Έλ¦¬κ³ λΌμ΄ν μ¬μ΄ν΄
π³ Docker Storage and Volumes
π§ Userland and Kernel and Memory Check Command
π Gradle Cache & Descriptor(Description.bin)
π gradle build --refresh-dependencies
π build.gradle implementation vs api
π Gradle μμ‘΄μ± νΈλ¦¬ λ° μμ‘΄μ± κ΄λ¦¬
π± Mergeμ Rebaseμ μ°¨μ΄μ
π± git reflogλ₯Ό νμ©ν commit 볡ꡬ
π± git submodule
π± git client side hook (commit workflow hook)
π AES, Block Ciper, Padding
π€ GPT-4
π‘ etc_hosts , local dns
π€ Big O
π‘ MSAλ‘μ μ νμ κ΄ν κ³ μ°°(Jason Warner - Github CTO)