您现在的位置是:首页 >其他 >云原生CAx软件:技术约束网站首页其他
云原生CAx软件:技术约束
Pivotal公司的Matt Stine于2013年首次提出Cloud Native(云原生)的概念,从概念提出到技术落地,云原生还处于不断发展过程中,关于云原生的定义也不断在完善。
云原生使用开源软件堆栈来创建容器化、动态编排和面向微服务的应用程序。
Heroku创始人 Adam Wiggins 在2012年提出的"十二要素原则"用于指导设计与开发云原生应用程序。
Ref. from The Twelve Factors
I. Codebase
One codebase tracked in revision control, many deploys
II. Dependencies
Explicitly declare and isolate dependencies
III. Config
Store config in the environment
IV. Backing services
Treat backing services as attached resources
V. Build, release, run
Strictly separate build and run stages
VI. Processes
Execute the app as one or more stateless processes
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Maximize robustness with fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run admin/management tasks as one-off processes
与此同时,云原生的概念与技术也在逐渐影响CAx(CAD/CAE/CAM)软件的架构设计与开发,要考虑设计与实现原生为云的CAx软件:云原生CAx软件(Cloud Native CAx System)
狭义上来说,云原生CAx软件实际上就是采用微服务架构、以Kubernetes容器集群为目标平台的CAx软件。
在前面的博文中,已经就云原生CAx软件设计与开发过程中可能涉及的基础知识进行了总结,但尚未对云原生CAx软件的技术特性进行研究。。
因此,本文拟结合技术研究与工作实践,对云原生CAx软件设计和开发的技术约束进行系统性总结。
注1:限于研究水平,分析难免不当,欢迎批评指正。
注2:文章内容会不定期更新。
一、C/S架构
二、多租户服务
三、微服务架构
四、HPC加持
参考文献
Joseph Ingeno. Handbook of Software Architecture.