一、前景

abp vNext是ABP 开源 Web应用程序框架,是abp的新一代开源web框架。框架完美的集成.net core、identity server4等开源框架,适用于构建web应用程序和微服务,相比上一代abp框架,abp vNext更灵活更轻便更适用于微服务。

主要特性:

1. 模块化架构:模块化设计,可从底到顶进行延伸.

2. 聚焦微服务:支持微服务架构有助于构建自主微服务.

3. 领域驱动设计:根据DDD模式和原则设计和开发.为应用程序提供分层模型.

4. 授权:具有用户,角色和细粒度权限系统的高级授权系统. 构建在Microsoft Identity框架.

5. 多租户:SaaS应用程序开发变得简单!从数据库到UI的集成多租户.

6. 横切关注点:完整的基础架构,用于授权,验证,异常处理,缓存,审计日志记录,事务管理等.

项目状态:

ABP是开源ASP.NET Boilerplate框架的下一代框架, 它目前处于早期预览阶段,尚未准备好在生产中使用. 文档仍在进行中,远未完成。对于短期和生产级应用程序, 建议使用ASP.NET Boilerplate框架,该框架具有丰富的功能集,成熟,积极维护和最新。

abp vNext推出半年GitHub上已有2k多star,项目经历5千多次提交,基础框架功能已经十分完善。特别值得关注的是abp vNext中的微服务最佳实践。abp vNext微服务实践中已经搭建好一个微服务架构,并且提供了基础的后台管理UI(MVC风格),但是对于企业级的后台管理还无法满足。

开始前:

本篇将介绍abp vNext微服务实践中的前后端分离指南,前端框架会使用VUE,不过各大前端框架的集成其实大同小异,因此对于angular、react框架的替换也是十分轻松的。

二、开始分离

step1:启动并发布后台服务

在替换前端框架前必须先发布后台服务,启动和发布过程在前几篇中已经介绍,abp vNext官方文档也有启动教程。

step2:启动vue-element-admin框架

vue后台框架中vue-element-admin热度最高,使用量也最大,个人或者中小型团队最为适合。启动文档:https://panjiachen.gitee.io/vue-element-admin-site/zh/

step3:修改vue-element-admin登录

vue-element-admin登录权限官方示例:https://juejin.im/post/591aa14f570c35006961acac

我的实践教程:https://www.cnblogs.com/william-xu/p/11249800.html

step4:vue-element-admin接入abp vNext权限

vue-element-admin登录权限官方示例:https://juejin.im/post/591aa14f570c35006961acac

我的实践教程:https://www.cnblogs.com/william-xu/p/11274431.html

三、体验

登录示例

微服务示例

三、总结

abp vNext微服务的前后端分离比较容易,目前许多优质的前端UI框架都是开箱即用的,重点在于对abp vNext微服务的深入了解。abp vNext的文档还不够完善,想要灵活的驾驭abp vNext微服务需要对abp框架和ddd架构有很深入的了解,因此不建议没有经验的团队使用abp vNext微服务。

文章目录:https://www.cnblogs.com/william-xu/p/12047529.html

