JAVA高级软件架构师实战培训 第一期


JAVA高级软件架构师实战培训 第一期


本课程专注于构建:高可扩展性、高性能、大数据量、高并发、分布式的系统架构。 从零开始、全面系统、成体系的软件架构课程,循序渐进的讲述构建上述系统架构所需要的各种技术知识和技能。

适应人群:

1:有一定工作经验,还未从事架构工作,但想要向架构方面发展的朋友
2:已经开始从事架构工作,但想要系统学习提升的朋友
3:了解一些架构的知识,但是一直停留在理论上,不会实际操作,也无法让这些理论知识落地的朋友
4:有一定开发经验,想要系统学习架构方面的知识,扩展知识面和提升开发能力的朋友

技术要点:

1:构建基本的业务功能块,基于Maven+Git+Spring mvc+spring+mybatis+ehcache+mysql+X-gen代码生成
2:高扩展性的分布式体系架构(基于Nginx+Varnish+Memcache+ActiveMQ)
3:NoSQL的合理使用和架构优化(基于MongoDB)
4:分布式文件存储和架构优化(基于MogileFS)

【课程内容】

第01节课:整体课程内容概览

-------------Maven补充和Git-------------

第02节课:Maven补充:分模块、分工程管理
第03节课:Maven补充:多模块,多Web应用,合并成一个War包
第04节课:Git快速上手:Git简介、基本原理、安装、Git服务器配置、插件Egit
第05节课:Git快速上手:TortoiseGit的本地使用
第06节课:Git快速上手:Egit的本地使用
第07节课:Git快速上手:TortoiseGit和Egit的远程使用,以及冲突解决,包括:内容冲突、树冲突、逻辑冲突

-------------基本业务功能块构建-------------

第08节课:要完成的基本业务功能介绍、基本的数据字典
第09节课:搭建基础的开发环境:Eclipse+Maven+Git
第10节课:使用Spring+Mybatis来实现Customer的DAO部分
第11节课:Mybatis的分页实现,DAO的简单测试
第12节课:Service部分的实现,以及基本的基础模块开发
第13节课:基于Spring MVC实现Web层开发
第14节课:基本的新增和列表页面,还有分页的tag开发和测试
第15节课:带查询条件的分页、修改和删除页面的开发和测试
第16节课:查询页面、Mybatis动态查询的实现,Json的自动拼装
第17节课:提炼公共的Webmodel,开始X-gen生成的模板制作,做DAO部分的模板
第18节课:制作X-gen生成需要的service、web层需要的模板
第19节课:制作X-gen生成需要的数据,以及相应的Visitor
第20节课:制作X-gen生成需要的Action,还有部分的Visitor
第21节课:通过X-gen生成商品模块,并调整整个生成的模板和程序
第22节课:通过X-gen生成购物车模块,并调整整个生成的模板和程序
第23节课:通过X-gen来生成订单主模块、明细模块,还有库存管理模块
第24节课:给客户管理模块加入ehcache,然后把现有的工程加入到Git中
第25节课:实现前端的业务登录、首页等功能
第26节课:测试并调整登录的业务功能,使用Cookie来保存用户信息
第27节课:实现index功能的开发
第28节课:Index和商品详细描述页面实现,购物车的实现
第29节课:完成下订单和修改库存的功能
第30节课:把基础的业务应用配置并部署到Linux服务器上去

-------------Nginx-------------

第31节课:Nginx简介、安装和基本运行
第32节课:Nginx的进程结构、基本配置等
第33节课:Nginx常用核心模块指令的功能和配置使用
第34节课:Nginx的Http模块部分的功能和配置使用
第35节课:Nginx的Location区段的功能和配置使用
第36节课:Nginx的反向代理模块的功能和配置使用
第37节课:Nginx结合实际应用,来实现反向代理和动静分离的功能
第38节课:Nginx的负载均衡模块,以及结合实际应用的配置
第39节课:Nginx的Rewrite模块的配置和使用
第40节课:Nginx更多模块的基本功能和配置,常见功能的配置示例
第41节课:Nginx的配置优化以及使用建议
第42节课:应用上Nginx过后的体系结构,以及在更大访问量下,体系结构如何变化

-------------Varnish-------------

第43节课:Varnish简介、安装和基本使用
第44节课:VCL简介、基本语法和基本配置使用,包括负载均衡的配置使用
第45节课:VCL来配置实现健康检查、ACL访问控制等功能
第46节课:Grace模式和Saint模式的理解和应用
第47节课:VCL常用的函数和常用的Http头
第48节课:VCL的子程序,Ation和理解Request流程
第49节课:VCL的变量,常见的VCL应用片断
第50节课:使用CLI来管理Varnish,掌握如何清除缓存,varnishadm命令
第51节课:Varnishd命令和运行期参数,理解参数和选项的功能
第52节课:Varnish的日志操作和Varnish的共享内存:Varnishlog、Varnishtop、Varnishhist、Varnishsizes、Varnishnsca、Varnishreplay
第53节课:规划Varnish的缓存大小;Varnishstat统计信息;提高Varnish的命中率
第54节课:Varnish的性能调优和基本的配置使用建议
第55节课:把Varnish和基本应用,还有Nginx组合起来使用
第56节课:基本的性能测试;Varnish的监控和初步优化
第57节课:应用上Varnish后的体系结构,以及体系结构的演变

