19일. 트리거로 자동처리하기

마지막 업데이트: 2022년 4월 6일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
트리거를 이용한 쇼핑몰 주문 처리 과정

JMeter 주문 실행 (JMeter ordered execution)

REST 애플리케이션의 성능 테스트를 위한 프로젝트를 설정하고 있습니다. 파일(productName, category)에 N개의 레코드를 생성하고 엔드포인트를 눌러 추가해야 합니다.

테스트 계획에서 파일을 생성하기 위해 ThreadGroup, 루프 컨트롤러 및 beanshell 샘플러를 생성했습니다.

다른 ThreadGroup이 레코드 선택을 시작하기 전에 N개의 레코드를 생성하고 싶지만 방법을 알 수 없습니다.

참조 솔루션

As far as I understand you just want to run the thread groups one by one, so in Test Plan there's an option you have to tick, and it's called 'Run Thread Groups consecutively' (click at the top of the tree on the left where you see Test Plan name and check its options on the bottom in main part of the window).

The other approach that is far more better is to use 'setUp Thread Group' (Add ‑> Threads ‑> setUp Thread Group) to run the setup at the beginning and then the rest of the test from other Thread Groups in parallel.

19일. 트리거로 자동처리하기

트리거는 테이블 행에 특정 이벤트가 발생하면 미리 작성해 둔 루틴, 또는 쿼리문이 실행되도록 하는 이벤트 기반 실행 로직입니다. 데이터베이스마다 구현 방식에 약간씩 차이는 있지만, 자동화된 연쇄 작업을 실행할 수 있도록 하는 편리한 기능입니다.

트리거를 작성할 때는 어떤 이벤트에 대해서 트리거를 작성할지를 먼저 고려해야 합니다.

트리거가 꼭 필요하지 않거나 무거운 데이터베이스 처리 작업을 트리거로 실행하면 데이터베이스에 불필요한 부하를 주게 되고, 데이터베이스가 느려지는 원인이 됩니다.

트리거를 잘 사용하면 전체 서비스의 부하를 경감시키고, 단순한 구조의 서비스를 구축할 수 있습니다.

쇼핑몰에서 이용자가 장바구니의 상품을 결제하면 주문 정보를 저장하고, 주문 메일을 발송하고, SMS 알림을 보내고, 재고 테이블의 재고를 줄여야 합니다. 그리고 이런 일련의 과정이 모두 완료되면 주문 완료 페이지를 이용자에게 표시해야 합니다.

주문 완료 처리 과정의 복잡함과 시간 지연을 줄이기 위해 SMS 발송과 이메일 발송은 주문 완료 페이지 표시 후에 발송되도록 해당 테이블에 일단 내용을 저장하기로 합니다. 이용자에게는 결제 페이지가 표시되기 직전의 모래시계로 보이지만 실제 주문을 완료하는 과정은 웹서버와 데이터베이스의 여러 단계에 거친 상호 작용을 통해 이루어집니다.

웹서버에서 쿼리문을 전송해 데이터베이스에 주문 정보를 저장하면 제어가 다시 웹서버로 돌아옵니다. 주문 정보 저장이 성공했으면 SMS 발송 테이블에 발송할 내용을 저장하고, 다시 실행 로직이 웹서버로 다시 돌아옵니다. 순차적으로 메일 발송할 내용도 테이블에 저장하고, 최종적으로 테이블이 기록할 내용이 모두 완료되면, 장바구니(basket) 테이블에서 주문 완료된 상품을 장바구니 목록에서 삭제하고 결제 모듈에 주문 성공 표시를 해서 최종적으로 결제 완료를 합니다.

그리고 이용자에게는 주문 완료 페이지를 호출합니다. 실제로는 여러가지 복잡한 주문 처리과정이 웹서버와 데이터베이스 사이에서 일어납니다.

쇼핑몰 주문 처리 과정

여기서부터 중요합니다. 주문 완료를 하는 과정에서 웹서버는 여러 번의 데이터베이스 쿼리문 호출하게 되고, 실행 제어 로직을 주고받는 여러 과정을 거칩니다. 이 과정을 짧게 줄일 수 있으면 주문 완료처리가 훨씬 간결하고 빠르게 실행될 것입니다. 이때 트리거가 빛을 발합니다.

