当前位置：网站首页>Seven level maturity model of API architecture, which level does your application belong to- Sensedia
Seven level maturity model of API architecture, which level does your application belong to- Sensedia
2021-05-04 15:48:09 【Jiedao jdon】
The maturity model is divided into 7 A level , It is divided into 3 It's a regular category ：
- Not based on API： Systems and integration architectures are not based on formal API, In some cases, there is no communication , And others usually share files , Using the queue , Unstructured Web The service even makes some TCP / Socket Technology to provide communication between applications .
- Partly based on API： The system and integration architecture part is based on API, That means using Service Repository and Developer Portal And so on SOAP and RESTful Web Services are widely used , But the degree of governance is low , Standardization and separation of concerns （API And service ）.
- Based solely on API： The system and integration architecture is based entirely on API, This means that API, There is a separation of concerns between layers like services and Applications . From a business perspective ,API It's the foundation of the new business model , Or the business itself depends on API. Other technical features and functions were also observed , For example, powerful security mechanisms ,API government , monitor , Analysis of measures and improvements API Developer experience .
Level 1： Isolated applications
under these circumstances , The system architecture is based on No / Isolated applications with low integration . The main types of applications are ： The whole application , Off the shelf applications （ Such as ERP or CRM）.
Level 2： Unstructured Integration
There is integration between applications , But they are unstructured , This means that there is no standard for message structure or even Technology . Besides , Integration channels are decentralized （ Point to point ）, There's no hub or some kind of bus - Integration is temporary establish Of , Can solve specific problems . Commonly used techniques are ：
- Message queue
- Socket Connect
- Database replication
- File sharing （ for example XML,CSV or EDI）
Level 3： Component based architecture
This level refers to component-based system architecture , The main architecture model used here is ：
- EJB（ Enterprises Java Bean）
- Microsoft COM / COM + / DCOM
- independent Web Service application
The main integration technologies are ：
- TCP / Socket （ for example Java RMI,COM,EJB）
- customized Socket Connect
- HTTP Endpoint （ for example SOAP,HTTP Upper RPC）
The main problems found at this level are ： There is no or poor interoperability between integration and interface , Because the technology used only communicates with the same technology on the other side .Web Service is an exception , But usually they don't follow the standard , And there is no form of governance , This makes interoperability difficult to maintain .
Level 4： Service Oriented Architecture
At this level , The system architecture implements SOA principle , for example , Separation of concerns between service layer and business application layer . Usually , The application layer involves business and data storage functions , The service level involves contracts / Interface standardization , abstract , Composability , Discovery, etc .
The main features of the system architecture are ：
- Single application （ Application layer ）
- SOA Stack （ESB,BPEL, Complex event processors , Service registers, etc ）
- Local infrastructure
The integration technology is ：
- SOAP Web service
- RESTFul Web service （ But it was used in the early stage ）
- The messaging （ for example ,JMS,ActiveMQ etc. ）
Last , And This level The main related issues yes ： Although the service layer is separated from the application layer , But the service layer and API There is no separation of concerns between layers （ Please refer to the figure below ）, The service layer also contains some API function .
Level 5： Private services based on microservice architecture API
At this level , The system architecture uses Microservice approach . There are usually two types of layers ： The front-end layer and back-end layer where microservices reside , In this architecture ,API The role of gateways in some cases seems to be to provide integration between the front end and the back end . Because only internal front-end applications use these API, So we classify it as private API.
The main features of the system architecture are ：
- The use of microservice mode
- API gateway
- Mainly based on cloud infrastructure and containers .
- Reticular Mesh Architecturally Initial use
The main integration technology used is ：
- RESTful API（ Exposed to the front end , Even communication between microservices ）
- AMQP（ for example Kafka,RabbitMQ etc. ）
- Initially, new communication protocols were used , for example gRPC,Thrift etc. .
however , This level is related to API dependent key problem yes ：API Not fully managed . Use only a few features , For example, security and throttling , These functions are provided by API The gateway provides . Another important feature is , And they don't manage the open micro Services API, This means that communication is point-to-point , There is no centralized management （ Lack of grid architecture capabilities ）.
Another point to observe is , The architecture is based on a single API gateway , It's not easy to extend to the whole company , It is strongly recommended that API Platform to sustain the development of this architecture .
Because of all the above problems , We classify this level as partially based on API.
Level 6： open API
At this level , Companies usually have other levels of technical characteristics , But the main technical feature is that it has API layer .
under these circumstances ,API It's an important part of the business , Because it supports business growth . Companies can create partner ecosystems and open innovation environments , To support the creation of new value streams and innovative services .
From a technical point of view , Other features can be observed ：
- Commercial or open source API platform And the use of its modules
- Use the developer portal to increase the developer experience for partners and startups
- Use Google Analytics（ analysis ） Module monitoring technology and business behavior
- application WAF and DDoS Strong security constraints for protection .
- RESTful API As a standard for external integration .
Level 7：API As a business
seeing the name of a thing one thinks of its function , Companies at this level are based entirely on API To run its business .
Here are the technical features that must be observed ：
- Powerful API Strategy
- Overall control of external and internal API（ Including between services and micro Services ）
- Use API All the functions of the platform
- Strictly abide by the law （ for example PSD2）
- Mature microservice architecture using service grid
- Powerful cloud based infrastructure and infrastructure
- Multiple managed communication protocols , for example RESTful,GraphQL,WebSockets,gRPC etc. .
The road map to maturity
Once you've evaluated the company and learned about its current level and expectations , You can create a roadmap , Of course , The details of the plan depend on various factors , For example, business drivers , Technical constraints and future prospects .
however , When creating a plan , I suggest you consider some tips , for example ：
- First , Please from 4 Move level to 5 level , Not from 4 Move level to 7 level , baby ！
- Select a MVP Project to test your hypothesis , Start small , test , Learning and application suggestions
- From inside and under control API Start
- Define something API Pattern and build the smallest API government .
actually , To participate in some form API economic , Your company needs to manage your API. No matter what level your company is in , Companies can start API Strategy creation , for example , To create a model based on API The ecosystem of our partners .
The main focus of this article is to point out how mature the architecture based on some scenarios is , To understand the best technology solutions and strategies to implement , In order to provide mature services according to business and technical requirements API Architecture .
- 领域驱动设计简介 - danhaywood(点击标题见原文)
- Next generation language robot surpassing Siri and Xiaoai: Turing test of gpt-3
- Class table inheritance pattern
- Block balking mode
- Proteus is a new platform for building streaming microservices using rsocket
- Introduction to Domain Driven Design - danhaywood
- 什么是Little定律(littles law)
- What is little's law
Introduction to OpenAPI specification
Hello CTP series blog
CodeForces CF242E (CodeForces Round 149 Div.2 Problem E)题解
Codeforces cf242e (codeforces round 149 div.2 problem E)
探索使用 Golang 和 Webassembly 构建一个多人游戏服务器
Explore using golang and webassembly to build a multiplayer game server
Laser ＆ Photonics Rev.：驾驭消逝波——一种新型的各向异性超构表面
- Small science: Bi te Se compound heterostructure nanosheets achieve significant improvement in thermoelectric properties
- Laser & Photonics Rev.: driving evanescent waves -- a new type of anisotropic surface
- Aenm: high performance halide solid electrolytes based on cationic lattice control
- Small: driving force and synergistic mechanism in peptide hierarchical assembly
- Rhel8 learning section 3
- 探索使用 Golang 和 Webassembly 构建一个多人游戏服务器
- Explore using golang and webassembly to build a multiplayer game server
- Structure and Deconstruction
- 第一性原则：伊隆·马斯克（Elon Musk）论自我思考的力量 - jamesclear
- The first principle: Elon Musk's view on the power of self thinking - James clear
- Operation and maintenance boss ridicules me, you don't know this?
- Web security practice
- SQL memo
- One year summary of event traceability and cqrs implementation
- Netflix test c assandra:- Million writes per second
- How to reform the current system architecture
- Two terminal network reliability
- 干货 | 日访问过亿，办公IM及开放式平台在携程的实践
- Dry goods daily visit over 100 million, office IM and open platform practice in Ctrip
- Programmer's 4 ability levels and 8 work bad habits, certainly have you
- Mockito 小结
- Summary of mockito
- [玩转UE4动画系统＞基础篇] 之 什么是射线检测
- What is radiographic testing
- Vscode + sublime installation and Sinicization
- Vscode + sublime installation and Sinicization
- 软件设计专家的八种习惯 | 麻省理工学院出版社
- 讨论：这样基于Domain Event的分层是否合理？