一个归档包(例如war包)包含所有功能的应用程序,我们通常称为单体应用。而架构单体应用的方法论就是单体应用架构。
-
架构图
- 架构简单
- 开发、测试、部署方便
- 复杂性高
- 部署慢,频率低
- 扩展能力受限
- 阻碍技术创新
一词最早来自于Martin Fowler的一篇微服务文章
- 翻译 微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源 API)。这些服务围绕业务能力构建并且可通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可用不同的语言开发,使用不同的数据存储技术
- 每个微服务可独立运行在自己的进程里
- 一系列独立,运行的微服务共同构建起整个系统
- 每个服务为独立的业务开发,一个微服务只关注某个特定的功能,例如订单管理、用户管理等
- 可使用不同的语言与数据存储技术(契合项目情 况和团队实力)
- 微服务之间通过轻量的通信机制进行通信,例如通过REST API进行调用;
- 全自动的部署机制
- 单个服务更易于开发、维护
- 单个微服务启动较快
- 局部修改容易部署
- 技术栈不受限
- 按需伸缩
- 运维要求高
- 分布式固有的复杂性
- 重复劳动
- 大型、复杂的项目
- 有快速迭代的需求
- 访问压力大
- 业务稳定
- 迭代周期长
◆ 领域驱动设计( Domain Driven Design ) ◆ 面向对象 ( by name./ by verb. )
4.2 最佳实践◆ 职责划分 ◆ 通用性划分
4.3 粒度合理◆ 良好地满足业务 ◆ 幸福感 ◆ 增量迭代 ◆ 持续演进
-
拆分
-
项目架构图
建议和笔者保持一致
- 前往 https://nodejs.org/en/download/ 下载Node.js。
- 建议使用 https://nodejs.org/dist/v8.15.0/node-v8.15.0.pkg 下载 。
-
安装说明
-
macOS操作系统,用pkg直接拖动安装即可
-
macOS操作系统,用pkg直接拖动安装即可
修改project.config.json,按需修改如下两行
"appid": "修改为你的appid" "projectname": "修改为你的项目名称,尽量用英文",
其中,appid在 微信公众平台 - 开发 - 开发设置中可以找到。
npm --registry https://registry.npm.taobao.org install
npm run dev
npm run build7.4 下载 & 安装微信开发者工具
-
前往 https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 下载开发者工具。
- 安装开发者工具 双击安装即可!
找到src/utils/api.js,找到
// 后端接口基础路径 export const BASE_API_URL = '';
将其修改为你的后端地址,例如:
export const BASE_API_URL = 'http://localhost:8080';7.6 将代码导入到开发者工具
注意:务必勾选不校验合法域名...。
-
Spring Boot ( 快速迭代开发 )
-
Spring MVC ( MVC框架 ) Mybatis ( 持久层框架,操作数据库 ) +通用Mapper
-
Spring Cloud Aliababa ( 分布式 )
-
参考
- mpvue
- vant-weapp http://mpvue.com/build/