这次课程的主要内容为《技术架构选型》。说实话,虽然这个对于我们这些入行未深的新手来说理解起来有点困难,但是对于其所涉及到的知识我还是非常感兴趣的!一开始,孤尽老师先讲了他曾经在阿里的工作经历,可以说是很开拓眼界了!曾经是MVC框架,再到自研ORM框架,其中老师还分享了他十年前的技术摘记!像摘记中写到“mighty不支持group by和表连接操作,改用ibatis”,真的,像这些对于我们来说真是有一种深远的历史感!哈哈。好了,回归正题,在孤尽老师分享完他的经历后,就开始正式进入今天课程了,首先是两大技术选型的原因——1.降低开发成本。2.提高研发效率。这两者也可以说是技术选型的两大原则了!比如老师接下来讲的编程语言为啥要选择Java,巨石型应用架构的抛弃,SOA的升级等等都是在这两个大原则下进行技术选择、迭代以及更替的。还有,像我们这次项目的微服务分层的目的就是1.业务隔离 2.并行开发 3.易于运维 4.单独部署!
接下来老师就开始讲关于Spring的相关框架选型原因了,首先一开始的时候由于1.环境搭建麻烦 2.依赖配置复杂 3.开发效率低下,所以最后升级到了Spring Boot套餐,其能1.方便地创建可独立运行的 spring 应用程序 2.直接内嵌Tomcat Jetty 或 Undertow 3.简化了项目的构建配置 4.为 spring 及第三方库提供自动配置 5.提供生产级特性 6.无需生成代码或进行XML配置。总之就是“Spring boot build anything!”。哈哈,随后老师开始讲解掀起大规模微服务之风的Netflix!其为啥要进行开源:1. 将自己的解决方案建立为行业标准和最佳实践 2. 建立Netflix技术品牌 3. 雇佣、留住和吸引顶级工程师 4. 从共享生态中获得反馈输入并受益,以及现在Spring Cloud家族中哪些是由Netflix贡献的,可以说再次学了一遍微服务发展相关历史,真的极大的扩充了知识储备!然后老师开始讲数据访问层的选型,这里面又包括了JDBC、Mybatis、Mybatis-Plus、Mybatis框架执行流程解析、数据库连接池选型等,其中的原理和关联老师真的是倾囊相受,感觉一遍都听不够,因为知识点太多!哈哈哈。最后是关于消息中间件选型、远程通信框架选型、网关层技术选型等的讲解,说实话,这三者,最后一个因为之前自己配过,感觉还行,但是前两个估计得多看看才能理解的更加清晰了!好了,继续努力吧!为了31天后的蜕变!干!