> 업계 통찰 >서보 기구
기술 지원

두 개의 마이크로서비스가 서로 통신하는 방법

게시됨 2026-01-19

서보 모터가 "채팅"을 시작할 때: 마이크로서비스는 어떻게 서로 통신합니까?

각 관절이 독립적인 서보에 의해 제어되는 로봇 팔을 조립한다고 상상해 보십시오. 손가락 모터는 손목의 각도를 알아야 하고, 손목 모터는 팔꿈치와 조화를 이루어야 합니다. 어떻게 "대화"합니까? 기계 시스템의 세계에서 이러한 대화는 배선이나 중앙 집중식 컨트롤러를 통해 이루어지는 경우가 많습니다. 그러나 디지털 영역에서는 두 개의 마이크로서비스가 협력해야 할 때 상황은 낯선 두 사람이 세계 반대편에서 실시간으로 그들의 행동을 조정하는 것과 비슷해집니다.

기계식에서 디지털로의 다리

기계 프로젝트에서 우리는 전압, 펄스, 엔코더 피드백과 같은 물리적 신호를 사용하는 데 익숙합니다. 그러나 마이크로서비스의 세계에서는 통신이 눈에 보이지 않는 패킷이 됩니다. 어떤 사람들은 가장 간단한 방법을 직접적으로 생각할 수도 있습니다. 서비스 A가 서비스 B의 인터페이스를 직접 호출하도록 하는 것입니다. 버튼을 누를 때와 마찬가지로 표시등이 켜집니다. 이는 작동할 수 있지만 서비스 B가 항상 사용 가능하고 네트워크가 항상 열려 있고 두 서비스의 속도가 일치하는 경우에만 가능합니다. 현실은 네트워크가 지연되고 서비스가 다시 시작되며 트래픽이 급증한다는 것입니다. 직접 전화는 종종 "전화했지만 듣지 못했습니다"로 바뀌고 전체 프로세스가 중단됩니다.

그래서 지난 몇 년 동안 모든 사람들이 생각을 바꾸기 시작했습니다. 서비스가 직접 "전화"하는 대신 "이메일 보내기"를 허용하는 것입니다. 즉, 메시지 큐 또는 이벤트 중심 접근 방식을 통해 서비스 A는 메시지를 중간 플랫폼으로 보내고 서비스 B는 비어 있을 때 메시지를 선택합니다. 이는 작업장에 "모터 3 온도 경고, 처리해 주세요."라는 메모를 남기는 것과 같습니다. 처리를 담당하는 동료는 두 사람이 동시에 있는지 걱정하지 않고 메모를 보면 조정합니다.

기계적으로 비유하자면 이 방법은 각 모터에 작은 우편함을 설치하는 것과 약간 비슷합니다. 우편함이 꽉 찼나요? 그러면 당분간 새 메시지를 저장할 수 없습니다. 그러나 최소한 메시지는 손실되지 않으며 시스템은 더욱 분리될 것입니다. 그러나 새로운 질문이 생깁니다. 처리할 "종이 노트"가 너무 많으면 어떻게 될까요? 메시지가 특히 긴급한 경우 어떻게 줄을 서야 합니까?

안으로 들어가다kpower솔루션 관점

존재하다kpower우리의 기술 실무에서 우리는 많은 고객의 초기 설계가 모든 전선을 함께 묶는 것과 같다는 것을 발견했습니다. 이는 단기적으로 실행될 수 있지만 유지 관리는 엉망입니다. 마이크로서비스 간의 통신은 너무 취약해서는 안 됩니다. 우리는 "신경 반사"에 더 가까운 모델, 즉 비동기식, 이벤트 중심이지만 중요한 경로에서 대기 시간이 짧은 모델을 지향하는 경향이 있습니다.

예를 들어, 서보 모터 진동 데이터를 수집하는 서비스와 예측 유지 관리를 담당하는 또 다른 서비스가 있습니다. 진동 데이터 서비스는 예측 서비스가 응답할 때까지 기다릴 필요가 없습니다. 데이터 패킷을 보내고 우선순위를 표시하기만 하면 작업이 완료됩니다. 예측 서비스는 몇 밀리초 후에 데이터를 검색할 수도 있고, 컴퓨팅 리소스가 부족하여 나중에 처리할 수도 있습니다. 하지만 진동 데이터 서비스는 차단되지 않고 계속해서 다음 그룹을 수집합니다. 전체 시스템은 유연한 작업장과 같으며, 각 워크스테이션은 컨베이어 벨트(메시지 파이프라인)를 통해 자율적으로 그리고 간접적으로 협력합니다.

누군가가 "메시지 파이프 자체가 실패하면 어떻게 되나요?"라고 물었습니다. 이것은 중복 설계로 돌아갑니다. 좋은 마이크로서비스 통신 아키텍처를 사용하면 기계 시스템의 백업 전송 막대와 같이 메시지를 여러 경로에 백업할 수 있습니다.kpower고객의 배포를 지원할 때 "게시/구독" 모델이 종종 제안됩니다. 즉, 하나의 서비스가 이벤트를 게시하고 여러 관련 서비스가 이를 구독하여 필요에 따라 처리할 수 있습니다. 이렇게 하면 단일 종속 지점이 방지되고 확장이 더 쉬워집니다.

