How mashape manages 15000 APIs and microservices (2)

Time:2021-6-24

framework

For a while, mishap’s architecture consisted of about 150000 lines of Java code, a real single application! But now it has been broken down into 400 microservices composed of different languages, including:Node.js,Lua,Ruby,java,PythonandOCaml. Everything is made up of APIs.

Mashape ID, for example, is an authentication platform operated by API. Whenever a new product is created, we simply implant it into mashape ID; It can provide its own micro service of bill, and has the function of account mail management.

One of our new projects is implemented with ruby API, and the front-end application usesEmber.js. On the contrary, there are many internal APIs built by Java in mashape market, which are consumed as web front-end by express.js microservices; All our applications & APIs follow 12 factor(http://12factor.net/)Technology.

Before all our apps and APIs, yesKong, we useElasticSearchIt also stores data in many databases, including:MongoDB,PostgreSQL,RedisandCassandra(each solves a different problem domain). All of our products are running inAWSOccasionally, we use heroku and digital ocean to do some prototype experiments or test environments in small projects.SpunkTo centralize our systems,DatadogAs a standardized monitoring market,PagerDutyUsed to call the police.

Mishap brings business intelligence metrics to all of our products through chart.io. In addition, we use mashape analytics to monitor and visualize API traffic managed by our platform. Travisici is used for testing, codelimate is used for quality control, and chef is used for deployment. All our code is in GitHub. Code snippet generation we use our ownHTTPsnippetandMockbinDo simulation & test API prototype.

All of these applications and systems, deployment, monitoring & measurement tools may seem a lot, but the combination of 12 factor method and microservice makes it easy.

We have about 400 internal services running in one, there are hundredsEC2On the cluster of machines. Microservice architecture allows us to be faster and more independent, and we can clearly see the benefits of the transition period. But it helps to understand why we do it.


This article is from WeChat official account, malt bread, Id “darkjune_”. think」
Please indicate the reprint.
WeChat swept away the official account.