Spring Cloud与微服务学习总结(10)——Spring Cloud 常见优化项的总结
- 用undertow替换tomcat,因为undertow是基于NIO非阻塞式请求。也可以用最新的tomcat8.5版本的NIO模式,当然使用场景也有区分,undertow完全支持webrocket,适合IO密集型请求的情况。
- Feign优化,用okhttp替换httpclient,原因主要是简单高效。有okhttp可以设置连接池,减少请求延迟,可以共享Socket,减少对服务器的请求次数,其他比如自动处理Gzip压缩,有缓存相应数据,减少重复请求。
- 可以在生产环境关闭Zipkin链路追踪,因为占用CPU很多。也可自己用消息队列方案自己实现。
- 代码逻辑优化,比如用消息队列优化业务逻辑,把异步处理的任务剥离出来,查询慢的地方,考虑用ES类索引服务。
- Nacos(阿里的方案)可以替换eruka,K8s集群有时会造成注册中心注册失败,nacos在性能和稳定性上都更优。
- redis缓存、ES索引
- 数据库的索引优化,数据库垂直分(微服务分库),读写分离,水平分,分布式数据库。(方案有ID求余分库,热点分库,分布式索引)
- 增加服务器,做负载均衡
- Hystrix线程池的大小和超时时间我们都是可以设置的,线上环境,我们需要对这些参数进行调整,该如何调整呢?假设你的系统B,预计QPS是30,每秒请求响应时间是200ms,那么可以算出30*0.2=6,然后再加点缓冲空间,比如4,那么总共就是6+4=10的线程数量,当然这个4你可以自
Spring Cloud与微服务学习总结(10)——Spring Cloud 常见优化项的总结相关推荐
- Spring Cloud与微服务学习总结(2)——Spring Cloud相较于Dubbo等RPC服务框架的优势
摘要: 目前,Spring Cloud在国内的知名度并不高,在前阵子的求职过程中,与一些互联网公司的架构师.技术VP或者CTO在交流时,有些甚至还不知道该项目的存在.可能这也与国内阿里巴巴开源服务治理 ...
- Spring Cloud与微服务学习总结(8)——Spring Boot、微服务架构和大数据治理三者之间的故事
前言 微服务的诞生并非偶然,它是在互联网高速发展,技术日新月异的变化以及传统架构无法适应快速变化等多重因素的推动下诞生的产物.互联网时代的产品通常有两类特点:需求变化快和用户群体庞大,在这种情况下,如 ...
- Spring Cloud与微服务学习总结(9)——Spring Cloud面试题汇总
为什么需要学习Spring Cloud 不论是商业应用还是用户应用,在业务初期都很简单,我们通常会把它实现为单体结构的应用.但是,随着业务逐渐发展,产品思想会变得越来越复杂,单体结构的应用也会越来越复 ...
- Spring Cloud与微服务学习总结(6)——认证鉴权与API权限控制在微服务架构中的设计与实现(四)
本文转载自(http://blueskykong.com/2017/10/26/security4/) 1. 前文回顾 首先还是照例对前文进行回顾.在第一篇 认证鉴权与API权限控制在微服务架构中的设 ...
- Spring Cloud与微服务学习总结(3)——认证鉴权与API权限控制在微服务架构中的设计与实现(一)
本文转载自(http://blueskykong.com/2017/10/19/security1/) 1. 背景 最近在做权限相关服务的开发,在系统微服务化后,原有的单体应用是基于session的安 ...
- Spring Cloud与微服务学习总结(5)——认证鉴权与API权限控制在微服务架构中的设计与实现(三)
本文转载自( http://blueskykong.com/2017/10/24/security3/) 1. 前文回顾 在开始讲解这一篇文章之前,先对之前两篇文章进行回忆下.在第一篇 认证鉴权与AP ...
- Spring Cloud与微服务学习总结(4)——认证鉴权与API权限控制在微服务架构中的设计与实现(二)
本文转载自(http://blueskykong.com/2017/10/19/security2/) 1. 系统概览 在上一篇 认证鉴权与API权限控制在微服务架构中的设计与实现(一)介绍了该项目的 ...
- Spring Cloud 与微服务学习总结(14)—— 云原生时代,如何从 Java 开发者转型微服务?
前言 根据维基百科定义,微服务不是整体应用程序中的一个层.相反,微服务是一个独立的业务功能,具有清晰的接口,并且可以通过内部组件实现分层架构.从战略角度来看,微服务架构基本上遵循"做一件事, ...
- Spring Cloud与微服务学习总结(13)——云原生趋势下,微服务的拆分粒度如何把握?
前言 微服务在最近几年大行其道,很多公司的研发人员都在考虑微服务架构,同时,随着 Docker 容器技术和自动化运维等相关技术发展,微服务变得更容易管理,这给了微服务架构良好的发展机会.在做微服务的路 ...
最新文章
- leetcode-25 K个一组反转链表
- $(@_config=)什么意思?
- torch_geometric笔记:nn. graclus (图点分类)
- jar包 和 war包?
- 23种设计模式[5]:原型模式
- C++ const 与 extern
- Fly.Box天禾云盘2016双11超级钜惠,超低折扣!!!
- 大卸iphone十八块..iphone 3GS 拆机..有图有真相...附拆机步骤!
- java 线程安全性_i++是线程安全的吗?如何解决线程安全性?
- 一年级abb式词语并造句_ABB式词语如何活学活用,家长都收藏了!
- 波普尔心智格列高利心智_心智与人工智能理论
- shellshock漏洞回顾
- hermite插值法 matlab,分段三次Hermite插值Matlab实现
- VisualSVN 5.1.7破译License Key
- 2015年11月小结
- C/C++ 点和箭头操作符的区别
- 大学MOOC现代礼仪试题用哪个搜题软件好?里面的题库难吗?
- RHEL5 Oracle 11G R2 RAC 静默安装 (三) rdbms安装 dbca 建库
- Libra 2.0白皮书中文版全文发布
- 青书堂电子商务概论的学习总结
热门文章
- android日历长按拖拽,CalendarView
- 718. 最长重复子数组(JavaScript)
- python玩王者荣耀皮肤碎片怎么获得_大神教你用Python爬取王者荣耀英雄皮肤,不充钱也能入手!...
- java 难度_java中难度大一点的面试题
- python定时运行py文件_Python 定时运行脚本
- pythonqt5plaintextedit某一行的内容_如何能够做到持续输出内容?
- 删除进程id_Mysql新增删除数据失败,提示锁表
- linux lamp框架,LAMP架构协同应用的实例——phpMyAdmin
- linux c 大全,linux c 程序设计大全(吴岳) 求助
- php正在尝试获取中非对象的属性_PHP7-2: 面向对象开发