Restaurant App
如果您有任何疑问,请与我联系:
Restaurant App是基于.NET Core,Golang,Java,Xamarin,React,Angular和Angular和Angular等项目的容器化Polyglot Microservices应用程序。该项目演示了如何使用容器,安排,服务发现,网关和最佳实践为较大的应用程序开发小型微服务。如果您有任何疑问或问题,请随时欢迎您提高代码质量并做出贡献。
要入门,只需将此存储库提供。有关贡献指南,请参考贡献。
动机
- 基于使用容器化的最佳实践开发独立部署和可扩展的微服务
- 使用Xamarin.Forms开发跨平台美丽的移动应用
- 使用React和Angular开发单页应用程序,包括最佳实践
- 使用github操作将全自动的CI/CD管道配置为单声道和Azure管道和AppCenter为移动设备配置
- 使用现代技术,例如GraphQL,GRPC,Apache Kafka,无液体,ISTIO
- 编写清洁,可维护和完全可测试的代码,单元测试,集成测试和嘲笑实践
- 使用坚实的设计原理
- 使用不同编程语言中的设计模式和最佳实践
体系结构概述
该体系结构提出了一个以多个自主的微服务(每个人拥有自己的数据/db和编程语言),并将REST/HTTP用作客户端应用程序之间的通信协议,以及用于后端通信的GRPC,以支持跨多个服务的数据更新。
微服务和基础设施组件列表
| № | 服务 | 描述 | 建立状态 | 端点 |
|---|---|---|---|---|
| 1。 | 身份API(.NET Core + IdentityServer4) | 身份管理服务,由OAuth2和OpenID Connect提供支持 | 开发|产品 | |
| 2。 | CART API(Golang + Redis) | 管理客户篮,以便使用redis将物品保存在内存中缓存 | 开发|产品 | |
| 3。 | 目录API(Rust + Rocket,PostgreSQL) | 管理显示餐厅菜单的数据 | 开发|产品 | |
| 4。 | 订购API(Java + Quarkus +本机构建) | 管理客户订单 | 开发|产品 | |
| 5。 | 结帐API(Node.js + Express) | 负责结帐功能 | 开发|产品 | |
| 6。 | 付款API(Golang) | 假付款API(付款服务抽象PSP) | 开发|产品 | |
| 6。 | Web应用程序(Typescript + Next.js❤️) | 前端应用 | 开发|产品 |
Web应用程序
使用ssr使用next.js开发的Web应用程序
移动应用
不幸的是,我不再能够维护Xamarin(移动)部分
| 移动的 | 建立状态 | 发布 |
|---|---|---|
| 安卓 | 下载Android | |
| ios | 下载iOS |
由Xamarin.Forms和支持iOS和Android开发的移动应用程序,您可以在这里找到如何使用C#开发跨平台移动应用程序。该示例显示了如何使用Xamarin.Forms开发精美的用户界面以及如何使用移动侧的干净体系结构来管理代码并获得干净,可维护,可测试的代码。
贡献者
感谢所有已经为我们的项目做出贡献的人!
