Sobes.tech
Junior — Middle

გქონდათ თუ არა გამოცდილება სერვერული მოვლენებთან (Server-Sent Events)?

sobes.tech AI

პასუხი AI-სგან

დიახ, მაქვს გამოცდილება სერვერული მოვლენის (Server-Sent Events, SSE) მუშაობაში. ეს ტექნოლოგია საშუალებას აძლევს სერვერს გამოგზავნოს მომხმარებელს მონაცემთა ნაკადი ერთმხრივი HTTP კავშირის საშუალებით.

Go-ში SSE-ის განხორციელებისთვის ჩვეულებრივ გამოიყენება:

  • Content-Type: text/event-stream სათაურის დაყენება.
  • HTTP კავშირის გახსნა და შენარჩუნება.
  • მონაცემების გაგზავნა მოვლენის ფორმატში, მაგალითად:
w.Header().Set("Content-Type", "text/event-stream")
w.Header().Set("Cache-Control", "no-cache")
w.Header().Set("Connection", "keep-alive")

fmt.Fprintf(w, "data: %s\n\n", message)

SSE-ები სასარგებლოა მონაცემების რეალურ დროში განახლებისთვის, მაგალითად, შეტყობინებებისთვის ან სიახლეების ნაკადებისთვის, როდესაც სერვერს მუდმივად არ უნდა სთხოვო.