본문 바로가기
[최대48만원] 인터넷•TV 가입시 설치당일 현금지급 정수기 렌탈시 최대50만원 추가지급
엔지엠 매크로

TCP 매크로 프로그램 - 카프카 메세지 보내기.

by 업무자동화 2025. 2. 28.
반응형

매크로 프로그램 다운로드

https://autopeak.co.kr 

 

AutoPeak RPA Macro

오토픽 매크로는 복잡한 반복 작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

autopeak.co.kr

#매크로 #메크로 #매크로프로그램 #엔지엠소프트웨어 #지존오토 #엔지엠에디터 #엔지엠플레이어 #오토핫키 #비활성매크로 #하드웨어매크로 #기계식매크로 #마우스광클릭 #키보드매크로 #이미지서치 #이미지매치 #이미지맥스 #블로그 #카페 #인스타그램 #유튜브 #소셜네트워크 #카카오톡 #텔레그램 #자동화

 

안녕하세요. 업무 자동화 RPA  매크로 오토픽입니다.

매크로 프로그램은 일반적으로 한대의 컴퓨터에서 자동화를 위해 반복적인 동작을 수행합니다.

하지만, 작업장과 같은 환경이나 클라우드 또는 분산 처리하는 시스템은 각각의 클라이언트끼리 메세지를 주고 받을 필요가 있습니다.

예를 들어서 A 컴퓨터에서 어떤 작업이 완료되면 B, C, D 컴퓨터도 같이 중지하고 싶을 수 있습니다.

이런 경우 TCP를 통해 각각의 클라이언트가 메세지를 주고 받을 수 있습니다.

간단한 예를 들었지만, 클라이언트들이 각각 메세지를 받아서 처리할 수 있다면 다양한 비즈니스 로직을 처리할 수 있게 됩니다.

 

일반적으로 대기업 제조 산업군은 TIBCO 사의 TibRV를 이용한 메세지 버스를 사용하고, 중소기업의 경우에는 무료로 이용할 수 있는 ActiveMQ나 RabbitMQ등등을 주로 사용합니다.

현대에 와서는 전통적인 메세지 버스 미들웨어보다는 카프카를 주로 사용하는 추세로 변하고 있습니다.

카프카는 제조업에서 장치 또는 디바이스가 보내주는 메세지를 처리하기 보다는 마이크로 서비스에서 많이 사용됩니다.

마이크로 서비스는 하나의 서비스를 마이크로 단위로 나누어서 개별 동작하는 개발 방식을 말하는데요.

 

이 때 각각의 서비스 또는 모듈이 각각 프로세스로 실행되기 때문에 데이터를 공유할 수 없는 문제가 있습니다.

 

그래서, 카프카를 이용한 분산 처리 방식을 주로 사용하고, 결합도도 낮고 속도가 빠르다고 해서 많이 도입하고 있습니다.

카프카 다운로드 ]

 

 

 

적당한 위치에 압축을 풀어준 후 bin/windows 폴더로 이동합니다. 윈도ㅜ 배치 파일(bat)이 많이 보일겁니다.

 

 

 

편의를 위해 이 폴더를 E드라이브로 옮겨 두었고, 폴더명에서 버전은 버렸습니다. 

 

 

 

카프카를 실행하기 전에 간단한 개념 정도는 알고 가는게 좋을듯 합니다.

카프카 버전에 따라서 오류가 있을 수 있습니다. 

카프카에서 브로커(Broker)는 카프카 서버를 말합니다.

동일 노드 내에서 여러개의 브로커를 띄울 수 있고, 이렇게 분산된 여러개의 브로커 메세지 큐(Message Queue)를 관리해주는 역할이 주키퍼(Zookeeper)입니다.

카프카를 실행하기전에 주키퍼를 반드시 먼저 실행해야 합니다.

CMD를 관리자 권한으로 실행하세요.

카프카가 있는 위치로 이동합니다.

  • E:\kafka\bin\windows e:

 

 

 

주키퍼를 실행하세요. Windows 보안 경고가 표시되면, 액세스 허용을 클릭 해줍니다.

  • zookeeper-server-start.bat ../../config/zookeeper.properties

 

 

 

CMD를 하나 더 실행해서 위와 동일하게 카프카 서버를 실행 해줍니다.

  • kafka-server-start.bat ../../config/server.properties

 

여기서 주의할점은 주키퍼와 카프카를 실행한 CMD 창을 닫으면 안된다는 것입니다.

