Envoy为什么能战胜Ngnix——线程模型分析篇导读:随着ServiceMesh在最近一年的流行,Envoy作为其中很关键的组件,也开始被广大技术人员熟悉。作者是Envoy的开发者之一,本文详细说明了Envoy的线程模型,对于理解Envoy如何工作非常有帮助。内容较为深入,建议细细品读。关于Envoy的基础技术文档目前相当少。为了改善这一点,我正在计划做一系列关于Envoy各个子系统的文章。这是
分类:
编程语言 时间:
2020-11-06 01:22:48
阅读次数:
21
经典开源代码分析——Leveldb高效存储实现导读:LevelDB是Google开源的持久化KV数据库,在其高性能的背后,将数据拆分成多层进行存储。本文作者深入分析了LevelDB存储模块的设计和源码实现,快速了解LevelDB高性能背后的原理。作者codedumpcodedump.info博主,多年从事互联网服务器后台开发工作。可访问作者博客阅读codedump更多文章。本文基于leveldb1
分类:
数据库 时间:
2020-11-06 01:07:54
阅读次数:
23
Go存储怎么写?深度解析etcd存储设计导读:etcd是用于共享配置和服务发现的分布式,一致性的KV存储系统,在CoreOS和Kubernetes等开源项目中广泛使用。本文作者深入分析了etcd存储模块的设计和实现,对于深入学习Go存储有很大参考作用。作者codedumpcodedump.info博主,多年从事互联网服务器后台开发工作。可访问作者博客阅读codedump更多文章。在前面已经分析了R
分类:
其他好文 时间:
2020-11-06 01:02:57
阅读次数:
11
深入浅出Redis持久化机制导读:Redis是最常用的高性能Nosql内存数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了持久化方案,将内存中的数据保存到磁盘中,避免数据的丢失。本文作者通过深入解读Redis源代码,详细介绍了这一问题。作者简介:钱文品(老钱),互联网分布式高并发技术十年老兵,目前任掌阅科技服务端技术专家。熟练使用Java、Python、Gola
分类:
其他好文 时间:
2020-11-06 01:01:27
阅读次数:
15
随着互联网的深入发展,很多企业逐步升级了自己的信息系统,但是在对现有IT架构进行升级改造的过程中,通常面临着诸多的压力与挑战。随着先进技术的不断引入,将企业的信息化发展置于新旧迭代的循环之下,为了更加有效地应对这些挑战,企业需要考虑新技术能否为业务创造更多的机会。值得注意的是,企业原本依托的开发架构在很多方面已经不能满足业务发展的需求,并逐渐被当今所流行的敏捷理解和低代码开发所取代,并呈现出更多拓
分类:
其他好文 时间:
2020-11-06 00:54:50
阅读次数:
11
聊聊JavaString.intern背后你不知道的知识导读:String.intern是一个JDK中的常用方法,通常用于缓存字符串,优化内存使用,然而频繁使用该方法也会导致别的问题,本文从该方法的实现入手,深入分析了可能出现的问题和解决方案。Java的String类有个有意思的public方法:publicStringintern()返回标准表示的字符串对象。String类维护私有字符串池。调用
分类:
编程语言 时间:
2020-11-04 19:05:19
阅读次数:
23
10行代码理解Java锁消除导语:锁消除是Java虚拟机在JIT编译期间,通过对运行上下文的扫描,去除不可能存在共享资源竞争的锁,通过锁消除,可以节省毫无意义的请求锁时间。本文作者举例说明了锁消除,并分析了锁消除的条件,本文适合对于深入了解JVM有兴趣的开发者。问题:我听说JVM会对锁进行优化,所以如果我写了synchronized,JVM会帮我做优化!对吗理论:在当前Java内存模型中,未观察到
分类:
编程语言 时间:
2020-11-04 18:40:32
阅读次数:
18
正式支持多线程!Redis6.0与老版性能对比评测导读:Redis6.0将在今年年底发布,其中引入的最重大的改变就是多线程IO。本文作者深入阅读并解析了关键代码,并且做了基准测试,揭示多线程IO特性对Redis性能的提升,十分值得一读。林添毅,美图技术经理,主要负责NoSQL/消息队列/中间件等基础服务相关研发。在加入美图之前,曾就职于新浪微博架构平台从事基础服务的研发。前天晚上不经意间看到Red
分类:
编程语言 时间:
2020-11-04 18:18:33
阅读次数:
20
为什么不应该使用数据库外键(重温旧文)导读:最近一篇是否应该使用数据库外键的旧文在国外技术网站HackerNews上引发了热议。文章的作者是一名GitHub工程师提出,观点是不应该使用数据库外键。反方的主要观点是互联网开发的经验未必适合企业开发……你的观点如何?欢迎留言。GitHub工程师的原文如下。在GitHub,我们从未在任何地方使用外键。就个人而言,我花了好几年的时间才深入理解外键FK(Fo
分类:
数据库 时间:
2020-11-04 18:14:40
阅读次数:
27
一个Netflix开发的微服务编排引擎,支持可视化工作流定义导读:相对于传统架构,微服务架构下更需要通过各微服务之间的协作来实现一个完整的业务流程,可以说服务编排是微服务架构下的必备功能。NetflixConductor作为服务编排的佼佼者,从推出就引起很大关注。本文深入浅出的介绍了起基本功能和设计。Netflix内容平台工程团队支撑了许多业务,这些业务流程由微服务任务异步驱动的。其中一些任务是持
分类:
Web程序 时间:
2020-11-04 18:07:36
阅读次数:
29