天德建设集团网站如何做旅游小视频网站

news/2025/10/8 7:06:40/文章来源:
天德建设集团网站,如何做旅游小视频网站,免费在线图片编辑器,昆山做网站的那家好kafka中文文档 本文环境#xff1a;ubuntu:18.04 kafka安装、配置与基本使用(单节点) 安装kafka 下载 0.10.0.1版本并解压缩 tar -xzf kafka_2.11-0.10.0.1.tgzcd kafka_2.11-0.10.0.1.tgzkafka简单配置 vi config/server.properties主要注意三个地方ubuntu:18.04 kafka安装、配置与基本使用(单节点) 安装kafka 下载 0.10.0.1版本并解压缩 tar -xzf kafka_2.11-0.10.0.1.tgzcd kafka_2.11-0.10.0.1.tgzkafka简单配置 vi config/server.properties主要注意三个地方broker.id 标识本机log.dirs 是kafka接收消息存放路径zookeeper.connect 指定连接的zookeeper集群地址启动服务器 启动ZooKeeper服务器 如果没有ZooKeeper服务器,可以通过与kafka打包在一起的便捷脚本来创建一个单节点ZooKeeper实例 bin/zookeeper-server-start.sh config/zookeeper.properties#后台启动: bin/zookeeper-server-start.sh -daemon config/zookeeper.properties [2021-02-22 15:01:37,495] INFO Reading configuration from: config/zookeeper.properties (org.apache.zookeeper.server.quorum.QuorumPeerConfig) ...启动Kafka服务器 bin/kafka-server-start.sh config/server.properties#后台启动: bin/kafka-server-start.sh -daemon config/server.properties [2021-02-22 15:01:47,028] INFO Verifying properties (kafka.utils.VerifiableProperties) [2021-02-22 15:01:47,051] INFO Property socket.send.buffer.bytes is overridden to 1048576 (kafka.utils.VerifiableProperties) ...创建一个 topic 创建一个名为“test”的topic它有一个分区和一个副本 bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test查看所有 topic列表 bin/kafka-topics.sh --list --zookeeper localhost:2181 test删除一个 topic 标记: bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic test发送一些消息 Kafka自带一个命令行客户端它从文件或标准输入中获取输入并将其作为message消息发送到Kafka集群。默认情况下每行将作为单独的message发送。 运行 producer然后在控制台输入一些消息以发送到服务器。 bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test This is a message This is another message启动一个 consumer Kafka 还有一个命令行consumer消费者将消息转储到标准输出。 bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning This is a message This is another message查看消费组 查看所有消费组 bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list --new-consumer查看单个消费组的消费详情 bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group test(消费组name) --new-consumer发布-订阅模式 Topic Kafka中的Topics总是多订阅者模式一个topic可以拥有一个或者多个消费者来订阅它的数据 对于每一个topic Kafka集群都会维持一个分区日志每个分区都是有序且顺序不可变的记录集并且不断地追加到结构化的commitlog文件 分区中的每一个记录都会分配一个id号来表示顺序我们称之为 offsetoffset用来唯一的标识分区中每一条记录 Kafka 集群保留所有发布的记录—无论他们是否已被消费—并通过一个可配置的参数——保留期限来控制. 每一个消费者中唯一保存的元数据是offset偏移量即消费在log中的位置. 偏移量由消费者所控制:通常读取记录后消费者会以线性的方式增加偏移量但是实际上由于这个位置由消费者控制所以消费者可以采用任何顺序来消费记录. 生产者 生产者可以将数据发布到所选择的topic主题中 消费者 消费者使用一个 消费组 名称来进行标识发布到topic中的每条记录被分配给 订阅消费组 中的一个消费者实例. 如果所有的消费者实例在同一消费组中消息记录会负载平衡到每一个消费者实例 如果所有的消费者实例在不同的消费组中每条消息记录会广播到所有的消费者进程 消费者消费是以消费组为单位消费组之间数据互不影响组内数据均分 Go实现(Go 1.15) kafka_p.go package kafka_pimport (github.com/Shopify/saramalogtime )// 定义Kafka生产者对象 type KafkaProducer struct {Config *sarama.ConfigAddress []stringTopic string }// 定义生产者接口 type Producer interface {MsgContent() []byte }//实例化sarama: Config func (kP *KafkaProducer) ProducerConfigInit() {config : sarama.NewConfig()//是否开启消息发送成功后通知 successes channelconfig.Producer.Return.Successes true//重试次数config.Producer.Retry.Max 3//失败后再次尝试的间隔时间config.Producer.Retry.Backoff 1 * time.Second//指定kafka版本,不指定,使用最小版本,高版本的新功能可能无法正常使用.config.Version sarama.V0_10_0_1kP.Config config }//同步消息模式 func (kP *KafkaProducer) SyncProducer(p Producer) error {//初始化客户端producer, err : sarama.NewSyncProducer(kP.Address, kP.Config)if err ! nil {log.Printf(sarama.NewSyncProducer err, message%s \n, err)return err}defer producer.Close()//发送消息msg : sarama.ProducerMessage{Topic: kP.Topic,Value: sarama.ByteEncoder(p.MsgContent()),}part, offset, err : producer.SendMessage(msg)if err ! nil {log.Printf(send message(%s) err%s \n, p.MsgContent(), err)return err} else {log.Printf(发送成功partition%d, offset%d \n, part, offset)return nil} }// 启动Kafka生产者 func (kP *KafkaProducer) StartP(p Producer) error {kP.ProducerConfigInit()return kP.SyncProducer(p) } kafka_c.go package kafka_cimport (github.com/Shopify/saramacluster github.com/bsm/sarama-clusterlogtime )// 定义Kafka消费者对象 type KafkaConsumer struct {Config *cluster.ConfigAddress []stringTopics []stringGroupId string }// 定义消费者接口 type Consumer interface {Consumer([]byte) error }//实例化sarama: Config func (kC *KafkaConsumer) ConsumerConfigInit() {config : cluster.NewConfig()//接收失败通知config.Consumer.Return.Errors true//设置使用的kafka版本,如果低于V0_10_0_0版本,消息中的timestrap没有作用.需要消费和生产同时配置config.Version sarama.V0_10_0_1//初始从最新的offset开始config.Consumer.Offsets.Initial sarama.OffsetNewestkC.Config config }//cluster消费组 消费 func (kC *KafkaConsumer) ClusterConsumer(c Consumer) error {//初始化客户端consumer, err : cluster.NewConsumer(kC.Address, kC.GroupId, kC.Topics, kC.Config)if err ! nil {log.Printf(Failed open consumer: %s \n, err)return err}defer consumer.Close()go func() {for err : range consumer.Errors() {log.Printf(consumer err: %s \n, err)}}()go func() {for note : range consumer.Notifications() {log.Println(Rebalanced: , note)}}()//接收消息for msg : range consumer.Messages() {if err c.Consumer(msg.Value); err ! nil {return nil}else {// MarkOffset 并不是实时写入kafka有可能在程序crash时丢掉未提交的offsetconsumer.MarkOffset(msg, )time.Sleep(1 * time.Second)}}return nil }// 启动Kafka消费者 func (kC *KafkaConsumer) StartC(c Consumer) error {kC.ConsumerConfigInit()return kC.ClusterConsumer(c) }配置kafka_config.go package kafka_configimport fmt// Address var Address []string{IP:9092}var Topic test // 生产者topic var Topics []string{test} // 消费者topics var GroupId test-group-1 // 消费组id//发送者 type TestP struct {MsgData []byte }// 实现发送者 func (t *TestP) MsgContent() []byte {fmt.Println(string(t.MsgData))return t.MsgData }//接收者 type TestC struct {MsgData string }// 实现接收者 func (t *TestC) Consumer(dataByte []byte) error {fmt.Println(string(dataByte))return nil }type KafkaMessage struct {FileDir string json:dirFileName string json:fileOperateType string json:operationOldData string json:old_dataNewData string json:new_data }type KafkaMessageP struct {UserName string json:user_nameMsgId string json:msg_idMessages []KafkaMessage json:msg } 消费者main.go package mainimport (golong/kafka_cgolong/kafka_config )func main() {//消费者c : kafka_config.TestC{}kC : kafka_c.KafkaConsumer{Address: kafka_config.Address,Topics: kafka_config.Topics,GroupId: kafka_config.GroupId,}_ kC.StartC(c) } 生产者main.go package mainimport (encoding/jsonfmtgolong/kafka_configgolong/kafka_p )func main() {//生产者msgKp : kafka_config.KafkaMessageP{}msgKp.UserName fxmmsgKpBytes, _ : json.Marshal(msgKp)p : kafka_config.TestP{MsgData: msgKpBytes,}kP : kafka_p.KafkaProducer{Address: kafka_config.Address,Topic: kafka_config.Topic,}err : kP.StartP(p)if err ! nil {fmt.Println(添加异常 !!!)} } panic: non-positive interval for NewTicker 问题处理 //处理1 找到这个consumer.go源码位置上面的第二个报错有标注位置github.com/bsm/sarama-cluster.(*Consumer).cmLoop(0xc000212000, 0xc0002ba1e0)D:/work/mygo/pkg/mod/github.com/bsm/sarama-clusterv2.1.15incompatible/consumer.go:452 0x61// 修改452行// ticker : time.NewTicker(c.client.config.Consumer.Offsets.CommitInterval)ticker : time.NewTicker(c.client.config.Consumer.Offsets.AutoCommit.Interval)// 保存重新build即可//处理2把 sarama 版本改成 从 v1.26.1 -- v1.24.1 就可以用啦 github.com/Shopify/sarama v1.24.1gomod 的配置改下版本号就可以github.com/Shopify/sarama v1.24.1github.com/bsm/sarama-cluster v2.1.15incompatible

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/931171.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用新媒体给产业园招商 - 智慧园区