이 창을 닫으면 서버도 같이 죽기 때문에 실행 상태로 두어야 합니다.

또한, Ctrl+C를 눌러서 중지시켜도 안됩니다.

주키퍼와 카프카가 실행중인지 확인 해볼까요?

CMD를 하나 더 열고, 아래 명령을 실행합니다.

  • netstat -a

 

 

 

주키퍼는 2181 포트를 사용하고, 이 정보는 properties 파일에서 확인이 가능합니다.

카프카는 9092 포트를 사용하고 정보 확인은 동일합니다.

  • # the port at which the clients will connect clientPort=2181

 

이렇게해서 카프카 설치를 완료 했습니다.

정상 동작하는지 확인을 해봐야겠죠?

Publisher(게시자), Subscriber(구독자) 컨셉에 맞게 Topic을 생성하고 Topic에 메세지를 보낸 후 이 메세지를 가져오는 방법을 알아보도록 하겠습니다.

새로운 CMD를 열고, 카프카에 새로운 토픽을 생성 해줍니다.

※ 스샷 이미지에 토픽은 ngm-topic으로 되어 있지만, 실제 테스트는 ap-topic으로 진행합니다.

  • kafka-topics.bat --create --topic ap-topic --bootstrap-server localhost:9092 --replication-factor 1 --partitions 4

 

 

 

생성한 토픽에 메세지를 보내려면 프로듀서(Producer)를 사용합니다.

토픽을 열고, 메세지를 보냅니다.

컨슈머(Consumer)가 봐주기를 바라고 메세지를 쓰는 것입니다.

계속해서 메세지를 보낼 수 있습니다.

일단 아래와 같이 토픽을 열고, 메세지를 써보세요.

  • kafka-console-producer.bat --broker-list localhost:9092 --topic ap-topic

 

 

 

컨슈머를 이용해서 토픽에 있는 메세지를 가져오도록 합시다~

새로운 CMD를 하나 더 만들고, 아래와 같이 컨슈머를 실행 해주세요.

--from-beginning 옵션은 기존에 발행한 메세지도 모두 가져오도록 합니다.

그래서, 아래 그림과 같이 컨슈머를 나중에 실행해도 모든 메세지를 가져오게 됩니다.

  • kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic ap-topic --from-beginning

 

 

 

프로듀서에 메세지를 보내면, 아래 컨슈머가 받는걸 알 수 있습니다.

 

 

 

제가 일하는 쪽은 대부분 TibRV(랑데뷰, Rendezvous)를 사용하고 있는데요.

이게 너무 비싸다보니 ActiveMQ나 ZeroMQ, RabbitMQ, AmazonMQ와 같은 무료 미들웨어를 사용합니다.

웹쪽은 대부분 카프카(Kafka)를 이용하는거 같네요.

시대 흐름에 맞게 학습해야 할 내용도 점점 많아지고, 예전에 잘 사용하던 기술들이 쓸모 없어지는 상황도 계속해서 발생합니다.

 

이제 테스트를 위해 오토픽 매크로를 실행 해줍니다.

 

 

 

아래 그림을 참고하셔서 토픽과 호스트 그리고, 포트까지 설정 해보세요.

그리고, 보낼 메세지도 입력하세요.

 

 

 

매크로를 실행하면, CMD로 실행해둔 콘슈머에서 메세지를 수신하고 출력합니다.

참고로, CMD의 콘슈머는 한글 인코딩이 깨집니다. 그래서, 아래와 같이 표시됩니다.

하지만, 오토픽 매크로의 콘슈머는 한글도 정상적으로 처리가 됩니다.

 

 

 

간단하게 카프카 서버를 실행하고, 메세지를 주고 받는 방법을 알아봤습니다.

다음 시간에는 오토픽 매크로의 카프카 이벤트를 실행하고, 프로듀서로 메세지를 보낸 후 이벤트를 처리하는 방법을 알아볼께요.

 

[ 각종 자동화 매크로 및 RPA 프로그램 제작 해드립니다. ]

[ 초보자도 쉽게 따라할 수 있는 기초 학습 강좌 보기 ]

 

원본 글 보기

https://autopeak.co.kr/bbs/board.php?bo_table=product99 

 

AutoPeak RPA Macro

오토픽 매크로는 복잡한 반복 작업을 자동화할 수 있습니다. PC 게임, 모바일 게임을 최적으로 지원하며 모든 PC 프로그램 및 업무에 적용할 수 있습니다.

autopeak.co.kr

 

반응형

댓글