[Abp vNext微服务实践] - 前后端分类的更多相关文章

  1. [Abp vNext微服务实践] - vue-element-admin管理Identity

    一.简介 abp vNext微服务框架中已经提供通用权限和用户角色管理模块,管理UI使用的是MVC模式,不适用于国内主打的MVVM开发模式.在前端框架选型后笔者决定改造abp vNext微服务框架中原 ...

  2. [Abp vNext微服务实践] - 业务开发

    前几篇分别介绍了abp vNext微服务框架.开发环境搭建和vue element admin前端框架接入,在vue element admin中实现用户角色管理基本功能后就可以开始进行业务开发了,本 ...

  3. [Abp vNext微服务实践] - 文章目录

    简介 ABP vNext是volosoft的新一代框架,ABP(vNext)完全使用.NET CORE和DDD(领域驱动)打造,目前GitHub已有6K+次提交,发布版本超过40次,Nuget包下载量 ...

  4. [Abp vNext微服务实践] - 框架分析

    一.简介 abp vNext新框架的热度一直都很高,于是最近上手将vNext的微服务Demo做了一番研究.我的体验是,vNext的微服务架构确实比较成熟,但是十分难以上手,对于没有微服务开发经验的.n ...

  5. [Abp vNext微服务实践] - 启动流程

    前几篇分别介绍了abp vNext微服务框架和微服务CI/CD环境搭建,本篇开始介绍vNext微服务框架的开发环境搭建. 环境准备 官方介绍的系统架构图如下: 上图中身份服务和网关服务已经集成在系统中 ...

  6. [Abp vNext微服务实践] - 租户登录

    简介 Abp vNext微服务授权验证基于ids4,实现租户登录需要在授权服务中获取token,和之前的介绍的登录方式一样,只是多了tenant参数.本篇将介绍在Abp vNext授权服务中启用多租户 ...

  7. [Abp vNext微服务实践] - 服务通讯

    简介 服务通讯是微服务架构中必不可少的功能,服务通讯的效率决定了微服务架构的优略.常用的微服务通讯策略有两种,分别是rpc.http,其中rpc以gRpc框架为代表使用者最多.abp vNext微服务 ...

  8. [Abp vNext微服务实践] - 添加中文语言

    简介 abp vNext中提供了多语言功能,默认语言是英文,没有提供中文语言包.在业务开发中,定义权限后需要用中文的备注提供角色选择,本篇将介绍如何在abp vNext中加入中文语言. step1:添 ...

  9. [Abp vNext微服务实践] - vue-element-admin登录二

    简介: Vue Element Admin是基于vue.element ui开发的后台管理ui,abp vNext是abp新一代微服务框架.本篇将会介绍如何改造Vue Element Admin权限验 ...

随机推荐

  1. 依赖管理系统 go modules

    golang在1.11版本中引入了新的包管理工具 go mod 类似于maven包管理(多项目公用),而之前的vendor类似于node的node_modules管理(各个项目一份) 依赖信息添加到g ...

  2. 4.1 python类的特殊成员,偏函数,线程安全,栈,flask上下文

    目录 一. Python 类的特殊成员(部分) 二. Python偏函数 1. 描述 2. 实例一: 取余函数 3. 实例二: 求三个数的和 三. 线程安全 1. 实例一: 无线程,消耗时间过长 2. ...

  3. jquery中的$(document).ready(function(){})和$(window).load()比较

    1.执行时间 window.onload()即jquery写法中的$(window).load(function(){})必须等到页面内包括图片的所有元素加载完毕后才能执行. $(document). ...

  4. lua调用的c函数模块命名规则

    比如lua中调用C函数 socket.core() , 在c中需要这样命名:luaopen_socket_core(); 基本模式是添加luaopen_前缀,讲.变为_

  5. 免费好用的 Apple 工具(Windows 适用)

    首先,下载链接: https://pan.baidu.com/s/1Sfx3SB8Ya1aMS01aXk--rA 密码: 6y69 1. Airplay (itools) : ios 可以投屏到win ...

  6. 联想拯救者电脑装Ubuntu没有WIFI

    最近给联想电脑装Ubuntu系统,但是装完之后总是无法启动WIFI,而宽带上网却可以,给出一个解决办法,但是该办法应该只适合联想电脑,其他电脑请自测! 打开终端,输入下面指令: sudo modpro ...

  7. windows下编译配置libnet-1.2-rc3

    1.下载winpcap(一个底层驱动,可以嗅探.过滤网卡数据包,发包).exe安装包,傻瓜一步式安装 2.下载WpdPack_4_1_2,这个是winpcap的开发者包,解压之后只需要配置相关路径. ...

  8. 在HTML5 中使用 kindeditor 的方法

    1.打开:http://kindeditor.net/ke4/examples/default.html 2.查看源代码,另存为 3.打开http://kindeditor.net/demo.php, ...

  9. POJ 1840:Eqs

    Description Consider equations having the following form: a1x13+ a2x23+ a3x33+ a4x43+ a5x53= The coe ...

  10. js穿梭框;将两个table中的数据选中移动

    将table中选中的数据移动到右边: 点击一行中的任意一个位置,使其选中: 注:attr()和prop()都是jquery的方法: .attr() : 获取匹配的元素集合中的第一个元素的属性的值 或 ...