在住宅、商铺、别墅等业态启动新媒体营销的今天,写字楼、产业地产是一个极窄的领域,打开抖音或视频号,在做的人很多,但做得好的人/项目却很少,这与地产新媒体行业的发展有很大的关系,毕竟,多数人连住宅都没搞明…

30年后摘得诺奖,一个叛逆“东亚小孩”的胜利

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087 添加图片注释,不超过 140 字(可选)今年诺贝尔生理学或医学奖的…

一个人开公司做网站外贸公司一年能赚多少

Java注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释的代码本身的一部分。注解对于代码的运行效果没有直接影响。网络上对注解的解释过于严肃、刻板,这并不是我喜欢的风格。尽管这样的解释听起来非常的专业。为了缓解大…

石景山企业网站建设做网站需要用到的符号语言

前言 在当今数据爆炸的时代,处理大规模数据集已经成为数据科学和工程领域的关键挑战。Python作为一种强大而灵活的编程语言,吸引着越来越多的数据专业人士。本文旨在为读者提供一份全面的指南,介绍了Python中几个重要的大数据处理库&#xf…

金沙洲网站建设工作室网站互动设计方式

工具描述 DMLOG用于对达梦SQL日志进行统计分析,便于SQL优化人员进行查看捕获关键信息,不提供SQL优化建议。DMLOG用java语言编写,不受操作系统平台限制,大小不超过10M,在安装好Java环境后,可在各平台运行。 …

