位置: 编程技术 - 正文

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操作)

  • 小微企业城建税优惠政策2023
  • 金税盘连接不上电脑是怎么回事
  • 小规模纳税人征税率为多少
  • 从公司提款需要交税?
  • 本年利润需要毎月转入未分配利润吗
  • 个人所得税如何退税操作流程
  • 固定资产本期发生额怎么算
  • 费用多报销了,但已经给了,怎么办
  • 其他综合收益包括资本公积吗
  • 机票附加的保险有必要买吗
  • 快递费属于哪个商品编码
  • 留抵税额账上比申报表多280
  • 小规模开普票一个季度不能超过多少钱是免税的
  • 劳务派遣用工的岗位只能在哪些工作岗位上实施
  • 劳务派遣个人所得税
  • 在建工程转什么
  • 对方开票怎么做账务处理
  • 委托加工模具的费用计入什么科目?
  • 进口内销是什么意思
  • 基本生产车间领用周转材料会计分录
  • 定额发票已经取得怎么办
  • 未盖发票章怎么办
  • 劳务派遣案例分析题
  • 公司支付广告费怎么入账
  • 企业上月份销售收入在本月份发生销售折让时
  • 合并报表的编制主体
  • 工资表附在哪张凭证后面
  • 个税是应发工资扣,还是实发工资扣
  • 如何手机个人热点连电脑
  • 反射动态创建对象
  • win10怎么找应用程序
  • 苹果多屏协同win10
  • sovies
  • php自动编号
  • 财政专户资金是什么意思
  • php中的九大缓存技术
  • 应税货物及劳务无法录入
  • 【深度学习】pix2pix GAN理论及代码实现与理解
  • php-fpm运行模式
  • 防伪税控开票系统安装
  • python3中rindex用法
  • mysql 连接语句
  • 解决胃胀气最快方法
  • 年终奖个人所得税税率表
  • 广告制作费属于广告服务吗
  • PostgreSQL教程(十四):数据库维护
  • 免税农产品按多少抵扣
  • 生产车间计提费用会计分录
  • 只有进项税额没有销项税额怎么结转
  • 固定资产不动产有哪些
  • 房地产企业扣除项目
  • 工伤七至十级有伤残津贴吗
  • 管理费用有负数怎么结总账
  • 红字发票是干什么的
  • 货拉拉除了运费还要出钱吗
  • 企业会计准则和小企业准则的区别
  • 认证后的进项税额留抵退税
  • 工资的计算方法有几种
  • 服务业建账科目设置
  • mysql启动成功但是无法连接
  • win2000系统禁止ping
  • 卸载微信后重新登录微信怎么恢复之前的数据
  • mac系统命名规律
  • win8.1电脑设置在哪里
  • ubuntu邮箱客户端
  • android7应用程序开发教程
  • win10注册不了账号
  • python多核并行处理
  • android PercentRelativeLayout 支持百分比来设置控件的宽高
  • 本地安装策略在哪里
  • javascript总结笔记
  • android:Background线程池和UiThread线程池
  • 浅析jQuery Ajax请求参数和返回数据的处理
  • javascript的dom操作
  • 广东省国税局长是谁
  • 大连电子税务局app下载
  • 怎么申请冬季取暖补贴
  • 开电子发票流程步骤
  • 小米之家可以
  • 商标转让需要原件吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设