参考电商平台的 mall-learning 使用的技术栈。
多端应用是主流的趋势,所以在多端开发上选择了给予 Vue 的 uni-app 框架。
酒店系统对标同程旅行,用户可以根据定位、范围、价格、星级等等一系列的条件搜索或排序,为解决这一需求才用了 Elasticsearch 服务。微服务整体方案采用阿里的微服务解决方案,服务部署使用 Docker 和 K8S。
从一个请求过程来看:
- 一个请求发送首先经过 DNS 域名解析。
- 遇到防火墙、CDN 加速。
- 来到 Nginx 集群,控制负载和路由转发。
- 请求被微服务处理,最终返回客户端。
从微服务内部来看,基础的微服务有:
- Nacos 注册中心和配置中心。
- Gateway 微服务统一访问入口。
- OpenFigin 微服务调用框架。
- Ribbon 负载均衡和 Sentinel 熔断降级。
从微服务运转管理的角度看:
- 部署工具 Docker + K8S。
- Jenkins 监控和自动构建项目。
- SkyWalking、Prometheus 链路追踪和监控报警。
- Logstash 日中集中中转、Kafka 分析收集日志、Kafka + Elasticsearch 可视化日志分析系统。
其他微服务:
- OAth 2.0 + Spring Security 用户权限认证。
- Redis 数据缓存、分布式锁等。
- MySQL 持久化基础数据库。
- RabbitMQ 消息队列。
- Elasticsearch 全文检索。
- MiniIO 对象存储。
- XXL-JOB 任务管理。