架构
小程故事多_80
这个作者很懒,什么都没留下…
展开
-
论代码级性能优化变迁之路(二)
本文是“论代码级性能优化变迁之路一”(http://www.jianshu.com/p/c4a748002e66) 的第二篇。在上一篇我们主要介绍了所遇到问题的五点,那么今天接下来讨论剩下的问题,我们先再回顾一下之前讨论的问题:1、单台40TPS,加到4台服务器能到60TPS,扩展性几乎没有。 2、在实际生产环境中,经常出现数据库死锁导致整个服务中断不可用。 3、数据库事务乱用,导致事务占用时间原创 2016-07-28 15:20:33 · 4480 阅读 · 5 评论 -
论代码级性能优化变迁之路(一)
一、前言大家好,很久没有和大家一起讨论技术了,那么今天我将和大家一起探讨我负责的某项目的性能变迁之路。我们以前看到的很多架构变迁或者演进方面的文章大多都是针对架构方面的介绍,很少有针对代码级别的性能优化介绍,这就好比盖楼一样,楼房的基础架子搭的很好,但是盖房的工人不够专业,有很多需要注意的地方忽略了,那么在往里面填砖加瓦的时候出了问题,后果就是房子经常漏雨,墙上有裂缝等各种问题出现,虽然不至于楼房原创 2016-07-28 17:53:12 · 4789 阅读 · 4 评论 -
深入解析淘宝Diamond之客户端架构
说明:本文不介绍如何使用Diamond,只介绍Diamond的实现原理 一、什么是Diamonddiamond是淘宝内部使用的一个管理持久配置的系统,它的特点是简单、可靠、易用,目前淘宝内部绝大多数系统的配置,由diamond来进行统一管理。 diamond为应用系统提供了获取配置的服务,应用不仅可以在启动时从diamond获取相关的配置,而且可以在运行中对配置数据的变化进行感知并获取变化后原创 2016-08-01 19:21:11 · 16651 阅读 · 5 评论 -
从0到1起步-跟我进入堆外内存的奇妙世界
堆外内存一直是Java业务开发人员难以企及的隐藏领域,究竟他是干什么的,以及如何更好的使用呢?那就请跟着我进入这个世界吧。 一、什么是堆外内存1、堆内内存(on-heap memory)回顾 堆外内存和堆内内存是相对的二个概念,其中堆内内存是我们平常工作中接触比较多的,我们在jvm参数中只要使用-Xms,-Xmx等参数就可以设置堆的大小和最大值,理解jvm的堆还需要知道下面这个公式:堆内内存原创 2016-10-12 18:28:25 · 8545 阅读 · 5 评论 -
淘宝Tedis组件究竟是个啥(一)
淘宝的Tedis组件究竟是个啥呢?可能有一些朋友没有听过这个名字,有一些朋友会经常使用,那么今天我就来和大家深入分析一下,它的使用和原理。 一、Tedis简介Tedis是另一个redis的java客户端,Tedis的目标是打造一个可在生产环境直接使用的高可用Redis解决方案。特性如下: * 高可用:Tedis使用多写随机读做HA确保redis的高可用 * 高性能:使用特殊的线程模型,使r原创 2016-10-07 17:46:34 · 7970 阅读 · 1 评论 -
再谈缓存穿透、缓存并发、热点缓存之最佳招式
一、前言在之前的一篇缓存穿透、缓存并发、缓存失效之思路变迁文章中介绍了关于缓存穿透、并发的一些常用思路,但是个人感觉文章中没有明确一些思路的使用场景,本文继续将继续深化与大家共同探讨,同时也非常感谢这段时间给我提宝贵建议的朋友们。说明:本文中提到的缓存可以理解为Redis。 二、缓存穿透与并发方案相信不少朋友之前看过很多类似的文章,但是归根结底就是二个问题:如何解决穿透如何解决并发当并原创 2017-04-10 19:11:19 · 7414 阅读 · 1 评论