[Abp vNext微服务实践] - 启动流程
前几篇分别介绍了abp vNext微服务框架和微服务CI/CD环境搭建,本篇开始介绍vNext微服务框架的开发环境搭建。
环境准备
官方介绍的系统架构图如下:
上图中身份服务和网关服务已经集成在系统中,我们需要搭建的是MS Sql、mongoDB、redis、RabbitMQ、elasticsearch。其中MS Sql、RabbiMQ、elasticsearch建议直接安装,redis、mongoDB建议docker安装。安装教程如下:
Ubuntu18.04 安装RabbiMQ:
https://my.oschina.net/u/2364788/blog/2875902
elasticsearch使用的Java环境,十分消耗系统资源,开发过程中建议不要安装,安装教程暂时忽略。
docker安装redis、mongoDB:
https://blog.csdn.net/myNameIssls/article/details/80520465
https://www.jianshu.com/p/2181b2e27021
SQL server版本越高越好。
获取abp vNext代码
通过GitHub官方拉取最新发布代码:https://github.com/abpframework/abp
解压后项目结构如下:
构建本地开发环境
项目根目录cmd进入framework执行:
dotnet restore
dotnet build
构建完成后退出进入modules目录对每个模块分别执行:
dotnet restore
dotnet build
最后构建微服务,进入samples\MicroserviceDemo目录执行:
dotnet restore
dotnet build
如果所有模块都构建成功,下一步打开MicroserviceDemo解决方案开始配置微服务
配置微服务
配置AuthServer
打开applications目录下AuthServer.Host\appsettings.json
修改ConnectionStrings、Redis、RabbitMQ配置,示例如下:
配置BackendAdminAppGateway、InternalGateway
分别修改BackendAdminAppGateway.Host和InternalGateway.Host配置文件中的数据库连接和redis连接。
配置IdentityService、ProductService
分别修改IdentityService.Host和ProductService.Host配置文件中的数据库连接、redis连接和RabbiMQ配置。
其他服务也参考以上进行修改。
使用EF CORE还原数据库
右键AuthServer.Host设置为启动项目,如下:
打开程序包管理控制台,使用ef core 迁移命令:
迁移成功后对ProductService.Host做同样操作:
到此本地开发环境已经搭建完成,下面开始启动项目:
设置启动顺序如下,不要调试:
abp vNext提供了MVC的简单后台管理界面和门户网站界面分别是http://localhost:51954、http://localhost:53435,忙活了这么久,赶紧打开尝试一下吧。。。
总结
直接从源码构建比较麻烦而且容易构建失败,嫌麻烦的话可以直接将MicroserviceDemo中的工程引用改为nuget引用,abp已经同步更新nuget包。改为nuget包后代码构建将十分简单,大家可以根据喜好尝试一下。
文章目录:https://www.cnblogs.com/william-xu/p/12047529.html
[Abp vNext微服务实践] - 启动流程的更多相关文章
- [Abp vNext微服务实践] - 文章目录
简介 ABP vNext是volosoft的新一代框架,ABP(vNext)完全使用.NET CORE和DDD(领域驱动)打造,目前GitHub已有6K+次提交,发布版本超过40次,Nuget包下载量 ...
- [Abp vNext微服务实践] - 前后端分类
一.前景 abp vNext是ABP 开源 Web应用程序框架,是abp的新一代开源web框架.框架完美的集成.net core.identity server4等开源框架,适用于构建web应用程序和 ...
- [Abp vNext微服务实践] - 框架分析
一.简介 abp vNext新框架的热度一直都很高,于是最近上手将vNext的微服务Demo做了一番研究.我的体验是,vNext的微服务架构确实比较成熟,但是十分难以上手,对于没有微服务开发经验的.n ...
- [Abp vNext微服务实践] - 租户登录
简介 Abp vNext微服务授权验证基于ids4,实现租户登录需要在授权服务中获取token,和之前的介绍的登录方式一样,只是多了tenant参数.本篇将介绍在Abp vNext授权服务中启用多租户 ...
- [Abp vNext微服务实践] - 服务通讯
简介 服务通讯是微服务架构中必不可少的功能,服务通讯的效率决定了微服务架构的优略.常用的微服务通讯策略有两种,分别是rpc.http,其中rpc以gRpc框架为代表使用者最多.abp vNext微服务 ...
- [Abp vNext微服务实践] - 添加中文语言
简介 abp vNext中提供了多语言功能,默认语言是英文,没有提供中文语言包.在业务开发中,定义权限后需要用中文的备注提供角色选择,本篇将介绍如何在abp vNext中加入中文语言. step1:添 ...
- [Abp vNext微服务实践] - vue-element-admin管理Identity
一.简介 abp vNext微服务框架中已经提供通用权限和用户角色管理模块,管理UI使用的是MVC模式,不适用于国内主打的MVVM开发模式.在前端框架选型后笔者决定改造abp vNext微服务框架中原 ...
- [Abp vNext微服务实践] - 业务开发
前几篇分别介绍了abp vNext微服务框架.开发环境搭建和vue element admin前端框架接入,在vue element admin中实现用户角色管理基本功能后就可以开始进行业务开发了,本 ...
- [Abp vNext微服务实践] - vue-element-admin登录二
简介: Vue Element Admin是基于vue.element ui开发的后台管理ui,abp vNext是abp新一代微服务框架.本篇将会介绍如何改造Vue Element Admin权限验 ...
随机推荐
- springboot-定时任务-多线程
1.配置异步线程池 import java.util.concurrent.Executor; import org.springframework.context.annotation.Bean; ...
- TensorFlow.环境_avx2
1.缘由: 按照之前的步骤,在Win10的笔记本上就是不行: 1.1.jupyter notebook的相关界面,如下图所示: ZC:感觉 应该还是 tensorflow的问题 1.2.然后 各种测试 ...
- strtotime 的 BUG
strtotime('+1 month'),strtotime('-1 month') 碰到一个月中有28, 31天的就会有问题, 比如 strtotime('+1 month', strtotim ...
- Netty学习篇③--整合springboot
经过前面的netty学习,大概了解了netty各个组件的概念和作用,开始自己瞎鼓捣netty和我们常用的项目的整合(很简单的整合) 项目准备 工具:IDEA2017 jar包导入:maven 项目框架 ...
- Python基础总结之初步认识---class类(中)。第十四天开始(新手可相互督促)
昨天简单的认识类怎么定义,什么是类,类如何调用.今天的笔记会大概补充一些内容,明天的笔记会细致讲解,加深个印象即可 今天我们在了解下:类的属性,类属性属于类也属于实例化对象.也就是说类的实例化对象可以 ...
- js复制文本
第一种: 自己测试时 只适合于input 和textarea 但是针对于其他标签的复制就不能用了.代码如下: <!DOCTYPE html> <html> <head&g ...
- VS2013:error C1069: 无法读取编译器命令行
前一阵搞python和matlab,没用VS 2013,今天打开一个C++程序想跑一跑,突然蹦出这么个错误,然后发现电脑上所有的程序都会这样了. 后来发现是TMP/TEMP环境变量路径有空格的问题,更 ...
- poj1269 (叉积求直线的交点)
题目链接:https://vjudge.net/problem/POJ-1269 题意:给出4个顶点,表示两条直线,求这两条直线的相交情况,重合输出LINE,平行输出NONE,相交于一点输出该点的距离 ...
- sysbench的简单安装
1. 下载 可以到网站上面找 我用到的这个是201908最新的 wget https://src.fedoraproject.org/repo/pkgs/sysbench/sysbench-1.0.1 ...
- C语言如何才能使用bool类型
解决办法:加上头文件#include<stdbool.h> ,就可以直接使用类型bool = true/false; #include<stdio.h> 2 #include& ...