이것이 간단해 보이지만 실행하기가 왜 그렇게 쉬운가요?

실제 시나리오는 "두 가지 서비스"만큼 단순하지 않기 때문입니다. 수십, 심지어 수백 개의 서비스가 서로 얽혀 있는 경우가 많습니다. A는 B를 트리거하고 B는 C와 D를 트리거하고 C의 결과는 A로 다시 흐릅니다. 이때 모든 통신이 동기 대기를 사용하면 시스템은 너무 많은 나사로 조여진 조인트처럼 뻣뻣하고 무너지기 쉽습니다.

그래서 우리는 종종 마이크로서비스 통신을 설계하는 것이 서보 그룹을 위한 춤을 준비하는 것과 같다고 농담합니다. 각 모터가 한 모터의 전체 신호를 기다리도록 할 수 없습니다. 그렇지 않으면 춤이 중단될 것입니다. 동일한 음악(이벤트 흐름)을 듣고(이벤트 흐름), 동일한 비트에 맞춰 각 단계를 수행하고, 때때로 동료의 위치를 ​​살펴보지만(상태 쿼리) 대부분 자율적으로 실행해야 합니다.

Kpower에서는 기계적인 전송 다이어그램을 그리는 것처럼 먼저 고객이 데이터 흐름 다이어그램을 그릴 수 있도록 도와드립니다. 실시간 동기화가 필요한 통신(예: 긴급 종료 신호), 지연을 허용할 수 있는 통신(예: 로그 업로드), 순서를 보장하는 통신(예: 단계 지침), 순서 없이 처리할 수 있는 통신(예: 데이터 샘플링) 분류한 후 다양한 통신 프로토콜과 도구를 일치시킵니다. 이는 모든 경우에 적용되는 일률적인 접근 방식은 아니지만 기어 세트와 마찬가지로 각 맞물림 지점에는 올바른 톱니 프로필과 속도가 있어야 합니다.

때로는 적은 것이 더 좋습니다

흥미롭게도 숙련된 기계 설계자에게 시스템을 단순화하는 방법을 물으면 "전송 링크를 줄이세요"라고 대답하는 경우가 많습니다. 마이크로서비스 통신에서도 마찬가지입니다. 모든 서비스가 직접 통신할 필요는 없습니다. 경로는 집계 서비스(API 게이트웨이) 또는 이벤트 버스를 통해 통합될 수 있습니다. 이는 복잡한 기계에 분전함을 추가하여 메인 라인을 더욱 명확하게 만들고 유지 관리를 더 쉽게 만드는 것과 같습니다.

Kpower는 프로젝트 검토 중에 과도하게 설계된 통신 계층이 불충분한 것보다 더 문제가 되는 경우가 많다는 사실을 발견했습니다. 예를 들어 "보험"의 경우 각 서비스 사이에 메시지 대기열이 추가됩니다. 결과적으로 운영 및 유지 관리 중에 12개 이상의 메시지 체인을 추적해야 합니다. 나중에 우리는 핵심 링크의 높은 신뢰성을 보장하는 데 우선순위를 두고, 비핵심 링크는 다운그레이드를 허용하도록 전략을 조정했습니다. 이는 실제로 좋은 기계처럼 시스템을 더욱 견고하게 만듭니다. 핵심 부품에 담금질 강철을 사용하고 보조 부품에 일반 합금을 사용하면 전반적인 비용 성능과 신뢰성이 향상됩니다.

따라서 다음에 마이크로서비스의 "채팅" 방식에 대해 걱정할 때는 기계적 협업을 설계하는 방법에 대해 생각해 보는 것이 좋습니다. 즉, 노동 분업을 명확히 하고, 명확한 신호 프로토콜을 설정하고, 버퍼 공간을 확보하고, 핵심 부품에 대해 더 많은 보험을 추가하는 것입니다. 나머지는 Kpower와 같은 파트너에게 맡겨 청사진을 안정적인 현실로 바꾸세요. 결국 기계든 코드든 원활한 의사소통은 원활한 운영의 초석입니다.

2005년에 설립된 Kpower는 중국 광둥성 둥관에 본사를 둔 소형 모션 유닛 전문 제조업체입니다. Kpower는 모듈형 드라이브 기술의 혁신을 활용하여 고성능 모터, 정밀 감속기 및 다중 프로토콜 제어 시스템을 통합하여 효율적이고 맞춤형 스마트 드라이브 시스템 솔루션을 제공합니다. Kpower는 스마트 홈 시스템, 자동 전자 장치, 로봇 공학, 정밀 농업, 드론 및 산업 자동화 등 다양한 분야를 포괄하는 제품을 통해 전 세계 500개 이상의 기업 고객에게 전문 드라이브 시스템 솔루션을 제공해 왔습니다.

업데이트 시간:2026-01-19

미래에 힘을 실어주다

귀하의 제품에 적합한 모터 또는 기어박스를 추천하려면 Kpower 제품 전문가에게 문의하십시오.

케이파워에 메일보내기
문의 제출
WhatsApp 메시지
+86 0769 8399 3238
 
kpower지도