随笔分类 - 基础架构
有关基础架构方面的内容
    
摘要:1、为什么需要 3 次握手 目的:为了防止 已失效的连接请求报文段 突然又传送到了服务端,因而产生错误。主要防止资源的浪费。 额外补充:TCP作为一种可靠传输控制协议,其核心思想:既要保证数据可靠传输,又要提高传输的效率,而用三次恰恰可以满足以上两方面的需求!两次无法保证数据可靠,四次及以上无法保证
        阅读全文
            
摘要:开篇 例如我们常见的 kafka、nginx 以及 tomcat 等底层都用的这类技术,这里暂且用 kafka 来列举案例。 当我们从 kafka 读取数据的时候,我们会调用 read 方法读取指定的内容,然后调用 write 方法,将字节流写到 socket 中,那么,我们调用这两个方法,在 OS
        阅读全文
            
摘要:网上充斥着各类类似于这样的文章:rpc 比 http 快了多少倍?既然有了 http,为什么还要用 rpc 调用等等。遇到这类文章,说明对 http 和 rpc 是由理解误区的。 这里再次重复强调一遍,通信协议不是 rpc 最重要的部分,不要被这类回答带偏。如果要了解 rpc 请更多的去了解服务治理
        阅读全文
            
摘要:序列化 序列化是将一个对象变成一个二进制流就是序列化, 反序列化是将二进制流转换成对象。 为什么要序列化? 1. 减小内存空间和网络传输的带宽 2. 分布式的可扩展性 3. 通用性,接口可共用。 dubbo RPC是dubbo体系中最核心的一种高性能、高吞吐量的远程调用方式,我喜欢称之为多路复用的T
        阅读全文
            
摘要:从浏览器到页面展示中间过程其实是一个很复杂的逻辑过程,大概分为以下 8 大步骤,这里尽量使用简单易理解的方式将所有涉及到的环节梳理一下 1、url 输入 我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等地方,找到已经输入的字符串可能对应的 ur
        阅读全文
            
摘要:这几天在优化服务器的响应时间,在根据 nginx 的 accesslog 中 $request_time 进行程序优化时,发现有个接口,直接返回数据,平均的 $request_time 也比较大。原来 $request_time 包含了用户数据接收时间,而真正程序的响应时间应该用 $upstream
        阅读全文
            
摘要:布隆过滤器 (Bloom Filter)是由Burton Howard Bloom于1970年提出,它是一种space efficient的概率型数据结构,用于判断一个元素是否在集合中。 看看下面几个问题: 字处理软件中,需要检查一个英语单词是否拼写正确 在 FBI,一个嫌疑人的名字是否已经在嫌疑名
        阅读全文
            
摘要:TOML的由来 TOML的由来 TOML的由来 配置文件的使用由来已久,从.ini、XML、JSON、YAML再到TOML,语言的表达能力越来越强,同时书写便捷性也在不断提升。 TOML是前GitHub CEO, Tom Preston-Werner,于2013年创建的语言,其目标是成为一个小规模的
        阅读全文
            
摘要:Micro 是什么 Micro 是微服务生态系统中专注于提供产品、服务和解决方案的一款软件,使得在现代软件企业中起到创新驱动。它计划是可以将任何微服务相关的资源与即将使用此款软件的公司结合起来,利用此技术来处理自己的业务。从早期原型的搭建直到大规模生产环境部署应用。 Micro 可以理解为它就是一个
        阅读全文
            
摘要:Consule 是什么 Consul包含多个组件,但是作为一个整体,为你的基础设施提供服务发现和服务配置的工具.他提供以下关键特性: 服务发现 Consul 的客户端可用提供一个服务,比如 api 或者mysql ,另外一些客户端可用使用 Consul 去发现一个指定服务的提供者.通过 DNS 或者
        阅读全文
            
 
                    
                
 浙公网安备 33010602011771号
浙公网安备 33010602011771号