作者:empty 页数:185 出版社:empty |
Apache Kafka是一个高吞吐量分布式消息系统。Kafka在国内很多公司都有大规模的应用, 但关于它的中文资料并不多, 只找到了12年某版本的设计章节的翻译。为了方便大家学习交流,尽最大努力翻译一下完整的官方的手册。原文版本选择当前最新的Kafka 0.10.0的文档(2016-08) 。前辈们在OS China上翻译的设计章节非常优秀, 如果之前没有阅读过推荐先参考一下,翻译中发现有小伙伴已经下载了,如果你发现后面还是英文不是我掺假是你着急了!阅读地址:Apache Kafka官方文档中文版源地址:Kafka 8.10.0 DocumentationGithub:BeanHr/apache-kafka-documentation-cnGit book:Apache Kafka Documentation CN译者:@D2Feng翻译采用章节中英文对照的形式进行,未翻译的章节保持原文。译文章节组织及内容尽量保持与原文一直,但有时某些句子直译会有些脚,所以可能会进行一些语句上调整。因为本人能力和精力有限, 译文如有不受欢迎提issue, 更期望大家能共同参与进来,参与翻译PullRequest流程小伙伴@numb bbbb在《The Swift Programming Language》对协作流程中进行了详细的介绍,本文档使用书核(Book Stark.CN) 构建小伙伴@lool y在他的ES翻译中总结了一下, 我抄过来并再次感谢他们的分享。1.首先fork的项目apache-kafka-documentation-cn到你自己的Git hub2.把fork过去的项目也就是你的项目clone到你的本地3.运行git remote add dd feng把我的库添加为远端库4,运行git pull da rang naster拉取并合并到本地5.翻译内容或者更正之前的内容。6,commit后push到自己的库(git push origin master)7.置录Git hub在你首页可以看到一个pull request按钮, 点击它, 填写一些说明信息, 然后提1-3是初始化操作,执行一次即可。在提交前请先执行第4步同步库,这样可以及时发现和避免冲突,然后执行5-7既可。如果嫌以上过程繁琐,你只是准备支出一些翻译不当,也可以点击段落后'+'直接评论。Just Do IT, 您的任何建议和尝试都值得尊重!
1.1简介Kafka是一个实现了分布式、分区、提交后复制的日志服务。它通过一套独特的设计提供了消息系统中间件的功能。这是什么意思呢?首先我们回顾几个基础的消息系统术语:·Kafka将消息源放在称为topics的归类组维护·我们将发布消忌到Kafka topic上的处理程序称之为producers·我们将订阅topic并处理消息源发布的信息的程序称之为consumers·Kafka采用集群方式运行, 集群由一台或者多台服务器构成, 每个机器被称之为一个broker(译者注:这些基本名词怎么翻译都觉着怪还是尽量理解下原文)所以高度概括起来, producers(生产者) 通过网络将messages(消息) 发送到Kafka机器, 然后由集群将这些消息提供给consumers(消费者) , 如下图所示:producerproducerproducerCumeClients(客户端) 和Servers(服务器) 通过一个简单的、高效的基于TCP的协议进行交互, 官方为Kafka提供一个Java客户端, 但更多其他语言的客户端可以在这里找到。