做网站要多少的分辨率网页制作代码简单

从政府工作报告探计算机行业发展 政府工作报告作为政府工作的全面总结和未来规划,不仅反映了国家整体的发展态势,也为各行各业提供了发展的指引和参考。随着信息技术的快速发展,计算机行业已经成为推动经济社会发展的重要引擎之一。因此&…

网站设计一般多少钱一个页面html网站模板下载

精准扶贫管理系统目录 目录 基于Springboot的精准扶贫管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员模块的实现 (1)用户信息管理 (2)贫困户信息管理 (3)新闻类型管理 &a…

做枸杞的网站设立

1,run方法是Runnable接口中定义的,start方法是Thread类定义的。 所有实现Runnable的接口的类都需要重写run方法,run方法是线程默认要执行的方法,是绑定操作系统的,也是线程执行的入口。 start方法是Thread类的默认执行…

多商城入住网站建设php网站建设

STM32CubeMX学习笔记-USART_DMA 一、DMA的概念二、数据传输方式普通模式循环模式 三、以串口方式讲解串口DMA方式发送函数:HAL_UART_Transmit_DMA串口DMA方式接收函数:HAL_UART_Receive_DMA获取未传输数据个数函数:__HAL_DMA_GET_COUNTER关闭…

建设网站需要什么证件网络投票怎么做

