Ubuntu下beanstalkd无法绑定局域网IP地址以及消息队列beanstalkd上的error: JOB_TOO_BIG的解决
一、ubuntu下beanstalkd无法绑定局域网IP地址
今天因为业务需要,我把之前安装的beanstalkd所绑定的IP地址由127.0.0.1改成局域网IP地址,但是怪了,显示beanstalkd已经启动,查看端口监控也显示IP地址变了,但是使用telnet连接的却依然是连接不上,报错:Unable to connect to remote host: Connection refused。真是奇怪,难道是防火墙的问题?觉得不应该,但还也加上了这个端口的全部accept规则,但是依然不起作用。看来还是得从beanstalkd自身找问题。
过程是这样的:我安装beanstalkd使用的是apt-get方式,beanstalkd的配置文件路径存在于这个路径文件:/etc/default/beanstalkd,修改之后使用service beanstalkd restart进行重启也没有报什么错误。但是就是不起作用。
root@us78:/# cat /etc/default/beanstalkd
## Defaults for the beanstalkd init script, /etc/init.d/beanstalkd on
## Debian systems.
BEANSTALKD_LISTEN_ADDR=10.78.11.12
BEANSTALKD_LISTEN_PORT=11300
root@us78:/# service beanstalkd restart
root@us78:/# telnet 10.78.11.12 11300
Trying 10.78.11.12...
telnet: Unable to connect to remote host: Connection refused
后来了解到,这个问题是因为只要是从debian软件包安装的beantalkd,则它同时带有systemd .service和.socket。 当beantalkd由.socket启动时,无论您如何配置.service,它都会去绑定127.0.0.1。此时通过service beanstalkd status也能看到它会忽略我们配置的IP地址(如下日志),解决办法也很简单,就是移除这个路径/lib/systemd/system/beanstalkd.socket的.socket文件,然后重启systemctl daemon-reload and systemctl restart beanstalkd,即可解决,过程如下:
#service beanstalkd status忽略我们配置的IP地址
asdf beanstalkd[4323]: /usr/bin/beanstalkd: inherited listen fd; ignoring option: -l 10.78.11.12
asdf beanstalkd[4323]: /usr/bin/beanstalkd: inherited listen fd; ignoring option: -p 11300
#查看文件内容:/lib/systemd/system/beanstalkd.socket
root@us78:/etc/default# cat /lib/systemd/system/beanstalkd.socket
[Unit]
Description=Beanstalkd socket
Documentation=man:beanstalkd(1)
Before=sockets.target[Socket]
ListenStream=127.0.0.1:11300[Install]
WantedBy=sockets.target
#删除beanstalkd.socket文件并重启
root@us78:/etc/default# mv /lib/systemd/system/beanstalkd.socket /lib/systemd/system/beanstalkd.socket.bak
root@us78:/etc/default# systemctl daemon-reload
root@us78:/etc/default# systemctl restart beanstalkd.

