엔터프라이즈 소프트웨어는 좀처럼 멈춰 있지 않습니다. 모듈이 늘고, 연동이 늘고, 사용자가 늘어납니다. 모놀리스에서는 모든 변경이 전체 시스템의 재빌드와 재배포를 요구합니다. 느리고 위험합니다. 마이크로서비스는 시스템을 작고 독립적인 서비스로 나누며, 각 서비스가 자체 데이터와 수명 주기를 갖습니다.
필요한 만큼 확장하고, 낭비하지 않는다
각 서비스는 실제 부하에 따라 독립적으로 확장됩니다. 예를 들어 결제 서비스는 피크 시간에 크게 확장되는 동안 리포팅 서비스는 그대로 유지됩니다. 시스템 전체를 복제하는 대신 필요한 부분에만 정확히 비용을 지불합니다.
독립적으로 배포하고, 장애를 격리한다
팀은 나머지를 건드리지 않고 하나의 서비스만 업데이트할 수 있어 릴리스 주기가 짧아집니다. 한 서비스에 장애가 발생해도 전체 시스템이 무너지는 대신 장애가 국소화됩니다. 이는 높은 가용성을 위한 전제 조건입니다.
"마이크로서비스는 유행하는 아키텍처가 아니라, 소프트웨어가 충분히 커진 뒤에도 계속 바꿀 수 있게 유지하는 방법입니다."
Apus Platform은 처음부터 마이크로서비스 아키텍처 위에 구축되었습니다. 이는 Apus 팀이 구축한 대규모 시스템(예: 전자지갑 코어) 뒤에 있는 바로 그 역량입니다. 이 토대 덕분에 Apus는 안정성을 유지하면서도 전체 업무 모듈을 확장할 수 있습니다.