주문 정보 테이블에 행 추가 이벤트가 발생하면 추가된 주문 정보를 기초로 SMS 및 이메일 발송 테이블에 내용을 추가하고 장바구니를 비우는 트리거를 만들면 주문 정보 저장만으로도 데이터베이스에 저장할 모든 테이블 내용이 추가됩니다. 더 이상 웹서버가 실행 로직을 주고받을 필요도 없고, 주문 정보 저장 중간에 에러가 발행하면서 주문 정보에 문제가 생기는 것도 어느 정도는 방지할 수 있습니다.

트리거를 이용한 쇼핑몰 주문 처리 과정

이렇게 하면 웹서버는 주문정보만 저장한 후 즉시 주문 완료 페이지를 표시할 수 있게 됩니다. 나머지 추가 테이블에 저장하는 과정은 데이터베이스 안에서 한 번에 처리되기 때문에 웹서버와 상호 작용을 할 필요도 없고, 실행 시간도 대폭 단축됩니다.

트리거 등록

트리거는 “CREATE TRIGGER” 명령어로 코드 블록을 생성해서 등록합니다. 주문정보 테이블에 새 주문 행이 등록되면 SMS 발송 테이블에 SMS 발송 문을 등록하는 트리거를 작성해 보겠습니다.

먼저 트리거 기본 구조를 만듭니다. 앞뒤에 딜리미터 변환을 붙이고 트리거 블록을 선언합니다. 트리거 이름은 “tr_after_insert_sms”입니다. 스토어드 프로시저 이름 규칙처럼 접두어로 “tr_”을 붙여서 트리거임을 표시합니다.

트리거가 언제 실행되는지 조건문을 추가합니다. 트리거 코드 블록 위에 다음 조건문을 추가합니다. “begin” 위에 빈 줄을 만들고 추가하면 됩니다. 주문정보 테이블(p_order)에 새로운 행(for each row)이 추가된(insert) 뒤에(after) 트리거 블록을 실행한다는 뜻입니다.

트리거 코드 블록 안에 새로운 SMS 발송 문을 등록하는 쿼리문을 추가합니다.

insert into sms (mobile, content) values (NEW.mobile, '주문이 접수되었습니다.');

여기서 중요한 키워드가 하나 나옵니다. “NEW”는 새로 추가된 주문정보(p_order) 테이블의 새 주문행을 가리킵니다. “NEW.mobile”은 주문정보의 휴대폰 번호를 가져옵니다.

완성된 트리거는 다음과 같습니다. 트리거 코드를 실행해 트리거를 등록하면 이후 새로운 주문정보가 등록될 때마다 SMS 발송 테이블에 새로운 발송 정보가 자동으로 등록됩니다.

delimiter $$
create trigger tr_after_insert_Sms
after insert
on p_order for each row
begin
insert into sms (mobile, content) values (NEW.mobile, '주문이 접수되었습니다.');
end$$
delimiter ;

미국의 철강 기업인 두페르코 파렐(Duferco Farrell Corp.)은 중량급 제강 슬래브와 화학 물질을 제조하고 있다. 슬래브는 열처리되어 코일로 감겨 적재소로 이동되거나 자동차 제조 업체 등의 고객사로 이동된다. 이동 상황을 추적하기 위해 공장 노동자들은 고객 번호나 코일 데이터를 수검하면서 일일이 용지에 기입한다.

하지만 수작업으로 처리한 데이터는 오류가 발생하는 빈도가 높았고 철강 코일을 확인하기 위해 철근 더미 위쪽으로 올라갔다가 미끄러져 부상을 당하기도 했다. 인부의 부상을 막고 코일을 찾는 시간을 단축하기 위해 두페르코는 2007년 10월에 RFID 솔루션을 파일럿으로 도입하게 됐다. 코일은 고객의 주문 번호가 탑재된 패시브 RFID 태그로 식별됐고, Multispectral Solutions의 UWB 실시간 위치확인 시스템(RTLS)이 설치돼 이동 상황이 추적됐다.

