当前位置:网站首页>This is indeed the best article on microservice architecture I have read!
This is indeed the best article on microservice architecture I have read!
2022-08-05 06:15:00 【Take the cloud technology】
In 2014, Martin Fowler and James Lewis jointly proposed the concept of microservices, which defined microservices as small services composed of a single application, with their own itineraries and lightweight processing, services designed according to business functions,Deploy in a fully automated fashion, using HTTP APIs to communicate with other services.At the same time, the service will use the smallest scale centralized management (such as Docker) capabilities, and the service can be implemented with components such as different programming languages and databases.
Microservicesare small, autonomous services that work together.
Microservices andSOA
Service-Oriented ArchitectureSOA(Service-Oriented Architecture) sounds similar to microservices, but SOA used earlyBus mode, this bus mode is strongly bound to a certain technology stack, such as: J2EE.This makes it difficult for the legacy systems of many enterprises to be connected, the switching time is too long, the cost is too high, and the convergence of the stability of the new system takes some time. In the end, SOA looks beautiful, but it has become an enterprise-level luxury.Intimidating.
Microservice Architecture
In view of the above-mentioned shortcomings of "monolithic application", a single application is divided into various small, interconnected microservices, and a microservice completes a relatively single function, and each otherKeep it separate and decoupled, that's the microservice architecture.
Technological heterogeneity
The internal development technology of different services can be inconsistent. You can use java to develop helloworld service A and golang to develop helloworld service B, and everyone no longer has to argue about which language is the best language in the world.
Scalability
If there is a performance bottleneck in a huge single service, it can only expand the software as a whole. It may only affect the performance of a small module, and we have to pay the price of upgrading the entire application.This has been improved in the microservice architecture. You can only expand and upgrade those services that affect performance, so the effect of the right medicine is very good.
Simplified deployment
If your service is a huge monolith with millions of lines of code, it is obviously very cumbersome to recompile the entire application even if a few lines of code are modified, and the uncertainty brought about by software changesThe reliability is very high, and the impact of software deployment is also very large.In the microservice architecture, the deployment of each service is independent. If there is a problem, it only affects a single service, and the version can be quickly rolled back to solve it.
Service registration and discovery
Microservices call each other to complete the overall business function. How to find the correct target service address among many microservices is the so-called "service discovery" function.
No technology is forever in the IT world, the evolution of microservices architecture is one example.We don't know when the next technology iteration will be, but the microservice framework has never stopped updating every second of every day we work hard.As a corner of the IT industry, we should be enthusiastic about technology, actively face change, and use new technology to make us stand at the top again.
边栏推荐
- 入门文档05 使用cb()指示当前任务已完成
- 智能运维会取代人工运维吗?
- Getting Started Document 01 series in order
- vim的三种模式
- To TrueNAS PVE through hard disk
- 腾讯云云函数SCF—入门须知
- [Day1] (Super detailed steps) Build a soft RAID disk array
- 千亿IT运维市场,产品要凭实力说话
- The idea of commonly used shortcut key
- Configuration of TensorFlow ObjecDetectionAPI under Anaconda3 of win10 system
猜你喜欢
随机推荐
spark算子-coalesce算子
Getting Started 05 Using cb() to indicate that the current task is complete
【Day5】软硬链接 文件存储,删除,目录管理命令
ACL 和NAT
spark source code - task submission process - 3-ApplicationMaster
【Day6】文件系统权限管理 文件特殊权限 隐藏属性
账号与权限管理
Technology Sharing Miscellaneous Technologies
Dsf5.0 bounced points determine not return a value
有哪些事情是你做了运维才知道的?
lvm逻辑卷及磁盘配额
添加新硬盘为什么扫描不上?如何解决?
LeetCode Interview Questions
正则表达式小实例--验证邮箱地址
To TrueNAS PVE through hard disk
[Day6] File system permission management, file special permissions, hidden attributes
One-arm routing and 30% switch
spark源码-任务提交流程之-3-ApplicationMaster
Apache configure reverse proxy
spark算子-map vs mapPartitions算子