Dalam arsitektur microservice, fakta bahwa setiap service akan meng-ekspose endpoint lebih detail. Hal ini, akan mempengaruhi cara client dan service-service lain yang mengakses service-service pada microservice. Semakin besar service-service pada microservice, akan dapat membebani service-service tersebut dengan jutaan request. Hal ini juga akan berpengaruh pada tantangan dalam penanganan security dan authorization, transformasi data, dan dispatching untuk request yang dinamik.
API Gateway
Untuk menjawab hal-hal tersebut, maka penggunaan API Gateway menjadi solusi. API Gateway adalah aplikasi/server yang bertindak sebagai single entry point pada sistem yang kita bangun. Dalam hal ini adalah aplikasi yang kita bangun dengan arsitektur microservices. Selain itu API Gateway juga bertindak sebagai middleware, sehingga sistem internal yang kita bangun dibelakangnya bisa kita enkapsulasi. API Gateway juga bisa kita beri tanggung jawab lain seperti logging, authentication, rate limiting, caching, transforming, dan load balancing.