文章首发于公众号 松花皮蛋的黑板报
做者就任于京东,在稳定性保障、敏捷开发、高级JAVA、微服务架构有深刻的理解数据库
当时我将本身的文章投稿到InfoQ,而后总编辑郭总邮件邀请我来分享,因而有了此次值得记念的演讲。欢迎朋友们前往极客时间App观看。设计模式
主题为:如何利用有效的资源抗住618大促流量缓存
大概内容以下:安全
性能测试性能优化
性能优化数据结构
硬件优化可包括配置升级好比使用支持NIO的Tomcat版本代替低版本、集群水平扩展、摘取集群短板。架构
软件优化包括代码审查而后优化SQL和低性能代码。并发
扩展点微服务
1、开发语言基础知识性能
数据结构中各类集合间的区别,包括适用场景、CRUD复杂度、线程安全性、有序性、快速失败特性。
并发当中的四种设计模式,包括Future模式、Master-Slave模式、保护暂停模式、不可变模式、生产消费者模式等。
IO当中的零拷贝技术、序列化和反序列化。
内存管理中的内存模型、垃圾回收策略。
使用链接池减小管理的开销。
2、程序设计
SOLID原则,具体为单一职责原则、开闭原则、里氏替换原则、接口隔离原则、依赖倒置原则。
设计模式,常见的有单例模式、工厂模式、策略模式、责任链模式。
接口设计,好比借鉴组合模式减小过多的重载。
避免过分设计,不要过早关注安全性、可配置性、可扩展性、可维护性、可继承性。
3、数据库
理解好索引和锁。
4、中间件
利用好缓存,可是要注意缓存和源数据同步的一致性问题。
利用好消息引擎,可是要注意幂等性、有序性、数据冗余复制的问题。
5、分层
理解好领域驱动设计,按业务划分限界上下文、消除隐匿数据依赖、明肯定义依赖方向。
6、高可用
服务降级、服务限流、依赖熔断、队列、超时和重试机制、数据一致性。
文章来源:www.liangsonghua.me
做者介绍:京东资深工程师-梁松华,在稳定性保障、敏捷开发、JAVA高级、微服务架构方面有深刻的理解