1 WEB开发-静态资源访问 1.1 基本介绍 (1)只要静态资源放在类路径的以下目录:/static、/public、/resources、/META-INF/resources 可以被直接访问。maven项目的类路径即为main/resources目录--对应SpringBoot源码为WebProperties.java类 …

织梦系统做的商城网站网站一站 手机微信600 900

一、前言 前端社区里,低代码/无代码是被讨论的火热赛道。简单来说低代码就是通过编写少量代码的方式完成应用的开发及上线,而无代码是低代码的子集,不需要编写代码通过配置的方式即可完成整个应用的开发。目前集团内部的低代码平台已经有很多…

高端网站开发多少钱世界互联网峰会视频

今天花了点时间,使用了一下阿里巴巴的会员后台,感叹一句“它的成功是有它的道理的”。在功能模块的使用上,它都提供了帮助,这种帮助不是简单的一个列表或者一篇文章,而是一种层次性的服务。首先会有一个所对应的功能模…

2025年诺贝尔物理学奖揭晓,其中两位得主曾获“墨子量子奖”

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 354695541004908710.7‍‍知识分子The Intellectual 添加图片注释,不超过 140 字(…

网站建设价格组成西安好的皮肤管理做团购网站

在当前跨境电商出海模式不断升级的背景下,全托管模式已经成为各类平台的标准配置。其中,TikTok全托管模式已经上线运行有很长一段时间了,这个模式下,主打一个“仅供货、免运营”,它降低了商家进入和运营TikTok市场的门…

国内十大搜索引擎网站化妆品网络营销策划书

在Java生态中,Spring框架及其衍生技术(如Spring MVC、Spring Boot、Spring Cloud)是开发企业级应用的核心工具。它们在功能、定位和使用场景上各有侧重,但又紧密联系。本文将详细解析它们的区别与联系,帮助你在面试中更…

男男做的视频网站莆田注册公司

一、Cypher数据create (小北:朋友圈{姓名:"小北", 喜欢的书类:"Poetry"}),(小菲:朋友圈{姓名:"小菲", 喜欢的书类:"Science Fiction"}),(小鹏:朋友圈{姓名:"小鹏", 喜欢的书类:"Music"}),(小颖:朋友圈{姓名:"…

诺贝尔奖各种统计数据

微信视频号:sph0RgSyDYV47z6快手号:4874645212抖音号:dy0so323fq2w小红书号:95619019828B站1:UID:3546863642871878B站2:UID: 3546955410049087 成为诺贝尔奖得主,已经约等于成为了超级人生赢家。但我们如果端详…

宁德网站建设制作河南省安阳市建设银行网站

使用的环境条件不当可能会损坏设备。 保护设备,防止灰尘、湿气和热量进入。 使用注意事项: 空气流通不畅 设备安装不正确会阻碍设备内的空气流通,从而导致过热和功能受损。 只能按所示方向将设备安装在相应的壁上。 该设备设计用于安装在…