RFID 파일럿을 설계했던 엔터프라이즈 모빌리티 솔루션 제공 업체인 Concept2Solution이 현재 상용화를 위해 시스템을 개발하고 있다.

두페르코는 효율성을 강화하고 경쟁력을 향상하기 위해 RFID를 도입하고 있는 대표적인 제조 업체로 꼽힌다. 기업들은 프로세스를 추적하고 자산을 보다 효율적으로 관리하며 공정 및 선적 단계에서의 실수를 줄이기 위해 RFID를 활용하고 있다. 게다가, RFID는 제조 업체들이 생산에서의 다운시간을 줄이고 주문에 따라 공장을 탄력적으로 가동하며 적기에 재고를 공급할 수 있도록 해주는 효과적인 방안으로 간주하기 시작했다.

전세계 시장에서 볼 때, 제조 분야는 가격 경쟁이 치열하기 때문에 경쟁력 강화 방안을 발굴하는 것이 필수적이라 할 수 있다. 미국 팔로알토 소재의 MMTI(Manufacturing Management & Technology Institute) 사장인 미첼 바우딘은 "전세계 모든 지역에 있는 제조 설비 관련 업종이 이와 같은 이슈에 직면해 있다"고 밝혔다. 그는 20여 년간 보잉과 델 컴퓨터, 혼다, 유니레버 등의 고객을 컨설팅한 전문가이다.

현재의 제조 환경에서의 복잡성을 감안해볼 때, 제조 업체들이 RFID에 관심을 19일. 트리거로 자동처리하기 갖는 것은 당연한 것으로 볼 수 있다. 모토로라의 RFID 제조 그룹 비즈니스 개발 담당 매니저인 스콧 덴홀름은 "제조 업계는 EPC 기반 기술 도입에 매우 적극적"이라고 말했다. 그는 아직 화학이나 섬유, 원자재 등 B2B 업종의 경우 공급망 전체에 대한 제품 추적을 시행하지 않고 있지만 향후에는 전방위적으로 확대될 것이라고 언급했다.

프로세스 추적
보스턴에 위치한 시장 조사 및 컨설팅 업체인 애버딘 그룹(Aberdeen Group)이 2007년에 실시한 설문 조사에 따르면, RFID를 사용하고 있는 기업 중 3분의 1 이상이 제조공정관리(WIP; work in process)의 비용과 안전, 신뢰성을 강화하기 위해 도입한 것으로 나타났다.

RFID로 WIP를 추적하는 데에는 여러 이점이 있다. 제조 업체들은 프로세스를 부문별로 분석해 적절한 부품이 적재적소에 공급되었는지를 확인할 수 있어 제조 라인에서의 다운시간을 줄일 수 있다. 또한 생산 주기에서 얼마나 많은 제품들이 제조되는지를 정확히 파악해 완성품의 재고를 효율적으로 통제할 수도 있다. 또한 RFID WIP 시스템이 조립 공정에서 부품을 추적할 수 있기 때문에 품질 제어도 보장할 수 있어 상당수 제조 업체들에게 매력적이다.

건설 장비 제조 업체인 카터필라(Caterpillar)와 모터사이클 제조 업체인 할리데이비슨(Harley-Davidson) 등의 고객과 협력해 RFID WIP 프로그램을 가동한 RFID 솔루션 공급 업체 HK Systems의 RFID 솔루션 컨설턴트인 앤디 벤넷은 "처음부터 올바르게 구축해야만 가능하다"19일. 트리거로 자동처리하기 면서, "이러한 공정 단계에서는 조립이 완료된 뒤에 문제점이 발견되면 바로잡기에 너무나 값비싼 대가를 치러야 한다. RFID 도입은 프로세스를 분할할 수 있기 때문에 각 단계에서 오류가 발생한 것을 교정할 수 있어 훨씬 효과적"이라고 밝혔다.

