从事这个行业转眼已经6年了,从当初刚毕业的在北京朝八晚十,从二环到五环,仍天天精力充沛的小愤青;再到深圳一点一滴的辛勤在软件行业的耕种,从当初单体应用架构到如今微服务架构的经历,回想起来本身的收获却是很多。人生也许算是比较平淡,运气到也还算不错,作过的项目恰好让我在这些方面能有不错的认知和自我学习的空间。mysql
原本这个系列能带来的更早,奈何去年打王者荒废了太多的时间(有点收获的可能就是连续三赛季王者了),好在本身还算醒悟及时,最近看到微服务的所使用的框架或者工具倒也是很是多,但大多都须要本身研究的内容太多,并且因为少有的docker化,很难再实际生产环境灵活的应用,此次带来全docker化的实战体验。nginx
实践源码:https://github.com/zengqinglei/microservice-deploygit
为了更加接近生产环境的部署方式,咱们使用vmware建立以下几台主机:github
虚拟IP:192.168.0.110sql
因为文章中涉及内容较多,因此其中如设计docker构建、配置等复杂教程都会引导你们去github查看详情,你们注意一下引导连接地址,文章中尽量经过简要的原理及对于微服务架构的做用配合图讲解,让文章更加通俗易懂。docker
名称:Creekdream.AspNetCore
开源地址:http://github.com/zengqinglei/Creekdream.AspNetCore数据库
我本身的框架参考了一些Abp框架,根据近一两年针对微服务开发设计,总结开发出来的。
首先,说明一下Abp框架确实很优秀,但随着微服务的发展,框架总体相对较为臃肿,模块化设计不够完全,核心类库都依赖了各类接口的实现,咱们团队在使用的过程当中可能因为不熟悉会致使一些莫名的问题,再加上微服务盛行,使得更多的模块变得没有必要。ubuntu
微软的 .NET CORE 已经作到很优秀,提供Service注入统一入口,中间件、日志、依赖注入的加入等,使得模块化以及开发模式的规约都使得开发变得更加规范可控,框架的设计原则尽量听从 .NET CORE 的设计理念。centos
本次微服务系列从基本概念到一步步的基础设施的搭建最后晚上的一套服务架构体系,用彻底docker化的方式给你们呈现,方便根据实际的生产或者测试环境进行调整。
微服务之路是漫长的,咱们仍还须要不少工做要作,在工做中,根据业务需求划分边界,微服务API的定义,服务内部的模块划分都须要咱们花更多的时间去推敲。服务器
最后呢,这两年 .NET 在国内实在有些低迷,从接触 .NET CORE 到如今真心感受到它的优秀,也但愿咱们能共同在 .NET 方面能贡献出更多的力量,能帮助它发展的愈来愈好!