广告
返回顶部
首页 > 资讯 > 操作系统 >Linux中shell如何实现HTTP服务
  • 291
分享到

Linux中shell如何实现HTTP服务

2023-06-09 17:06:21 291人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关linux中shell如何实现Http服务的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、前言使用代理服务器 HAProxy 对 Mysql 做负载均衡是常用方案,为提高可用性,当某个

这篇文章给大家分享的是有关linuxshell如何实现Http服务的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

一、前言

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

二、解决思路

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

(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 示例,开放 9200 端口,返回一个测试脚本的输出内容

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

(1)测试脚本

#!/bin/bashecho `uptime | egrep -o 'up ([0-9]+) days' | awk '{print $2}'`

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

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

(2)编写 xinetd 服务

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

service helloworld{disable = noport  = 9200Socket_type   = streamprotocol    = tcpwait      = nouser      = rootserver     = /root/test.shserver_args   = test}

port 指定监听的端口

server 指定要执行的脚本

(3)加入服务列表

修改 /etc/services

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

helloworld   9200/tcp#wap-wsp     9200/tcp#wap-wsp     9200/udp

(4)重启 xinetd

centos 下的重启命令为:

systemctl restart xinetd.service

(5)测试

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

nc localhost 9200

Linux中shell如何实现HTTP服务

telnet localhost 9200

Linux中shell如何实现HTTP服务

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

感谢各位的阅读!关于“Linux中shell如何实现HTTP服务”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Linux中shell如何实现HTTP服务

本文链接: https://www.lsjlt.com/news/256935.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux中shell如何实现HTTP服务
    这篇文章给大家分享的是有关Linux中shell如何实现HTTP服务的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、前言使用代理服务器 HAProxy 对 Mysql 做负载均衡是常用方案,为提高可用性,当某个...
    99+
    2023-06-09
  • Linux shell实现HTTP服务示例代码
    一、前言 使用代理服务器 HAProxy 对 Mysql 做负载均衡是常用方案,为提高可用性,当某个 Mysql 出现问题时,例如服务器故障了,或者数据复制中断了,最好可以让 HAProxy 马上知道,然后...
    99+
    2022-06-04
    示例 代码 Linux
  • AngularJS2中如何实现Http服务
    这篇文章主要介绍了AngularJS2中如何实现Http服务,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。关于http服务HttpModul...
    99+
    2022-10-19
  • 如何使用 Go 实现 HTTP shell?
    Go 语言是一种高效、简洁、强大的编程语言,它在网络编程方面表现突出。在本文中,我们将介绍如何使用 Go 语言实现 HTTP shell,并附上演示代码。 HTTP shell 是一种通过浏览器或 HTTP 客户端与远程服务器进行交互的工...
    99+
    2023-09-23
    http shell path
  • linux中shell如何实现文件锁
    这篇文章给大家分享的是有关linux中shell如何实现文件锁的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. util-linux 的 flock这个命令有两种用法:  flock LOCKFILE...
    99+
    2023-06-09
  • PHP如何实现HTTP服务器
    这篇文章主要介绍“PHP如何实现HTTP服务器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP如何实现HTTP服务器”文章能帮助大家解决问题。PHP并非不能实现HTTP服务,一般来讲,这叫网络编...
    99+
    2023-07-05
  • 如何实现Shell脚本注册到Linux系统服务
    本篇内容介绍了“如何实现Shell脚本注册到Linux系统服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!注册一个系统服务,开机自启动.1...
    99+
    2023-06-09
  • linux服务器如何实现安全加固shell脚本
    这篇文章给大家分享的是有关linux服务器如何实现安全加固shell脚本的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。代码如下:#!/bin/sh# desc: setup linux system securi...
    99+
    2023-06-09
  • 利用C语言实现http服务器(Linux)
    目录一、实习目的二、实习项目及内容2.1开发平台2.2项目功能2.3技能储备三、项目设计3.1设计概述3.2 Reactor模式3.3 socket网络编程3.4 http服务器应答...
    99+
    2022-11-13
  • linux中shell如何实现字母转换
    这篇文章给大家分享的是有关linux中shell如何实现字母转换的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。#!/bin/sh #----------------------------------------...
    99+
    2023-06-13
  • linux中如何搭建http代理服务器
    这篇文章主要介绍了linux中如何搭建http代理服务器,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。安装 TinyProxyyum -y install tinyproxy...
    99+
    2023-06-28
  • Linux服务器如何实现安全初始化Shell脚本
    这篇文章主要为大家展示了“Linux服务器如何实现安全初始化Shell脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux服务器如何实现安全初始化Shell脚本”这篇文章吧。使用方法:将...
    99+
    2023-06-16
  • linux中shell如何实现txt转换成html
    小编给大家分享一下linux中shell如何实现txt转换成html,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!原理: awk命令,分割格式化的txt(txt文...
    99+
    2023-06-09
  • linux中shell如何实现数据重定向
    这篇文章主要为大家展示了“linux中shell如何实现数据重定向”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux中shell如何实现数据重定向”这篇文章吧。linux文件描述符:可以理...
    99+
    2023-06-13
  • 如何实现简易版Linux服务器初始化Shell脚本
    这篇文章主要介绍如何实现简易版Linux服务器初始化Shell脚本,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!该Shell脚本主要用于新安装Linux服务器系统的初始化工作,具体包括:关闭IPv6模块关闭SELin...
    99+
    2023-06-16
  • Golang如何实现简单http服务器
    这篇文章主要介绍“Golang如何实现简单http服务器”,在日常操作中,相信很多人在Golang如何实现简单http服务器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Golang如何实现简单http服务器...
    99+
    2023-07-05
  • PHP如何在Linux系统中实现HTTP实时通信?
    HTTP实时通信是现代Web应用程序中的一个关键组件,它可以让应用程序在不刷新页面的情况下更新内容。这对于实时消息、即时聊天、在线游戏等应用程序来说非常重要。PHP是一种流行的服务器端语言,本文将介绍如何使用PHP在Linux系统中实现H...
    99+
    2023-10-07
    实时 linux http
  • 如何实现Linux Shell脚本调试
    这篇文章主要讲解了“如何实现Linux Shell脚本调试”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何实现Linux Shell脚本调试”吧!一、调试脚本调试功能是每一种编程语言都应该...
    99+
    2023-06-09
  • 如何实现Linux Shell 动态生成
    这篇文章给大家介绍如何实现Linux Shell 动态生成,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。下面主要讲是动态生成数组系列。方法应该很多,我这里主要以一个求和计算的题目为例进行分析。题目:请用linux sh...
    99+
    2023-06-28
  • 如何在Linux中shell编程实现for循环
    今天就跟大家聊聊有关如何在Linux中shell编程实现for循环,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、常用for循环结构#语法一for 变量 in&...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作