또한, RFID WIP 시스템은 비용 절감에 기여할 수 있다. 구매 담당 부서는 분실이나 잘못된 곳에 배치된 부품으로 인해 생산 라인 가동이 중단되는 것을 막기 위해 필요한 양 이상의 자재를 구매하는 경우가 많다. 모토로라의 덴홀름은 "RFID WIP 시스템을 도입할 경우 자재 부족으로 인해 생산성이 떨어질 우려에서 벗어날 수 있다"고 밝혔다.

HP의 경우 상파울루 인근의 브라질 사무소에서 프린터 제조 및 유통에 사용되는 프로세스를 분석하기 위해 RFID WIP 시스템을 도입한 후 가시적인 성과를 거두고 있다. 2006년 8월에 브라질의 전체 생산 설비에 RFID 시스템이 19일. 트리거로 자동처리하기 적용된 이후 제품이 어디에 있건 확인이 가능한 가시성을 확보함으로써 HP 브라질은 공급망의 프린터 재고를 17% 낮춘 것으로 추산하고 있으며 완벽한 주문 실행에 근접하고 있다고 밝혔다.

HP 브라질의 RFID 및 비즈니스 개발 매니저인 마르셀로 판디니는 브라질에서 조립 및 유통되는 볼륨이 올해 3백 만 대에 달해 RFID의 효과를 측정할 만큼 충분한 통계적인 유효 모델을 제공한다면서 제조할 때의 다운 시간을 제어하는데 있어 전통적인 방법으로는 접근할 수 없었던 부분을 RFID로는 가능하다고 밝혔다.

판디니는 "이러한 전통적인 방법에는 바코드 추적과 매장 제어 소프트웨어가 포함되는데, 이들은 인건비 등에 대한 데이터를 수동으로 입력해야만 했다"면서, "이제는 그런 시절이 끝났다. 이 RFID 정보는 다운 시간을 줄이기 위해 어떤 시도가 이루어져야 하는지 명확하게 제시할 수 있다"고 밝혔다.

자산 관리

애버딘 그룹의 설문 조사에서, RFID를 사용하고 있는 제조 업체들은 자산 관리가 WIP 추적만큼 중요하다고 답했으며 원자재 관리가 3위를 차지한 것으로 나타났다. 두페르코 및 철강 코일 추적의 사례에서 보듯이, 상당수 작업 시간이 물품을 찾는데 허비되고 있기 때문이다. 애버딘의 러스 클라인 부사장은 "자산 추적은 제조 업종의 RFID 프로젝트에서 최상위 목표"라면서, "자산은 원자재가 될 수도, 완성품이 될 수도, 때에 따라서는 툴과 장비가 될 수도 있다"고 언급했다.

자동차 제조 업체인 포드와 닛산 노스 아메리카 등 일부 업체들은 적재적소에 부품이 해당 조립 라인에 공급되는지 추적하고 있다. 다른 업체들은 필요 이상 구매나 교체하는 것을 막기 위해 고가의 컨테이너를 추적하고 있다. 유럽의 항공기 제조 업체인 에어버스는 직원들이 사용하는 물품을 추적하고 조립 라인의 물품 확인을 위해 독일 함부르크의 공장에 RFID를 도입해 사용하고 있다.

또한, 제조 업체들은 선입선출(FIFO)을 토대로 선적하도록 완성품을 추적하는데 있어 가시성을 확보하기 위해 RFID를 사용하고 있다. 유럽의 제지 업체인 Holmen Paper와 Stora Enso는 제재소를 떠나 창고에 도달할 때까지 추적하기 위해 RFID를 테스트하고 있다. HP 브라질은 제조 공장에서 창고까지 이동하는 프린터를 RFID로 추적해 FIFO 기반으로 프린터를 선적하고 있다.

에러율 절감
바코드 스캐닝이나 고객 주문 번호를 상품에 표시하는 등 사람들이 직접 추적하던 프로세스를 자동화하고 있는 제조 업체들은 물품 도착지에서의 발송 확인에 정확성을 기할 수 있게 되었으며 생산 및 주문 실행에서의 오류도 크게 낮출 수 있게 되었다.

