Overview ํ๋์จ์ด ์ฐ๋๊ณผ AI ์ด๋ฌผ ๊ฒ์ฌ ๊ธฐ๋ฅ์ ํต์ฌ์ผ๋ก ํ๋ ์ํ X-Ray ์ด๋ฌผ ๊ฒ์ฌ ์์คํ
์ ๋ฉด ์ฌ๊ฐ๋ฐ ํ๋ก์ ํธ. LabView ์๋์ฐ ์์ฉ ํ๋ก๊ทธ๋จ์ MSA๋ก ๋ณ๊ฒฝ. ํฌ๊ฒ ์ฅ๋น๋ฅผ ์ง์ ํต์ ํ๋ ํ๋์จ์ด ์คํ๊ณผ ๊ฒ์ฌ ์ํ์ ํ์ํ ๋น์ฆ๋์ค ๋ก์ง๊ณผ ๊ฒ์ฌ ์ด๋ ฅ์ ๊ด๋ฆฌํ๋ ์ ํ๋ฆฌ์ผ์ด์
์คํ์ผ๋ก ๋๋์ด ์๋น์ค๋ฅผ ์ค๊ณํ์ต๋๋ค. Technology ํ๋์จ์ด ์คํ์์๋ Redis message broker๋ฅผ ์ค์ฌ์ผ๋ก ํ๋์จ์ด ์ฐ๋ ์ ์ฉ ์ปจํ
์ด๋๋ค์ ๋ฐฐ์นํ๊ณ ํด๋น ์ปจํ
์ด๋๋ค์ ๋ํด TDD๋ฅผ ๋์
ํด ํ๋์จ์ด์ ์ํ Pain point๋ฅผ ์ค์์ต๋๋ค. X-Ray์ ๋ detector ์ปจํ
์ด๋๋ฅผ C++๋ก ๊ฐ๋ฐํ์ต๋๋ค. bmp ํ์ค์ ์ค์ํ๋ ๊น์ ๋นํธ ์ฌ๋๋ฅผ ๋ํ๋ผ ์ ์๋ ํ์์ ๊ณ ์ํ๊ณ , ๋ค๋ฅธ ์ปจํ
์ด๋๊ฐ mmap ํ๋กํ ์ฝ์ ํตํด์ ํ์ํ ์ด๋ฏธ์ง ์์ญ์overhead ์์ด ํ๋ํ ์ ์๋๋ก ํ์ต๋๋ค. ๋๋จธ์ง ํ๋์จ์ด ์ฐ๋ ์ปจํ
์ด๋์ Redis ์ธํฐํ์ด์ค ์ค๊ณ์ Node.js TypeScript ๊ฐ์ฒด ์งํฅ ์ค๊ณ๋ฅผ ์ฃผ๋ํ์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์คํ์์๋ ์๋ฌ ํธ๋ค๋ง๊ณผ Canvas๋ก ํ๋ ์ด๋ฏธ์ง๋ฅผ ์คํธ๋ฆฌ๋ฐํ๋ ๊ธฐ๋ฅ์ ๊ฐ๋ฐํ์ต๋๋ค. docker-compose services Name Language Category Features redis - Infra Event broker nginx Nginx Infra Static server, Reverse proxy, ์ด๋ฏธ์ง ์คํธ๋ฆฌ๋ฐ api Python Service CRUD, Auth, ์ด๋ฏธ์ง ์ฒ๋ฆฌ Microservice orchestrator Node Service ํ๋์จ์ด ์ํ ๋ชจ๋ํฐ๋ง ๋ฐ ํตํฉ ์กฐ์ detector C++ H/W Detector H/W ์ฐ๋, ๊ธฐ์ด์ ์ธ ์ด๋ฏธ์ง ์ฒ๋ฆฌ serial Node H/W ๊ฐ๋ณ ์๋ฆฌ์ผ H/W ์ํ ๊ด๋ฆฌ์ postgres SQL DB ์ ์ , ์๊ณ ๋ฆฌ์ฆ ํ๋ผ๋ฏธํฐ, ์ด๋ฏธ์ง ๋ชฉ๋ก ๊ด๋ฆฌ influxdb Flux DB ํ๋์จ์ด ์ฌ์ฉ ์ด๋ ฅ ๊ด๋ฆฌ s3 Node Infra mmap, ์ด๋ฏธ์ง ๋ฐ์ดํฐ ๊ด๋ฆฌ ai Python Service ์ด๋ฌผ ๊ฒ์ถ Yolo firmware C++, Python Deployment IO controller firmware uploader Lessons ์๋ง์ ์ผ๊ทผ์๋ ๋ถ๊ตฌํ๊ณ ํ๋ก์ ํธ์ ๋ชฉํ๊ฐ ๋ฌ์ฑ ๋ถ๊ฐ๋ฅํ ๋ชฉํ๋ก ์ค์ ๋ ํ์ Production์๋ ๋๋ฌํ์ง ๋ชปํ์ต๋๋ค. ์ด ๊ธ์ ํ๋ก์ ํธ์ ์์ฑ๋ณด๋ค ์ ์ปค๋ฆฌ์ด์์ ๊ฐ์ฅ ๋ณต์กํ ๋ฌธ์ ๋ฅผ MSA๋ก ์ด๋ป๊ฒ ํ๋ ค๊ณ ์๋ํ๋์ง๋ฅผ ์ค์ ์ผ๋ก ์ฝ์ด์ฃผ์๊ธธ ๋ถํ๋๋ฆฝ๋๋ค. ๊ฐ์ฒด๋ฅผ ํตํด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ์ ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ํ๋์ ์ธ C++ ๊ฐ๋ฐ์ ๊ฒฝํํ์ต๋๋ค. WebAssembly, pybind ๋ฑ์ ํตํด์ ์ผ๋ถ ๊ธฐ๋ฅ์ Nativeํ๊ฒ ๊ตฌ๋ํ๋ ๋ฐ ๊ด์ฌ์ด ์์๋๋ฐ, ์ด๋ฒ ํ๋ก์ ํธ์์ ์์ C++ ๊ฒฝํ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฏธ๋์ ์ด๋ฌํ ๊ฐ๋ฐ์ ๋งก์ ์ ์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค. Redis๋ฅผ ํตํ ํ๋์จ์ด ์ถ์ํ์ ํ๋์จ์ด์ ๋ํ TDD๊ฐ ํจ๊ณผ์ ์ผ๋ก ์๋ํ์ต๋๋ค.