⁶⁶   ⁶⁶⁶⁶⁶⁶   ⁶⁶66⁶⁶⁶⁶    ₆₆₆₆ 可以啊.这波  ₆₆₆₆⁶⁶⁶⁶⁶        ⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶66⁶⁶⁶⁶     卧槽⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶⁶    666₆₆₆₆₆₆₆ 666        666 ⁶⁶⁶⁶⁶⁶₆₆₆₆₆₆ ₆⁶⁶⁶⁶⁶⁶⁶⁶⁶ ⁶⁶⁶⁶⁶⁶ ⁶⁶⁶⁶⁶⁶⁶⁶

panjf2000

155
获赞数
2512
粉丝数
海外
石家庄新东方烹饪学校 | 消灭辣椒专业
gnet | coder
2015-11-09 加入
浏览 3.6k

程序猿。

擅长技能
荣誉勋章
暂未获得荣誉勋章
个人动态
  • 发布了文章4 月 19 日
    虚拟内存精粹
    虚拟内存是当今计算机系统中最重要的抽象概念之一,它的提出是为了更加有效地管理内存并且降低内存出错的概率。虚拟内存影响着计算机的方方面面,包括硬件设计、文件系统、共享对象和进程/线程调度等等,每一个致力于编写高效且出错概率低的程序的程序员都应该深入学...
  • 发布了文章2 月 18 日
    Redis 多线程网络模型全面揭秘
    在目前的技术选型中,Redis 俨然已经成为了系统高性能缓存方案的事实标准,因此现在 Redis 也成为了后端开发的基本技能树之一,Redis 的底层原理也顺理成章地成为了必须学习的知识。
  • 发布了文章1 月 3 日
    分布式事务/系统之底层原理揭秘
    分布式事务是分布式系统必不可少的组成部分,基本上只要实现一个分布式系统就逃不开对分布式事务的支持。本文从分布式事务这个概念切入,尝试对分布式事务最核心的底层原理逐一进行剖析,内容包括但不限于 BASE 原则、两阶段原子提交协议、三阶段原子提交协议、Paxos...
  • 发布了文章2020-12-28
    Linux I/O 原理和 Zero-copy 技术全面揭秘
    如今的网络应用早已从 CPU 密集型转向了 I/O 密集型,网络服务器大多是基于 C-S 模型,也即 客户端 - 服务端 模型,客户端需要和服务端进行大量的网络通信,这也决定了现代网络应用的性能瓶颈:I/O。
  • 发布了文章2020-12-28
    Go netpoller 原生网络模型之源码全面揭秘
    Go 基于 I/O multiplexing 和 goroutine scheduler 构建了一个简洁而高性能的原生网络模型(基于 Go 的 I/O 多路复用 netpoller ),提供了 goroutine-per-connection 这样简单的网络编程模式。在这种模式下,开发者使用的是同步的模式去编写异步的逻辑,极大地降低了...
  • 发布了文章2020-06-09
    【译】为什么 Kafka 这么快?
    软件体系结构在过去的几年间发生了巨大的变化。单体应用程序或甚至几个粗粒度的服务共享一个公共数据存储的理念,在全世界的软件从业者的头脑中早已不复存在了。自主微服务、事件驱动架构和职责分离 (CQRS) 模式是构建以业务为中心的现代应用程序的主要工具。除此之...
  • 发布了文章2020-05-29
    【译】CPU 高速缓存原理和应用
    博客原文: 【译】CPU 高速缓存原理和应用 曾三次获得 F1 世界冠军的杰基•斯图尔特 (Jackie Stewart) 表示,了解汽车的工作原理让他成为了一名更好的驾驶员。 "你并不需要先成为一个工程师才能去做一个赛车手,但是你得有一种机械同感 (Mechanical Sympathy)" Martin...
  • 发布了文章2020-04-07
    【译】Go 语言项目源码贡献官方指导文档
    以前给 Go 语言项目源码提交过一些 commits,期间阅读他们的官方指导文档的时候觉得这篇指导文档可以作为绝佳的关于大型软件项目的规范管理的参考,因为最近又提交了几个 commits,就又把这篇文档再看了一遍,有感于 Go 团队在项目管理和工程实践上的一些宝贵经验,...
  • 发布了文章2020-04-07
    最快的 Go 网络框架 gnet 来啦!
    gnet 是一个基于事件驱动的高性能且轻量级的网络框架。它直接使用 epoll 和 kqueue 系统调用而非标准 Golang 网络包:net 来构建网络应用,它的工作原理类似两个开源的网络库:netty 和 libuv。
  • 发布了文章2019-10-15
    【发布】高性能 Go 网络库 gnet 发布 v1 版
    gnet 是一个基于事件驱动的高性能和轻量级网络框架。它直接使用 epoll 和 kqueue 系统调用而非标准 Golang 网络包:net 来构建网络应用,它的工作原理类似两个开源的网络库:netty 和 libuv。
  • 发布了文章2019-09-16
    gnet: 轻量级且高性能的 Golang 网络库
    博客 [链接] 项目主页 [链接] 欢迎大家围观~~,目前还在持续更新,感兴趣的话可以 star 一下暗中观察哦。 简介 gnet 是一个基于 Event-Loop 事件驱动的高性能和轻量级网络库。这个库直接使用 epoll 和 kqueue 系统调用而非标准 Golang 网络包:net 来构建网络应用,...
  • 赞了文章2019-02-26
    Golang服务器的网络层实现
    由于最近有接触到一些长连接的服务器实现,对网络模型有所学习。对基于C/C++的网络模型实现和基于GoLang的实现对比下来,发现Golang的网络模型编程难度大大降低,这得益于Golang的goroutine,可以在编程的时候肆无忌惮的创建并发"线程",当服务器能为每一个客户端都...
  • 赞了文章2019-02-22
    golang协程池设计
    go自从出生就身带“高并发”的标签,其并发编程就是由groutine实现的,因其消耗资源低,性能高效,开发成本低的特性而被广泛应用到各种场景,例如服务端开发中使用的HTTP服务,在golang net/http包中,每一个被监听到的tcp链接都是由一个groutine去完成处理其上下文的,...
  • 发布了文章2018-11-19
    Lucene构建个人搜索引擎解析
    Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件...
  • 发布了文章2018-09-09
    Spark的分区机制的应用及PageRank算法的实现
    佩奇排名(PageRank),又称网页排名、谷歌左侧排名,是一种由搜索引擎根据网页之间相互的超链接计算的技术,而作为网页排名的要素之一,以Google公司创办人拉里·佩奇(Larry Page)之姓来命名。Google用它来体现网页的相关性和重要性,在搜索引擎优化操作中是经常被...
  • 发布了文章2018-09-01
    MQ对比之RabbitMQ & Redis
    RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现的产品,RabbitMQ是一个消息代理,从“生产者”接收消息并传递消息至“消费者”,期间可根据规则路由、缓存、持久化消息。“生产者”也即message发送者以下简称P,相对应的“消费者”乃message接收者...
  • 发布了文章2018-07-12
    tornado配合celery及rabbitmq实现web request异步非阻塞
    Tornado是一个用python编写的一个强大的、可扩展的异步HTTP服务器,同时也是一个web开发框架。tornado是一个非阻塞式web服务器,其速度相当快。得利于其非阻塞的方式和对 epoll的运用,tornado每秒可以处理数以千计的连接,这意味着对于实时web服务来说,tornado是一...
  • 发布了文章2018-07-08
    深入golang之---goroutine并发控制与通信
    开发go程序的时候,时常需要使用goroutine并发处理任务,有时候这些goroutine是相互独立的,而有的时候,多个goroutine之间常常是需要同步与通信的。另一种情况,主goroutine需要控制它所属的子goroutine,总结起来,实现多个goroutine间的同步与通信大致有:
  • 发布了文章2018-07-03
    Goroutine并发调度模型深度解析之手撸一个协程池
    并发(并行),一直以来都是一个编程语言里的核心主题之一,也是被开发者关注最多的话题;Go语言作为一个出道以来就自带 『高并发』光环的富二代编程语言,它的并发(并行)编程肯定是值得开发者去探究的,而Go语言中的并发(并行)编程是经由goroutine实现的,gorou...
  • 关注了用户2018-07-03