NAND 플래시와 DRAM 제품 제조 업체인 렉사 미디어(Lexar Media)19일. 트리거로 자동처리하기 는 월마트의 RFID 태그 케이스와 팔레트 의무 조항에 따라 1년 전부터 RFID를 사용하기 시작했다. 이후 RFID 데이터를 자사의 물류 관리 시스템(WMS)에도 통합해 유통 과정에서의 가시성을 확보하며 고객에 대한 주문 선적에서의 에러율도 줄일 수 있게 되었다.

렉사 미디어의 솔루션 개발을 지원한 모토로라의 덴홀름은 "케이스 단계에서 RFID로 추적함으로써 정확도를 100%로 높일 수 있게 되었다"면서, "선적의 정확도뿐만 아니라 고객의 만족도도 높아졌다. 결국에는 물류 관련 작업의 효율성과 생산성에 기여하게 되었다"고 밝혔다.

또한, RFID는 제조 업체들이 더 품질이 뛰어난 제품을 납품하고 상품 내용의 정확성을 보장하는데 사용된다. 이러한 기능은 고객의 충성도를 높이고 제품의 리콜을 방지한다. WIP 기반에서 제품을 추적 및 테스트함으로써 제조 업체들은 고객에게 납품되기 전에 잘못된 상품을 가려낼 수 있다.

HP 브라질은 RFID를 사용해 선적의 정확도를 보장하고 있다. 프린터에만 적용할 뿐만 아니라 프린터 박스에 들어가는 모든 부품 즉 매뉴얼에서 케이블에 이르기까지 전 제품에 태그를 부착하고 있다. 이를 통해 브로셔나 제품 설명서가 각 나라마다 다르게 발송되기 때문에 해당 국가에 정확히 발송되었는지를 확인할 수 있다.

화학 제품이나 식료품, 석유 등 규제가 엄격한 업종의 경우 규제나 업계 요구 사항을 준수하며 품질을 보장하기 위해 RFID를 사용하고 있다.

지속적 확대
공장과 창고에 RFID 솔루션을 고려, 테스트 및 도입하고 있는 상당수 제조 업체들은 한두 개의 폐쇄형 애플리케이션에서 시작하고 있다. 폐쇄형 환경에서는 표준화가 아무런 문제가 되지 않지만 많은 제조 업체들은 향후의 공급 업체와 고객들이 공급망 전체에서 제품을 추적하는데 RFID를 도입할 것으로 고려해 EPC Gen 2 기술을 채택하고 있다.

한편, 기술 벤더들은 공장 환경에 RFID 솔루션을 도입하는데 극복해야 할 상당한 장애 요인에 직면해 있다. 금속성 물질에서도 작동하는 태그를 개발해야 하며 판독률도 높여야 한다. 하지만 무엇보다도 골칫거리가 되고 있는 문제는 RFID 데이터를 기존의 백 엔드 소프트웨어 시스템에 통합하는 것이다.

제조 업체들이 폐쇄형 애플리케이션에 RFID를 도입하면서 제품을 맞춤화하고 제품간 생산 라인을 전환할 때 RFID가 효과적이라는 것을 인식하기 시작했다. RFID는 컨테이너나 실제 제품 등 프로세스 중인 작업에 부착된 태그에 저장된 상세 제품 정보와 연동해 제품을 차별화할 수 있게 해주며 생산 라인의 용도 변경에도 기여할 수 있다.

제조 업체들이 RFID를 통해 제조 프로세스에서 '통찰력'을 얻기 위해 기술 벤더와 협력함에 따라 RFID가 사용될 수 있는 또 다른 가능성에 주목하고 있다. HP의 판디니는 "다음 단계는 고객 프린터의 잉크 카트리지와 같은 교체품이 적절하게 공급되고 있는지를 파악하는 것"이라고 밝혔다.

더욱이, RFID는 제조 업체들이 비용을 절감하고 운영을 효율화하며 시장에서의 경쟁력을 강화하기 위한 수단이 되고 있다. 판디니는 "타임 투 마켓을 향상시킬 경우 전반적인 수익 구조를 19일. 트리거로 자동처리하기 개선할 수 있어 매출 상승에 긍정적인 영향을 줄 수 있다"고 밝혔다.