二、消息队列beanstalkd上的error: JOB_TOO_BIG的解决
今天一个处理处理消息队列的程序出现了报错,其中往beanstalkd添加消息的时候出现:Put error: JOB_TOO_BIG in beanstalk-client/src/Client.php:283,出现此报错的原因是往beanstalkd添加的消息个数(待处理)超过了最大限制,限制是多少呢?我们可以使用beanstalkd -z选项的值,默认是(default is 65535)。通过telnet beanstalkd端口查看stats返回结果可以看到,因此这里需要将此配置进行修改。
我的系统是Ubuntu 16.04,beanstalkd是使用apt get install安装的,如果你是命令行启动的话直接加上-z选项即可,但不想改成命令行启动,网上看到用户在启动脚本中添加项成功,我尝试
#添加下面这行并修改DAEMON_OPTS这行,后重启
root@u33:$ vim /etc/init.d/beanstalkd
MAX_JOB_SIZE="-z 524280"
DAEMON_OPTS="-l $BEANSTALKD_LISTEN_ADDR -p $BEANSTALKD_LISTEN_PORT $BEANSTALKD_EXTRA -z 1000000"
root@u33:$ service beanstalkd restart
但telnet通过stats查看仍然没有变化,后看到有DEBIAN用户说在/etc/sysconfig/beanstalkd中添加MAX_JOB_SIZE=-z 524280 选项解决问题,不过我使用的ubuntu,找到/etc/default/beanstalkd配置文件,上篇文章: ubuntu下beanstalkd无法绑定局域网IP地址 刚解决过/etc/default/beanstalkd不生效的问题,在这里添加MAX_JOB_SIZE配置后成功了。
#添加以下行代码执行重启
$ vim /etc/default/beanstalkd
BEANSTALKD_LISTEN_ADDR=0.0.0.0
BEANSTALKD_LISTEN_PORT=11300
#添加以下配置
BEANSTALKD_EXTRA="-z 524280"
root@u33:/# telnet 11.98.127.92 11300
Trying 11.98.127.92...
Connected to 11.98.127.92.
stats
---
total-jobs: 0
max-job-size: 524280
在这里我发现了一个差异,解决这个问题有两种配置:一种是BEANSTALKD_EXTRA=-z 524280,一种是MAX_JOB_SIZE=-z 524280,看这名称有可能是这样,如果在启动脚本中解决应该使用BEANSTALKD_EXTRA,而在配置文件中解决就使用MAX_JOB_SIZE,我的启动起来了,我也没去尝试,其它朋友可以试试是不是这样。
相关文章:
Ubuntu下beanstalkd无法绑定局域网IP地址以及消息队列beanstalkd上的error: JOB_TOO_BIG的解决
一、ubuntu下beanstalkd无法绑定局域网IP地址 今天因为业务需要,我把之前安装的beanstalkd所绑定的IP地址由127.0.0.1改成局域网IP地址,但是怪了,显示beanstalkd已经启动,查看端口监控也显示IP地址变了,但是使用telnet…...
网络原理(3)—— 应用层、传输层(TCP)
1. 应用层 日常开发中最常用到的一层,主要涉及到两种情况: 1) 使用现成的应用层协议 2) 自己定义应用层协议 1.1 自定义应用层协议的流程 1. 明确前后端交互过程中需要传递哪些信息 实例:开发一个外卖软件 打开软件,首先需要展…...
Flutter - Win32程序是如何执行main函数
Win32程序的主体结构 int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,_In_ wchar_t *command_line, _In_ int show_command) {// Attach to console when present (e.g., flutter run) or create a// new console when running with a debugger.if …...
linux-系统管理与监控-日志管理
Linux 系统管理与监控:日志管理 1. 日志管理概述 日志文件是系统在运行过程中记录的各种信息,它们是系统管理员排查问题、监控系统健康状况的重要工具。在 Linux 系统中,日志涵盖了系统事件、内核信息、用户操作、软件服务和应用程序等内容…...
VulhubDC-4靶机详解
项目地址 https://download.vulnhub.com/dc/DC-4.zip实验过程 将下载好的靶机导入到VMware中,设置网络模式为NAT模式,然后开启靶机虚拟机 使用nmap进行主机发现,获取靶机IP地址 nmap 192.168.47.1-254根据对比可知DC-4的一个ip地址为192.1…...
[数据集][目标检测]烟叶病害检测数据集VOC+YOLO格式612张3类别
数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):612 标注数量(xml文件个数):612 标注数量(txt文件个数):612 标注类别…...
Sapiens——人类视觉大模型的基础
引言 大规模预训练以及随后针对特定任务的语言建模微调取得了显著成功,已将这种方法确立为标准做法。同样, 计算机视觉方法正逐步采用大规模数据进行预训练。LAION5B、Instagram-3.5B、JFT-300M、LVD142M、Visual Genome 和 YFCC100M 等大型数据集的出现…...
《深度学习》【项目】 OpenCV 身份证号识别
目录 一、项目实施 1、自定义函数 2、定位模版图像中的数字 1)模版图二值化处理 运行结果: 2)展示所有数字 运行结果: 3、识别身份证号 1)灰度图、二值化图展示 运行结果 2)定位身份证号每一个数…...
机器学习实战—天猫用户重复购买预测
目录 背景 数据集 用户画像数据 用户行为日志数据 训练数据 测试数据 提交数据 其它数据 数据探索 导入依赖库 读取数据 查看数据信息 缺失值分析 数据分布 复购因素分析 特征工程 模型训练 模型验证 背景 商家有时会在特定日期,例如节礼日(Boxing-day),黑…...
一款rust语言AI神器cursor在ubuntu环境下的安装启动教程
虽然cursor目前只支持英文但是它强大的代码联想能力以及问答能力,可以高效的提高编码效率。 如下步骤所有的前提是你的ubuntu上面已经安装了vscode以及其必须的extensions。 1 下载 到官网https://www.cursor.com下载指定版本的软件。 下载到本地以后会生成如下软…...
【C#生态园】发现C#中的数据科学魔法:6款不可错过的库详解
探索C#中的数据科学与机器学习:6个强大库解析 前言 在数据科学和机器学习领域,Python一直占据着主导地位,然而对于习惯使用C#编程语言的开发人员来说,寻找适用于C#的数据科学库一直是一个挑战。本文将介绍几个流行的用于C#的数据…...
导入neo4j数据CSV文件及csv整理demo示例
Neo4j导入CSV文件(实体和关系)_neo4j导入csv关系-CSDN博客 https://blog.csdn.net/m0_69483514/article/details/131296060?spm1001.2101.3001.6661.1&utm_mediumdistribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ER…...
bug | pycharm社区版无sciview解决办法
一个程序运行多个图,plt.show()一次只弹出一个独立窗口,必须关掉一个才能显示下一张图,想找sciview却发现找不到,本来以为是新版pycharm的问题,后来才发现是community版根本没有sciview…不想换专业版了,研…...
PL/SQL程序设计入门
PL/SQL程序设计 PL/SQL起步鼻祖:hello World语法分析声明部分举例 应用举例 PL/SQL 起步鼻祖:hello World 先举个例子,用PL/SQL打印输出hello world declarev_string varchar2(20); beginv_string:hello world;dbms_output.put_line(v_str…...
一、Numpy入门
Numpy入门 前言一、numpy简介二、Numpy的ndarray属性2.1. 直接用 .属性的方法实现2.2. 直接函数的方法实现 三、Numpy的ndarray的创建3.1. ndarray介绍3.2. 数组形式3.3. zeros()、ones() 、 empty()3.4. arange(),类似 python 的 range() ,创建一个一维…...
自动化测试框架设计核心理念——关键字驱动
很多人在接触自动化测试时,都会听到关键字驱动这样的一个概念,但是在研究时却有些不太清楚这种驱动模式的设计及实现到底该如何着手去做。 关键字驱动,作为一种自动化测试框架的设计形式,在很早的时候就已经有提及过了。它的基本…...
GO GIN SSE DEMO
文章目录 接口描述:1.1 /events/time - 时间流1.2 /events/numbers - 数字流 2. 用户管理接口2.1 /user/:id - 获取用户信息2.2 /user - 创建用户 项目结构1. main.go2. 创建 handlers/event_time.go3. 创建 handlers/event_number.go4. handlers/user.go5. 运行服务…...
GEE教程:1950-2023年ECMWF数据中积雪的长时序统计分析
目录 简介 数据 函数 millis() Arguments: Returns: Long 代码 结果 简介 1950-2023年ECMWF数据中积雪的长时序统计分析 数据 ECMWF/ERA5_LAND/DAILY_AGGR是由欧洲中期天气预报中心(ECMWF)提供的数据集。它是一个格网数据集,包含从ERA5-Land再分析数据集中得出的…...
【React Native】路由和导航
RN 中的路由是通过 React Navigation 组件来完成的 Stack 路由导航RN 中默认没有类似浏览器的 history 对象在 RN 中路由跳转之前,需要先将路由声明在 Stack 中<Stack.Navigator initialRouteNameDetails> <Stack.Screen nameDetails /> </Stack.N…...
Linux环境基础开发工具---vim
1.快速的介绍一下vim vim是一款多模式的编辑器,里面有很多子命令,来实现代码编写操作。 2.vim的模式 vim一共有三种模式:底行模式,命令模式,插入模式。 2.1vim模式之间的切换 2.2 谈论常见的模式---命令模式…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...
Golang——6、指针和结构体
指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...
Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