-------------Memcached-------------

第58节课:Memcached简介、缓存的含义、安装、基本配置、启动和基本使用
第59节课:Memcached基本的工作原理、两阶段哈希;Memcached的操作命令:set、add、replace、append、prepend、cas、get 、 gets、delete、incr/decr等
第60节课:stats命令、stats sizes命令、flush_all命令、version命令、stats settings、stats items、stats slabs区块统计等
第61节课:理解Memcached的数据存储方式,理解Slab Allocator的方式、理解新建Item分配内存过程
第62节课:内存分配的Chunk、Slab分配演示、Memcached的数据存储方式的缺点;理解Memcached的数据过期方式:延迟/惰性 过期,LRU,懒惰删除机制
第63节课:Memcached的Java客户端开发、Memcached和Spring集成开发
第64节课:理解Memcached的分布式方式、分布式中根据余数计算分散的方式、一致性Hash算法、虚拟节点
第65节课:Memcached内存调优建议,调优目标、调优方法,常见问题的解决,使用Memcached-tool来辅助调优
第66节课:Memcached的限制和使用建议,Memcached的典型适用场景,不适合使用Memcached的场景;Memcached的批量导入导出
第67节课:分析到底把哪些内容放到Memcached里面进行缓存,Memcached结合业务功能进行开发
第68节课:继续Memcached结合业务功能进行开发和测试
第69节课:Nginx+Varnish+基本业务功能+Memcached结合开发使用,进行基本的性能测试,Memcached的监控和初步优化
第70节课:现有的系统,应用上Memcached后的体系结构,思考体系结构如何演变

-------------ActiveMQ-------------

第71节课:ActiveMQ简介、功能和特点;消息中间件;ActiveMQ安装和基本使用;消息收发HelloWorld
第72节课:JMS基本概念,PTP和Pub/Sub域、JMS的消息结构:消息头,属性和消息体
第73节课:JMS的可靠性机制、消息的接收确认、持久化、过期、优先级、临时目的地、持久订阅本地事务等;PTP模型;Pub/Sub模型
第74节课:JMS的API结构,一个JMS应用开发的基本步骤;代码示例非持久的Topic消息收发;代码示例持久的Topic消息收发
第75节课:Broker的启动方式,内嵌到Java中启动Broker,利用Spring集成启动Broker
第76节课:ActiveMQ结合Spring开发:环境设置、Spring配置、Queue消息收发;Topic消息收发;ActiveMQ结合Spring开发最佳实践和建议
第77节课:连接到ActiveMQ,ActiveMQ支持的传输协议和配置:TCP、NIO、UDP、VM、SSL、HTTP/Https等协议
第78节课:ActiveMQ的消息存储持久化;KahaDB的方式、AMQ的方式、JDMC的方式、Memory的方式
第79节课:在一台服务器上启动多个Broker;ActiveMQ的静态网络链接;Static networkConnector的基本原理;networkConnector配置的可用属性
第80节课:演示在static桥接下,多线程的consumer访问集群,消费消息的不均衡性;
第81节课:理解丢失的消息这种场景,配置和演示static集群下的消息回流功能
第82节课:容错的链接,Failover协议,可用的配置参数;ActiveMQ的动态网络链接:多播协议multicast,Discovery协议,Peer协议,Fanout协议
第83节课:ActiveMQ的集群:Queue的消费者集群、Broker集群、Master Slave(基于共享储存的、JDBC实现的、复制LevelDB的方式)
第84节课:Destination高级特性:通配符、组合队列、Configure Startup Destinations、删除不活动的Destinations、Destination Options
第85节课:Destination高级特性:虚拟Destinations、虚拟主题、镜像队列、Per Destination Policies
第86节课:Message Dispatch高级特性:消息游标(Store-based、VM、File-based)、异步发送
第87节课:Message Dispatch高级特性:Dispatch Policies(严格顺序分发策略、轮询分发策略)
第88节课:Message Dispatch高级特性:Optimized Acknowledgement、生产者流量控制
第89节课:Message高级特性:Message Properties、Advisory Message、延迟和定时消息投递
第90节课:Message高级特性:Blob Messages、Message Transformation
第91节课:Consumer高级特性:独有消费者、消费者异步分发、优先级、管理持久订阅者、消息组
第92节课:Consumer高级特性:消息选择器、重投递策略、慢消费者处理
第93节课:监控和管理Broker、集成ActiveMQ和Tomcat
第94节课:什么时候使用ActiveMQ、ActiveMQ优化和使用建议
第95节课:应用ActiveMQ:分析到底把哪些功能用ActiveMQ来辅助实现,ActiveMQ结合业务功能的开发第一部分
第96节课:ActiveMQ结合业务功能的开发第二部分,并测试相应的功能
第97节课:ActiveMQ结合业务功能的开发第三部分,并测试相应的功能,然后上传到服务器上
第98节课:Nginx+Varnish+基本业务功能+Memcached+ActiveMQ组合运行测试
第99节课:基本的性能测试分成两种,一种是Nginx+Varnish+基本业务功能+Memcached,另外一种是Nginx+Varnish+基本业务功能+Memcached+ActiveMQ
第100节课:应用上ActiveMQ后的体系结构,以及今后系统架构的演变
立 即 下 载

相关资源

发表评论

点 击 提 交