RFID 벤더의 움직임 활발
RFID 기술 벤더들은 자산이나 자재 또는 프로세스 업무에 태그를 부착해 추적함으로써 효율성을 달성할 수 있다면서 제조 업체들의 도입을 촉구하고 있다. 최근 프린터 솔루션 업체인 지브라 테크놀로지스(Zebra Technologie)는 내부 프로세스의 효율화를 위해 RFID를 구축하기 시작했다.

지난 가을, 지브라는 3단계로 이루어진 RFID 프로젝트 중에서 제 1단계를 출범시켰다. 1단계에서는 RFID 태그를 부착해 자재의 수신을 자동화하는 것이다. RFID로 전환하기 전에는 인부들이 각 제품에 부착된 바코드를 일일이 손으로 스캐닝해야만 했다.

물품 수취 프로세스를 자동화하기 위해, 지브라의 자재 공급 업체인 에브리데니슨(Avery Dennison)는 각 팔레트에 RFID 태그를 부착했다. 에브리 데니슨은 마일즈 테크놀로지스(Miles Technologies)와 OATSytems, 모토로라와도 협력해 프로젝트를 진행했다.

지브라는 현재 백엔드 물류 관리 시스템(WMS)와 RFID에서 생성된 데이터를 통합하는 작업을 실행하고 있다. 두 번째 단계에 해당되는 이 프로젝트는 에브리 데니슨으로부터 선적에 대한 사전통보(ASN)가 포함된 RFID 데이터에와 ERP가 연계되어 2008년 1분기에 출범할 예정이다.

이번 프로세스 개선을 통해 지브라는 다른 분야에도 적용할 수 있는지의 여부를 파악할 계획이다. 제 3 단계에서는 물류 프로세스와 백 엔드 시스템을 연동해 재고를 실시간으로 파악해 JIT(just-in-time)을 구현할 방침이다.

주문 실행 추적

5자리 우편번호 시행 관련 통상우편요금 감액 안내

  • 5자리 우편번호를 사용하지 않으면 우편요금 감액을 받을 수 없습니다.
  • 근거 : 우정사업본부 고시 제 2015-75호
  • 내용 : 5자리 우편번호 사용 19일. 트리거로 자동처리하기 우편물에 대해서만 감액 적용
  • 요금별납 또는 요금후납이고, 1회에 10통 이상 발송하는 등기우편물
  • 우편물 표면 오른쪽 상단에 요금별납 또는 요금후납 표식 인영이 있어야 함
  • 1회 접수하는 우편물은 그 크기와 무게가 같아야 함
  • 등기번호 순서대로 제출
  • 수취인 주소 등 접수정보 사전접수 제출시 감액률은 2% 입니다.
  • 등기바코드 자체제작 라벨부착시 감액률은 1% 입니다.
  • 중량: 최대 200g
  • 요금 : 1,800원(중량관계없음)
  • 요금감액 대상 : 창구등기소포 요금을 전제로 부가취급수수료를 제외한 금액 - 기표지 상 동일발송인 및 접수정보 연계 접수 시에 한함
  • 접수연계란? : 고객이 우체국창구에서 직접 주소ㆍ성명 등을 기재하지 않고, 인터넷우체국 '창구(다량)소포접수'를 통하여 주소ㆍ성명 등을 사전에 입력하는 것을 말함 ☞이용안내
  • 감액접수 대상관서 : 전국 모든 우편관서(우편취급국 포함)

할인율
구분 3% 5% 10% 15%
창구접수 요금즉납 1~2개 3개 이상 10개 이상 50개 이상
요금후납(계약) - 월 70개 이상 월 100개 이상 월 130개 이상

ㆍ'21.6.1.부터 모바일,인터넷우체국에서 접수정보(성명,연락처,주소 등) 입력하고 우체국창구에 핸드폰번호를 제시하면 1통도 소포요금을 할인해 드립니다.


0 개 댓글

답장을 남겨주세요