๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป ๐ŸŒฎ ๐Ÿ’ฌ
๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป/network

์ธํ„ฐ๋„ท ์—†๋Š” 2๊ฐœ์˜ PC ํ†ต์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•

by ๋ฐ”์ฟ„๋ฆฌ 2024. 11. 28.

๊ฐœ์š”

๋„คํŠธ์›Œํฌ๊ฐ€ ์•ˆ๋˜๋Š” ํ™˜๊ฒฝ์—์„œ PC 2๊ฐœ๊ฐ€ ํ†ต์‹ ํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์—์„œ ์–ด๋– ํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ง€์— ๋Œ€ํ•œ search

  • 1๋ฒˆ PC : stt, llm์ด ์ง„ํ–‰๋˜๋ฉฐ ๋กœ๋ด‡์— ์ „๋‹ฌํ•  ๋ช…๋ น์„ return
  • 2๋ฒˆ PC : ๋กœ๋ด‡ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ. 1๋ฒˆ PC๋กœ ๋ถ€ํ„ฐ ๋ช…๋ น์–ด๋ฅผ ์ „๋‹ฌ๋ฐ›์•„ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค.

Socket ํ†ต์‹  (TCP/UDP)

  • ์†Œ์ผ“ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ด์šฉํ•˜๋ฉด 1๋ฒˆ PC์—์„œ ๋ฐ˜ํ™˜๋ฐ›์€ ๊ฐ’์„ 2๋ฒˆ PC๋กœ ์ง์ ‘ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋กœ์ผ“ ๋„คํŠธ์›Œํฌ์—์„œ ip์™€ port๋กœ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ๋น ๋ฅด๊ณ , ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „์†ก์— ์ ํ•ฉํ•˜๋‹ค.
  • ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค.
    • 2๋ฒˆ PC์—์„œ ์†Œ์ผ“ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ํŠน์ • ํฌํŠธ๋ฅผ ์—ด์–ด๋‘”๋‹ค.
    • 1๋ฒˆ PC์—์„œ ํด๋ผ์ด์–ธํŠธ ์†Œ์ผ“์„ ํ†ตํ•ด 2๋ฒˆ PC์˜ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•œ๋‹ค.
  • python์—์„œ socket ๋ชจ๋“ˆ ์‚ฌ์šฉํ•˜๋ฉด ๋จ

ํŒŒ์ผ ๊ณต์œ  ๋ฐฉ์‹ (SMP/NFS)

  • 1๋ฒˆ PC์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๊ณ , 2๋ฒˆ PC์—์„œ ํ•ด๋‹น ํŒŒ์ผ์„ ์ฝ๋Š” ๋ฐฉ์‹
  • ๊ฐ„๋‹จํ•˜๊ณ , ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐ ์ ํ•ฉํ•˜๋‹ค.
  • ์‹ค์‹œ๊ฐ„์€ ๋ณด์žฅํ•  ์ˆ˜ ์—†๋‹ค. → ํƒˆ๋ฝ !

HTTP ์„œ๋ฒ„ ๋ฐฉ์‹

  • 2๋ฒˆ PC์—์„œ ๊ฐ„๋‹จํ•œ HTTP ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜์—ฌ 1๋ฒˆ PC๊ฐ€ HTTP POST ์š”์ฒญ์œผ๋กœ ๋ณด๋‚ธ๋‹ค.
  • REST API์™€ ๊ฐ™์ด ํ™•์žฅ ๊ฐ€๋Šฅ
  • fastapi ์‚ฌ์šฉ ์˜ˆ์ •
  • ์ธํ„ฐ๋„ท ์—†์ด๋„ ๋กœ์ปฌ ๋„คํŠธ์›Œํฌ์—์„œ IP์™€ ํฌํŠธ๋ฅผ ํ†ตํ•ด HTTP ์š”์ฒญ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

๋กœ์ปฌ ๋ฉ”์„ธ์ง€ ๋ธŒ๋กœ์ปค ์‚ฌ์šฉ (MQTT)

  • ๋„คํŠธ์›Œํฌ ๋ธŒ๋กœ์ปค๋ฅผ ์‚ฌ์šฉํ•ด ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹
  • ํ™•์žฅ์„ฑ์ด ๋†’๊ณ , ๋‹ค์ˆ˜์˜ ์žฅ์น˜๊ฐ€ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ํšจ๊ณผ์ 
  • ๊ตฌํ˜„
    • MQTT ๋ธŒ๋กœ์ปค๋ฅผ ๋„คํŠธ์›Œํฌ์—์„œ ์‹คํ–‰ (์˜ˆ: Mosquitto)
    • 1๋ฒˆ PC๊ฐ€ MQTT ํด๋ผ์ด์–ธํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒŒ์‹œ (publish)
    • 2๋ฒˆ PC๊ฐ€ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ๋…(subscribe)ํ•˜์—ฌ ์ฒ˜๋ฆฌ