企业项目实战 .Net Core + Vue/Angular 分库分表日志系统一 | 前言
教程预览
01 | 前言
02 | 简单的分库分表设计
03 | 控制反转搭配简单业务
04 | 强化设计方案
05 | 完善业务自动创建数据库
06 | 最终篇-通过AOP自动连接数据库-完成日志业务
介绍
大家好我是初久,一名从业4年的.Net开发攻城狮,从今天开始我会和大家一起对企业开发中常用的技术进行分享,一方面督促自己学习,一方面也希望大家可以给我指点出更好的方案,我们一起进步。
项目背景
该项目是一个日志分析平台,因为公司下位机会产生大量日志,没有一个地方统一管理和存放,也不方便分析排查问题,而孕育出来的一个系统,后面因为感觉挺好,公司就把各种系统全都对接了过来。
现在是一个日处理数据平均50w条左右,处理速度1ms 60条左右的系统。
我们这次讲的重点是分库分表不能偏离重点,所以我就把他阉割了一下,砍掉了业务,弱化其他部分的功能,用最简单的方式来实现我们的技术点。
我能学到什么
整套教程,会从最简单的设计开始,一步一步带我们去思考如何改造,如何设计,将常用的设计模式带入到项目中,依赖注入生命周期到底该如何灵活使用。
技术
:如果你是想学习基础,可以先从小白开始,下面的链接会非常适合你:
https://www.yoyomooc.com/yoyomooc/aspnet-core-for-beginners-Index
https://windsting.github.io/little-aspnetcore-book/book/
https://www.cnblogs.com/laozhang-is-phi/p/9495618.html#autoid-1-0-0
本次系列文章是针对有.Net Core的一个基础进阶,项目会用到常见的.Net Core技术点和设计模式,在学习技术点的同时,让大家感受把设计模式引入到项目带来的好处。
系统环境
windows 10、SQL server 2012、MySql/MSSql/SQLite、Visual Studio 2019、Windows Server 2008 R2
后端技术
.Net Core 3.1 + 版本 API
Async和Await 异步编程
Repository 仓储模式
Swagger 前后端文档说明,基于RESTful风格编写接口
Cors 简单的跨域解决方案
AOP基于切面编程技术
Autofac 轻量级IoC和DI依赖注入
DI 依赖注入
WebSocket
前端技术
Angular 实战入门
Ng-Zorro 组件库
Rxjs
新增
Vue
数据库技术
SqlSugar、FreeSQL 轻量级ORM框架,CodeFirst
AutoMapper 自动对象映射

结语
如果系统中有地方写的不好,设计不合理的地方希望大家帮忙监督指正。
致谢
本次系列教程思路来自于:玩双截棍的熊猫,创作动力来自于角落的白板报、老张的哲学感谢2位天天催着我让我把技术分享出来。
加群不迷路:1087964144 进去@初久
源码,更新较快可能不是当前版本 https://github.com/MrChuJiu/EasyLogger
自学.Net Core公众号推荐


企业项目实战 .Net Core + Vue/Angular 分库分表日志系统一 | 前言的更多相关文章
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统 | 前言
介绍 大家好我是初久,一名从业4年的.Net开发攻城狮,从今天开始我会和大家一起对企业开发中常用的技术进行分享,一方面督促自己学习,一方面也希望大家可以给我指点出更好的方案,我们一起进步. 项目背景 ...
- #企业项目实战 .Net Core + Vue/Angular 分库分表日志系统六 | 最终篇-通过AOP自动连接数据库-完成日志业务
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 06 | 最终篇-通过AOP自动连接数据库-完成日志业 ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统二 | 简单的分库分表设计
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 06 | 最终篇-通过AOP自动连接数据库-完成日志业 ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统 | 控制反转搭配简单业务
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 说明 我们上一节已经成功通过 连接提供程序存储库,获取到了 连接提供程序,但是连接提供程序和数据库连接依赖太深, ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统五 | 完善业务自动创建数据库
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 说明 这节来把基础的业务部分完善一下. 因为 IQue ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统三 | 控制反转搭配简单业务
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 05 | 完善业务自动创建数据库 06 | 最终篇-通过AOP自动连接数据库-完成日志业 ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统四 | 强化设计方案
教程预览 01 | 前言 02 | 简单的分库分表设计 03 | 控制反转搭配简单业务 04 | 强化设计方案 强化 先来记录一下我们现在的样子,一会好做个对比 1.在EasyLogger.DbSto ...
- 企业项目实战 .Net Core + Vue/Angular 分库分表日志系统 | 简单的分库分表设计
前言 项目涉及到了一些设计模式,如果你看的不是很明白,没有关系坚持下来,写完之后去思考去品,你就会有一种突拨开云雾的感觉,所以请不要在半途感觉自己看不懂选择放弃,如果我哪里写的详细,或者需要修正请联系 ...
- mysql、oracle分库分表方案之sharding-jdbc使用(非demo示例)
选择开源核心组件的一个非常重要的考虑通常是社区活跃性,一旦项目团队无法进行自己后续维护和扩展的情况下更是如此. 至于为什么选择sharding-jdbc而不是Mycat,可以参考知乎讨论帖子https ...
随机推荐
- springmvc中get和post区别和应用
最近对post和get什么时候使用 和 应该怎么使用 他俩的区别 有了一些疑问 根据本人的了解 post是对数据进行了封装保护 get是安全性较差的 可以看到数据的信息 post是用来改 ...
- 按钮改变和控制div的形状的html,JavaScript代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Reliable Federated Learning for Mobile Networks
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! 以下是对本文关键部分的摘抄翻译,详情请参见原文. arXiv: 1910.06837v1 [cs.CR] 14 Oct 2019 Abst ...
- Vue的数据响应式
getter和setter怎么用 示例代码 getter ,关键词为 get ,用于获取一个值.定义时为函数,但是使用时不用加括号. setter 用于对数据的改写 Object.defineProp ...
- 浅析 MVC
MVC(Model–View–Controller) Model:数据模型 负责操作所有数据View:视图 负责所有UI界面Controller:控制器 负责其他 //数据放在m const m = ...
- 焦大:seo思维进化论(下)
http://www.wocaoseo.com/thread-50-1-1.html 很多东西在不同地方其所有的价值和意义是不一样的,seo亦是如此.在seo操作中我觉得最核心的就是检索价值观和用户需 ...
- 通过Tomcat jpress连接不到数据库
-- 实际数据库.用户名,密码,主机账号,端口号均正确 提示如下: 异常如下:------------------------------------------------------------- ...
- linux系统指法练习与打字游戏软件
以 fedora和ubuntu 系统为例,fedora/centos系统用yum install命令安装 ubuntu系统用apt-get instll命令安装 yum install ktouch$ ...
- 加载PHP的配置扩展文件
一.在PHP的安装目录中去创建一个 php.ini 的配置文件 复制php.ini-development文件,修改成php.ini文件(注意:不要多加一个空格或标点什么的).其中 php.ini ...
- 在Spring中拦截器的使用
Filter Filter是Servlet容器实现的,并不是由Spring 实现的 下面是一个例子 import java.io.IOException; import javax.servlet.F ...