Server-Sent Events (SSE)
Short Polling ,Long Polling , SSE λΉκ΅
Short Polling:
λμ λ°©μ: ν΄λΌμ΄μΈνΈκ° μΌμ ν κ°κ²©μΌλ‘ μλ²μ μμ²μ 보λ΄κ³ μλ²λ‘λΆν° μ¦μ μλ΅μ λ°μ΅λλ€. μλ‘μ΄ λ°μ΄ν°κ° μλλΌλ μλ΅μ λ°νλ©λλ€.
μ₯μ : ꡬνμ΄ κ°λ¨νκ³ λ κ±°μ μμ€ν κ³Όμ νΈνμ±μ΄ λ°μ΄λ©λλ€.
λ¨μ : μλ‘μ΄ λ°μ΄ν°κ° μμ λμλ μμ²κ³Ό μλ΅μ΄ μ§μλμ΄ λΉν¨μ¨μ μ΄κ³ μλ² λ¦¬μμ€ λλΉκ° λ°μν μ μμ΅λλ€.
μμ: (ν΄λΌμ΄μΈνΈλ μ£ΌκΈ°μ μΌλ‘ μ΄λ¬ν μμ²μ λ°λ³΅ν©λλ€.)
ν΄λΌμ΄μΈνΈ μμ²:
μλ² μλ΅ (μ λ°μ΄ν°κ° μλ κ²½μ°):
μλ² μλ΅ (μ λ°μ΄ν°κ° μλ κ²½μ°):
Long Polling:
λμ λ°©μ: ν΄λΌμ΄μΈνΈκ° μλ²μ μμ²μ 보λ΄λ©΄ μλ²λ μλ‘μ΄ λ°μ΄ν°κ° μμ λκΉμ§ μμ²μ 보λ₯ν©λλ€. μ λ°μ΄ν°κ° μκΈ°λ©΄ κ·Έλ μλ΅μ 보λ΄κ³ ν΄λΌμ΄μΈνΈλ μ¦μ μ μμ²μ 보λ λλ€.
μ₯μ : μ€μκ°μ κ°κΉμ΄ ν΅μ μ΄ κ°λ₯νλ©° μ λ°μ΄ν°κ° μμΌλ©΄ μμ²μ 보λ₯νμ¬ λ¦¬μμ€λ₯Ό μ μ½ν μ μμ΅λλ€.
λ¨μ : λμ μ°κ²° μκ° λ§μμ§ κ²½μ° μλ²μ λΆλ΄μ μ€ μ μκ³ , HTTP μ°κ²° νμμμ λ¬Έμ μ λν μ²λ¦¬κ° νμν©λλ€.
μμ:(ν΄λΌμ΄μΈνΈλ μλ΅μ λ°μ ν μ¦μ μλ‘μ΄ μμ²μ 보λ
λλ€.)
ν΄λΌμ΄μΈνΈ μμ²:
μλ² μλ΅ (μ λ°μ΄ν°κ° μκΈΈ λκΉμ§ λκΈ° ν μλ΅):
Server-Sent Events (SSE):
λμ λ°©μ: ν΄λΌμ΄μΈνΈκ° ν λ² μλ²μ μ°κ²°μ λ§ΊμΌλ©΄ μλ²λ μλ‘μ΄ λ°μ΄ν°κ° μμ λλ§λ€ ν΄λΌμ΄μΈνΈλ‘ λ°μ΄ν°λ₯Ό 보λ λλ€. μ΄λ λ¨λ°©ν₯ ν΅μ μ±λμ λ§λλλ€.
μ₯μ : ꡬνμ΄ λΉκ΅μ κ°λ¨νλ©°, HTTP νλ‘ν μ½μ μ¬μ©νμ¬ NATμ λ°©νλ²½ μΉνμ μ λλ€. λν μλ μ¬μ°κ²° κΈ°λ₯μ΄ μμ΅λλ€.
λ¨μ : λΈλΌμ°μ νΈνμ± λ¬Έμ κ° μμ μ μκ³ , λΈλΌμ°μ κ° μλ ν΄λΌμ΄μΈνΈμμλ μ§μμ΄ μ νμ μΌ μ μμ΅λλ€. μ΄μ€ λ°©ν₯ ν΅μ μ΄ νμν κ²½μ° WebSocketμ κ³ λ €ν΄μΌ ν©λλ€.
Accept: text/event-stream
ν€λλ HTTP μμ²μμ μ¬μ©λλ©°, μ΄λ ν΄λΌμ΄μΈνΈκ° μλ²μμ μ μ‘λλ μ΄λ²€νΈ μ€νΈλ¦Όμ λ°μ μ€λΉκ° λμ΄ μλ€λ κ²μ λνλ λλ€
μμ:(ν΄λΌμ΄μΈνΈλ μ°κ²°μ μ μ§νκ³ μλ²λ‘λΆν° λ°μ΄ν° μ€νΈλ¦Όμ λ°μ΅λλ€.)
ν΄λΌμ΄μΈνΈ μμ² (μλ²μ SSE μ°κ²° μ΄κΈ°ν):
μλ² μλ΅ (μ°κ²°μ μ μ§νκ³ μ λ°μ΄ν°κ° μκΈΈ λλ§λ€ λ©μμ§ μ μ‘):
μ΄κ²°λ‘ :
Short Polling: μ¬νν μν©μ΄λ μ κΈ°μ μΈ λ°μ΄ν° μ λ°μ΄νΈκ° νμνμ§ μμ κ²½μ° μ ν©.
Long Polling: μ€μκ° λ°μ΄ν°λ₯Ό μ²λ¦¬ν΄μΌ νμ§λ§, SSEλ WebSocket κ°μ λ 볡μ‘ν κΈ°μ μ μ¬μ©νκΈ° νλ κ²½μ° μ ν©.
SSE: μ€μκ°μΌλ‘ μλ²μμ ν΄λΌμ΄μΈνΈλ‘ λ°μ΄ν°λ₯Ό μ§μμ μΌλ‘ νΈμν΄μΌ νλ κ²½μ° μ ν©. μ΄μ€ λ°©ν₯ ν΅μ μ΄ νμνμ§ μμ λ μ¬μ©νλ©΄ μ’μ΅λλ€.
μ€μκ° ν΅μ λ°©μμ λν HTTP/2μ μ΄μ
Short Polling:
Short Pollingμ HTTP/2μ μ΄μ μ ν¬κ² νμ©νμ§ λͺ»ν μ μμ΅λλ€. λ€μ€ μμ²μ λμμ μ²λ¦¬ν μ μλ λ₯λ ₯μ΄ ν₯μλμ§λ§, μ¬μ ν λΉλ²ν μ°κ²° μ€μ κ³Ό ν΄μ λ‘ μΈν λΉν¨μ¨μ΄ μ‘΄μ¬ν©λλ€.
Long Polling:
HTTP/2μ λ€μ€ν κΈ°λ₯μΌλ‘ μΈν΄ μ¬λ¬ κ°μ Long Polling μ°κ²°μ΄ λμΌν TCP μ°κ²° μμμ ν¨μ¨μ μΌλ‘ μλν μ μμΌλ©°, ν€λ μμΆμΌλ‘ μΈν΄ μ€λ²ν€λκ° κ°μν©λλ€.
Server-Sent Events (SSE):
SSEλ HTTP/2μ ν¨κ» μ¬μ©λ λ λ ν¨μ¨μ μ΄ λ©λλ€. λ¨μΌ μ°κ²°μ ν΅ν΄ μ¬λ¬ κ°μ λ°μ΄ν° μ€νΈλ¦Όμ μ μ‘ν μ μμΌλ©°, μλ² νΈμ κΈ°λ₯μ ν΅ν΄ μ°κ΄λ λ°μ΄ν°λ₯Ό ν΄λΌμ΄μΈνΈμ λ λΉ λ₯΄κ² μ λ¬ν μ μμ΅λλ€.
HTTP/2μ μ£Όμ μ΄μ
λ€μ€ν(Multiplexing):
μ¬λ¬ μμ²κ³Ό μλ΅μ΄ λμμ κ°μ μ°κ²°μ 곡μ ν μ μμΌλ―λ‘ μ¬λ¬ λ°μ΄ν° μ€νΈλ¦Όμ΄ κ²½μνλ λμ ν¨μ¨μ μΌλ‘ κ΄λ¦¬λ©λλ€.
μ€μκ° ν΅μ μμλ ν΄λΌμ΄μΈνΈκ° μ¬λ¬ λ°μ΄ν° μ€νΈλ¦Όμ κ°λ³μ μΌλ‘ λ°μ μ²λ¦¬ν μ μμ΄ ν¨μ¨μ μ λλ€.
μ€νΈλ¦Ό μ°μ μμ(Stream Prioritization):
μμ²μ μ°μ μμλ₯Ό μ§μ ν μ μμ΄ μ€μν μμ²μ λ¨Όμ μ²λ¦¬ν μ μμ΅λλ€.
μ€μκ° μ ν리μΌμ΄μ μμ μ€μν λ©μμ§λ₯Ό μ°μ μ μΌλ‘ μ²λ¦¬ν μ μλ μ΄μ μ΄ μμ΅λλ€.
μλ² νΈμ(Server Push):
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ κΈ°λ€λ¦¬μ§ μκ³ μμΈ‘ κ°λ₯ν 리μμ€λ₯Ό 미리 λ³΄λΌ μ μμ΅λλ€.
SSEμ κ°μ΄ μλ²κ° μ΄κΈ°ννλ ν΅μ μ μμ΄μ λ ν¨μ¨μ μ΄ λ μ μμ΅λλ€.
ν€λ μμΆ(Header Compression):
HPACK μμΆμ μ¬μ©νμ¬ ν€λ λ°μ΄ν°λ₯Ό μμΆν¨μΌλ‘μ¨ μ€λ²ν€λλ₯Ό κ°μμν΅λλ€.
λͺ¨λ μ’ λ₯μ μ€μκ° ν΅μ μμ λ°λ³΅λλ ν€λ μ 보μ ν¬κΈ°λ₯Ό μ€μ¬ ν΅μ ν¨μ¨μ κ°μ ν©λλ€.
보μ κ°ν(TLS Enhancement):
HTTP/2λ TLSλ₯Ό μ¬μ©νλ 보μ μ°κ²°μ μ΅μ νλμ΄ μμΌλ©°, TLS 1.3κ³Ό ν¨κ» μ¬μ©λ λ 보μκ³Ό μ±λ₯μ΄ λμ± ν₯μλ©λλ€.
μ€μκ° λ°μ΄ν° μ μ‘μ 보μμ κ°ννλ©΄μλ μ±λ₯ μ νλ₯Ό μ΅μνν©λλ€.
Last updated
Was this helpful?