Bruce

Kafka 生产者守护进程
授权协议 Apache
开发语言 C/C++
所属分类 服务器软件、 JMS/消息中间件
软件类型 开源软件
地区 不详
投 递 者 尹弘壮
操作系统 Linux
开源组织
适用人群 未知
 软件概览

Bruce 是 Apache Kafka 的生产者守护进程,它简化了客户端发送消息到 Kafka ,无需关注后端的 Kafka 集群。Bruce 主要处理:

  • Routing messages to the proper brokers, and spreading the load evenly across multiple partitions for a given topic

  • Waiting for acknowledgements, and resending messages as necessary due to communication failures or Kafka-reported errors

  • Buffering messages to handle transient load spikes and Kafka-related problems

  • Tracking message discards when serious problems occur; Providing web-based discard reporting and status monitoring interfaces

  • Batching and compressing messages in a configurable manner for improved performance

Bruce runs on each individual host that communicates with Kafka, receiving messages from local clients over a UNIX domain datagram socket. Clients write messages to Bruce's socket in a simple binary format. Once a client has written a message, no further interaction with Bruce is required. From that point onward, Bruce takes full responsibility for reliable message delivery. Bruce serves as a single intake point for a Kafka cluster, receiving messages from diverse clients regardless of what programming language a client is written in. Client code is currently available in C, C++, Java, Python, and PHP. Code contributions for clients in other programming languages are much appreciated. Technical details on how to send messages to Bruce are provided here. Bruce runs on Linux, and has been tested on CentOS versions 7 and 6.5, and Ubuntu versions 14.04.1 LTS and 13.10. Bruce requires at least version 0.8 of Kafka.

  • Bruce-Force算法与KMP算法匹配【C语言】 题目: __令主串为aaabbbababaabb,子串为abaa,试分别用Bruce-Force算法和KMP算法给出其匹配过程。 __ 时间复杂度不唯一 空间复杂度不唯一 代码: /*3-4*/ #include <stdio.h> #include <stdlib.h> #define size 100 typedef struct {

  • 李小龙在华盛顿州立大学选择了当时乃至今天最冷门的哲学专业,他所创立的截拳道可以算得上一门健全完整的哲学。但是由于他的英年早逝,没来得及进行系统的归纳整理,我们只能从他的那些零散的言语和实际行为中去会认识和体会。 哲学 ----人不了解自己时是最糟糕的。 ----所有形式的知识最终意味着自我的认知。 ----自觉与自知是截拳道之根本,它的功能效用不惟在个人武术造诣的成就上,更可使其生存做为一个真正的

  •  我将主要针对Bruce Eckel的Blog《 Python 3K还是Python 2.9?》中的每一部分进行回答。 并发处理:看来现在我们很高兴在 这里所找到的。我很期待着基准测试可以显示PP(译注:Parallel Python)或类似(或者不类似!)的解决方案确实可以提高性能。另一方面,我想看到的探索是:将这样的一个解决方案集成到一个存在的web框架中(也许是作为WSGI中间件)这样web

  • Bruce Eckel:编程生涯 作者 Bruce Eckel 是编程界的大牛,著有大名鼎鼎的《Thinking in C++》和《Thinking in Java》。 本文是他对程序员(尤其是新手)的忠告。 大家总是问一个错误的问题:“我应该学习C++还是Java?”在本文中,我将告诉大伙儿:对于选择编程生涯真正需要关注的是哪些问题。 请注意,这篇文章的目标读者并不是那些已经做出自己选择的人。(

  •  Bruce Eckel是著名的计算机科学作家,其Thinking In系列是深受读者欢迎的经典著作.从1986年至今,Bruce Eckel已经发表了超过150篇计算机技术文章(其中有许多C++语言方面的论文) ,出版了6本书(其中4本是关于C++的),并且在全世界做了数百次演讲。Bruce的作品包括《Thinking in Java》、《Thinking in C++》、《C++ Inside

 相关资料
  • 本文向大家介绍python实现守护进程、守护线程、守护非守护并行,包括了python实现守护进程、守护线程、守护非守护并行的使用技巧和注意事项,需要的朋友参考一下 守护进程 1、守护子进程 主进程创建守护进程 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常:AssertionError: daemonic processes are not allow

  • 守护(Daemon)进程 我们可以认为守护进程就是后台服务进程,因为它会有一个很长的生命周期提供服务,关闭终端不会影响服务,也就是说可以忽略某些信号。 实现守护进程 首先要保证进程在后台运行,可以在启动程序后面加&,当然更原始的方法是进程自己fork然后结束父进程。 if (pid=fork()) { exit(0); // Parent process } 然后是与终端、进程组、会话(Ses

  • Daemonset可以确保全部(或者某些)节点上运行一个Pod的副本。 Daemonset可以确保全部(或者某些)节点上运行一个Pod的副本。当有节点加入集群时,也会为他们新增一个Pod。当有节点从集群移除时,这些Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod。 Daemonset典型用法如下: 在每个节点上运行集群存守护进程 在每个节点上运行日志收集守护进程 在每个节点上运行

  • 建议使用 systemd 管理我们的服务进程。 可以参考swoole官方文档 使用方法 请确保cabal.php配置文件中的swoole.daemonize配置为关闭状态(0或false)! 'swoole' => [ // ... 'daemonize' => 0, // ... ], 在 /etc/systemd/system/目录中,创建一个 cabal.

  • 命令模式 守护进程方式启动:bin/imi server/start -d 重定向标准输入输出:bin/imi server/start -d 文件名.log 此方法只可让服务在后台运行,退出 ssh 后不被终止。 无法在服务崩溃后重新拉起,建议使用 systemd Systemd Systemd 一般都已经集成在了现代 Linux 发行版中,使用它可以实现开机自启动和守护进程等功能。 但 Sys

  • 问题内容: 我正在编写Linux守护程序。我发现了两种方法。 通过调用和设置守护进程。 使用运行程序。 哪个是正确的方法? 问题答案: 来自http://www.steve.org.uk/Reference/Unix/faq_2.html#SEC16 以下是成为守护程序的步骤: 1. fork(),以便父级可以退出,这会将控制权返回给命令行或shell来调用您的程序。需要执行此步骤,以确保新流程不

  • 接下来我们将通过 “Git” 协议建立一个基于守护进程的仓库。 对于快速且无需授权的 Git 数据访问,这是一个理想之选。 请注意,因为其不包含授权服务,任何通过该协议管理的内容将在其网络上公开。 如果运行在防火墙之外的服务器上,它应该只对那些公开的只读项目服务。 如果运行在防火墙之内的服务器上,它可用于支撑大量参与人员或自动系统(用于持续集成或编译的主机)只读访问的项目,这样可以省去逐一配置 S

  • 简介 目前我们所写的服务器仅仅运行在终端窗口,结果通过 print 语句输出到屏幕.这对于开发来说已经足够,但对于产品级的部署还远远不够. 健壮的产品级服务器应该: 运行一个 daemon 进程,这个进程不与任何终端或用户会话相关.因为没有人愿意当某用户登出时服务自动关闭. 将调试和错误信息发送到一系列滚转日志文件, 或者 syslog 服务. 放弃过高的权限,比如,在运行前切换到较低权限. 保存