位置: 编程技术 - 正文

Linux shell实现HTTP服务示例代码

编辑:rootadmin

推荐整理分享Linux shell实现HTTP服务示例代码,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

一、前言

使用代理服务器 HAProxy 对 Mysql 做负载均衡是常用方案,为提高可用性,当某个 Mysql 出现问题时,例如服务器故障了,或者数据复制中断了,最好可以让 HAProxy 马上知道,然后停止向其转发请求

HAProxy 如何知道 Mysql 是否有问题呢?

二、解决思路

(1)编写一个shell脚本,检查 mysql 的状态,然后输出结果,例如状态正常时,返回状态码及正确信息,否则返回状态码及错误信息

(2)实现一个HTTP服务,有请求连接后,调用上面的检查脚本,返回检查结果

(3)HAProxy 访问这个HTTP服务,根据返回的结果信息来判断这个 mysql 是否可用

如何方便快速的实现一个可以调用shell脚本的HTTP服务呢?

比较通用的方案就是 xinetd

xinetd 是 Linux 的守护进程,全称为 extended interent daemon,扩展的网络守护进程

xinetd 可以打开一个端口,等待连接,你可以告诉 xinetd 运行哪个脚本,当有连接进来后,xinetd 便会执行脚本,然后直接返回脚本输出的内容

HAProxy -> xinetd -> mysql-check脚本,HAProxy 便取得了mysql的状态信息

xinetd 的配置案例

下面实现一个简单的 xinetd 示例,开放 端口,返回一个测试脚本的输出内容

如果机器上还没有 xinetd,先安装一下,centos7 下可以使用命令 yum install xinetd

(1)测试脚本

Linux shell实现HTTP服务示例代码

这个脚本用来输出当前服务器的在线天数

用 chmod +x 给脚本添加可执行权限

(2)编写 xinetd 服务

例如服务名为 helloworld,文件名 /etc/xinetd.d/helloworld,内容为

port 指定监听的端口

server 指定要执行的脚本

(3)加入服务列表

修改 /etc/services

找到定义 端口的位置,注释掉原有的,添加 helloworld 服务

(4)重启 xinetd

centos 下的重启命令为:

(5)测试

分别用 nc 和 telnet 两个命令测试一下

可以正确输出脚本执行内容,完成示例

总结

Linux shell实现HTTP服务的内容到这就基本结束了,希望对大家的工作和学习能有所帮助,如果有疑问可以留言讨论。

Git中需要熟记的命令小结 提交流程相关查看文件改动以及新增的文件gitstatus添加新增文件gitaddyour_file_path//添加全部文件gitadd*//添加某类型文件gitadddir/*.js简单的提交文件gitcommit-m

用git打更新包的办法分享 前言相信很多人都有过这种经历,当修改了一堆bug后,要更新代码到服务器上,此时,最简单的方式是将项目文件全部上传一次,这种方式可行,但不

如何短时间内学好一门语言 shell脚本语言为例 这里我分享的是学习计算机shell脚本语言的方法,可能你不是在软件行业,但我建议也看看,因为我并没有讲什么技术细节,主要分享的是提炼出的通用

标签: Linux shell实现HTTP服务示例代码

本文链接地址:https://www.jiuchutong.com/biancheng/371463.html 转载请保留说明!

上一篇:Linux中scp命令获取远程文件的方法

下一篇:Git中需要熟记的命令小结(常用的git操作)

  • 企业税收收入怎么计算
  • 农副产品增值税免税政策
  • 如何根据销售额降序排序
  • 人力资源公司可以接保安业务吗
  • 新公司成立第一次会议
  • 月初认证的增值税发票可以吗
  • 借款利息收入所得税
  • 从业人数和资产总额是灰色
  • 会计科目的设置
  • 本月出库金额等于什么
  • 未实现融资收益纳税调整
  • 周转材料计入什么账
  • 已认证未抵扣进项税如何做账
  • 房产税税率及计算方法最新
  • 国家金库为什么扣我银行里的钱
  • 车间未完工的产品属于什么
  • 外资生产企业出口销售会计处理
  • 上年免税收入转内销补交税分录
  • 小规模申报个税手续费返还在哪填写信息
  • 外贸企业申报出口退税商品名称可以改吗
  • 购房专票可以抵扣进项税吗为什么
  • 清算所得税申报表范本
  • win10安全中心通知关闭
  • php调用mysql索引查询
  • 什么叫php
  • 如何计算经营性负债
  • 银行存款收款凭证属于什么凭证
  • 开发商没交税
  • 跨地区经营增值税预缴
  • framework 开发
  • ElementUI中<el-form>标签中 ref、:model、:rules 的作用
  • js let用法
  • 预付劳务款项会计分录
  • 民办非企业现金流量表的编制公式
  • 一般纳税人上月有普通发票收入没入账可以次月加上吗
  • 给股东分配股利
  • 会计科目在建工程含税吗
  • 旅游费记入什么科目
  • 用友怎么取消对账结果
  • 未发工资怎么办
  • 电脑入账如何做凭证
  • 土地增值税纳税申报期限
  • 可以报销的票据种类
  • 固定资产被盗怎么处理
  • 社保扣款上月没扣费
  • 预收账款冲销账户怎么做
  • 自建不动产领用原材料增值税进项
  • 工资代发户怎么开
  • 抵扣认证的发票怎么做账
  • 房地产开发企业资质管理规定
  • 连锁药店之间调拨药品
  • mysql按时间查询
  • mysql二进制安装教程
  • windows无法启动MySQL80服务
  • win8无法安装其它软件
  • 邮件远程控制
  • win7系统连接wifi无法连接到internet
  • 硬盘格式 mac
  • mac自带系统检测软件怎么用
  • mac 10.8.5升级
  • 如何创建微软帐户
  • centos32
  • windows默认程序设置
  • win7系统摄像头不可用怎么办
  • Win10装不上是什么原因
  • win8自带杀毒软件 关闭
  • nodejs自动生成接口文档
  • 批处理有何限制
  • 关于中国天气的新闻报道
  • linux u+s
  • 各种常用的js函数有哪些
  • 批处理怎么学
  • python错误和异常处理
  • 中央与地方增值税
  • 中国地税国税
  • 邮政清关费用怎么算
  • 怎么查询公司法人电话号码
  • 消费税税目税率表2019
  • 告知承诺和非告知承诺
  • 国企重组裁员政策解读
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设