Simula语言的区块链
慕璃嫣
包罗万象golang开发语言后端
Simula语言与区块链技术的交汇:构建下一个世代的智能合约引言区块链技术自2008年比特币白皮书发布以来,迅速发展成为一个重要的技术领域。它以去中心化、透明性和不可篡改性为核心特征,为各种应用提供了新的解决方案。在众多编程语言中,Simula语言虽不如Solidity、Go或Rust等更为流行,但其在面向对象编程(OOP)中的创新却为区块链应用的发展提供了独特的视角。本文将探讨Simula语言的
Objective-C语言的软件工程
慕璃嫣
包罗万象golang开发语言后端
Objective-C语言的软件工程引言在软件工程的领域中,编程语言的选择至关重要。随着技术的不断进步,开发者面临着各种编程语言的选择。其中,Objective-C作为一种成熟且广泛应用的编程语言,尤其是在苹果生态系统中,仍然扮演着重要的角色。本文将从多个方面探讨Objective-C语言在软件工程中的应用,包括历史背景、核心特性、开发流程及其在现代开发环境中的地位。一、Objective-C的历
Haskell语言的数据库交互
AI向前看
包罗万象golang开发语言后端
Haskell语言的数据库交互在现代软件开发中,数据库是存储和管理数据的重要组成部分。Haskell作为一种功能性的编程语言,因其优雅的语法和强大的类型系统,在开发高质量的软件方面得到了广泛的应用。而在很多实际应用中,数据库操作不可或缺,因此如何高效、优雅地在Haskell中进行数据库交互,是一个值得深入探讨的课题。1.Haskell简介Haskell是一种纯粹的函数式编程语言,拥有强大的类型系统
Haskell语言的编程范式
编程|诗人
包罗万象golang开发语言后端
Haskell语言的编程范式及其魅力引言Haskell是一种纯粹的函数式编程语言,自1987年首次发布以来,它一直在学术界和工业界保持着相对高的关注度。Haskell的编程范式与传统的命令式编程有着显著的不同,提供了一种更加优雅和强大的方式来处理计算和数据。本文将详细探讨Haskell语言的编程范式、其核心特性、以及在实际应用中的优势和局限性。一、编程范式的概念编程范式是指编程语言使用的基本风格或
k8s和ipvs、lvs、ipvsadm,iptables,底层梳理,具体是如何实现的
技术服务于生态
kubernetes容器云原生
计算节点的功能:提供容器运行的环境kube-proxy的主要功能:术业有专攻,kube-proxy的主要功能可以概括为4个字网络规则那么kube-proxy自己其实是个daemonset控制器跑的每个节点上都有个的pod它负责网络规则其实呢它还是个小领导它不直接去搞网络规则而是告诉别人,网络规则要怎么搞你来搞告诉谁?1.14版本之前是iptables1.14版本之后是ipvsiptables是个命
现代操作系统一点点
技术服务于生态
linux运维
现代操作系统操作系统为所有其他软件提供基础的运行环境。操作系统包含很多用于控制输入/输出设备的驱动文件也是抽象出来的操作系统的一个主要任务是隐藏硬件,呈现给程序(以及程序员)良好、清晰、优雅、一致的抽象。shell也是操作系统提供给用户的一个用户接口作为资源管理者的操作系统把操作系统看作向应用程序提供基本抽象的概念,是一种自顶向下的观点。按照另一种自底向上的观点,操作系统则用来管理一个复杂系统的各
万字长文解读生成式AI参考架构
俞凡 DeepNoMind
程序人生
本文介绍了构建端到端生产级GenAI应用的参考架构模型,涵盖了从UI/UX设计到多代理系统的各个方面,涉及AI模型的准备、调优、服务以及治理等关键环节。原文:TheGenAIReferenceArchitecture本文将介绍构建端到端GenAI应用的主要架构构件和蓝图,以便为生产做好准备,并且提出了几个在实施和设计基于LLM的应用时需要注意的关键事项。在目标架构中选择GenAI组件的AI成熟度:
k8s中,ingress的实现原理,及其架构。
技术服务于生态
kubernetes容器云原生
图片来源:自己画的图片来源:k8s官网首先,什么是ingress?是服务还是控制器?都不精确ingress是一个api资源service和deployment也是api资源。这几个相互协作,组建成一个对外提供服务的架构。ingress提供的作用是什么?ingress资源的生成,系统会给ingress资源一个ip地址这个ip地址下的不同路径,会定位到后端的不同服务比如ingress资源的ip地址是1
【Leetcode 每日一题 - 补卡】219. 存在重复元素 II
冠位观测者
LeetcodeDailyleetcode算法数据结构
问题背景给你一个整数数组numsnumsnums和一个整数kkk,判断数组中是否存在两个不同的索引iii和jjj,满足nums[i]=nums[j]nums[i]=nums[j]nums[i]=nums[j]且∣i−j∣map=newHashMapset=newHashSet=k){set.remove(nums[i-k]);}}returnfalse;}}
论文笔记(七十)DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning(二)
墨绿色的摆渡人
文章论文阅读
DeepSeek-R1:IncentivizingReasoningCapabilityinLLMsviaReinforcementLearning(二)文章概括摘要:2.方法2.3.DeepSeek-R1:冷启动强化学习2.3.1.冷启动2.3.2.面向推理的强化学习2.3.3.拒绝采样与监督微调2.3.4.面向所有场景的强化学习2.4.蒸馏:赋予小模型推理能力文章概括引用:@article{g
零碎的知识点(十二):卷积神经网络CNN通道数的理解!
墨绿色的摆渡人
零碎知识点cnn深度学习神经网络
卷积神经网络CNN通道数的理解!通道数的核心概念解析1.通道数的本质2.单张灰度图的处理示例:3.批量输入的处理通道与批次的关系:4.RGB三通道输入的处理计算过程:示例:5.通道数的实际意义6.可视化理解(1)单通道输入(灰度图)的过滤器(2)三通道输入(RGB)的过滤器总结通道数的核心概念解析1.通道数的本质在卷积神经网络中,通道数(Channels)表示不同过滤器的数量。每个通道对应一个独立
pytorch小记(七):pytorch中的保存/加载模型操作
墨绿色的摆渡人
pythonpytorch小记pytorch人工智能python
pytorch小记(七):pytorch中的保存/加载模型操作1.加载模型参数(`state_dict`)1.1保存模型参数1.2加载模型参数1.3常见变种1.3.1指定加载设备1.3.2非严格加载(跳过部分层)1.3.3打印加载的参数2.加载整个模型2.1保存整个模型2.2加载整个模型2.3注意事项3.总结4.加载模型的完整代码示例4.1保存和加载参数4.2保存和加载整个模型4.3加载到不同设备
Vue对话式前端界面
WUJI02
裁判文书大模型vue.js前端javascript
一.对话样式的实现用一个messages数组来存放对话信息,信息有两种类型user和botthis.messages.push({type:'user',content:this.userMessage});this.messages.push({type:'bot',content:response.data.reply});模版部分使用:class="['message-content',me
在Android Studio遇到卡在Waiting for all target devices to come online的解决方法
WUJI02
androidstudioandroidide
我在AndroidStudio中遇到了卡在“Waitingforalltargetdevicestocomeonline”的情况,我使用的是api24和api30版本的虚拟机。使用这两个版本的虚拟机是可以打开虚拟机的,但是虚拟机中没有运行我们所写的Android程序。解决办法是选择api27的虚拟机,这里应该是虚拟机Android版本的问题,不是我们清楚数据或者进行冷启动就可以解决的。
第十七题:电话号码的字母组合
冰魄雕狼
leetcode算法leetcodec语言pythonjava数据结构
题目描述给定一个仅包含数字2-9的字符串,返回所有可能的由它组成的字母组合。你可以假设输入字符串至少包含一个数字,并且不超过3位数字。实现思路使用哈希表或数组存储每个数字对应的字符,然后通过递归或迭代的方式生成所有可能的组合。如果字符串长度为n,则可以看作是n层循环,每层循环可以选择对应数字的所有字符之一。算法实现C语言实现#include#include#includevoidbacktrack
第十六题:最接近的三数之和
冰魄雕狼
leetcode算法leetcode数据结构c语言pythonjava
题目描述给定一个包括n个整数的数组nums和一个目标值target。找出nums中的三个整数,使得它们的和与target最接近。返回这三个数的和。假定每组输入只存在唯一答案。示例:输入:nums=[-1,2,1,-4],target=1输出:2解释:与target最接近的和为2(-1+2+1=2)。注意:3intcmp(constvoid*a,constvoid*b){return(*(int*)
vscode 和 pycharm哪个更适合开发
挺住.
人工智能经验分享笔记
在选择Python开发环境时,VisualStudioCode(VSCode)和PyCharm是两个最受欢迎的选择。两者都有强大的功能,但它们的设计理念、用户体验和功能集有所不同。是对两者的详细比较,帮助你选择更适合Python开发的工具。1.概述VisualStudioCode(VSCode):由微软开发,是一个轻量级、开源的代码编辑器,支持多种编程语言。通过扩展插件,VSCode可以扩展为功能
神经网络|(七)概率论基础知识-贝叶斯公式
西猫雷婶
概率论人工智能概率论
【1】引言前序我们已经了解了一些基础知识。古典概型:有限个元素参与抽样,每个元素被抽样的概率相等。条件概率:在某条件已经达成的前提下,新事件发生的概率。实际计算的时候,应注意区分,如果是计算综合概率,比如A已经发生时,B发生的概率,其实计算的目标是P(AB)。条件概率公式的通用表达式为P(B|A)=P(AB)/P(A),乘法表达式为P(AB)=P(B|A)P(A)全概率公式:全概率公式综合了所有条
Switch函数的使用
爱代码的小黄人
C语言学习c语言c++
一个switch语句允许测试一个变量等于多个值时的情况。每个值称为一个case,且被测试的变量会对每个switchcase进行检查。C++中switch语句的语法:switch(expression){caseconstant-expression:statement(s);break;//可选的caseconstant-expression:statement(s);break;//可选的//您
MyBatis 查询结果接收类型的总结与实践
DebugDiver代码深处潜水员
数据库三方件mybatis
MyBatis查询结果接收类型的总结与实践基本情况1.实体类型(JavaBean)2.Map类型3.自定义结果类型4.List集合5.List>6.多参数接收7.自定义对象8.动态结果类型复杂情况1.多表关联查询示例代码2.分页查询示例代码3.动态SQL示例代码4.批量更新/插入示例代码5.存储过程示例代码6.嵌套查询示例代码示例代码8.事务管理示例代码基本情况1.实体类型(JavaBean)实体
Opencv载取任意长度视频
牛andmore牛
#OpenCVopencv载取视频opencv
文章目录使用Opencv截取仍意长度视频。使用Opencv截取仍意长度视频。importcv2importsysdefselect_video(input_path,output_path,start=1,end=-1):"""input_path表示原视频路径output_path表示要保存路径start表示起始的帧,默认从头开始end表示终止帧,默认到结尾"""assertstart=star
Flannel 安装并排错
超级阿飞
k8sclusterlinux运维k8s
安装好flannel插件后,运行flannel的deamonset启动不起相应的pod来,coredns也报错。以下为排错和修复的过程。安装好Flannel后报错在安装好flannel后,可用查看具体的安装yaml文件来了解安装的整个过程和定义的参数,可用将https://raw.githubusercontent.com/flannel-io/flannel/master/Documentati
SpringBoot基础 -- 高级特性
️771
SpringBootspringbootjavaspring后端Springsecurity
SpringBoot基础–高级特性1.简介对SpringBoot高级特性的了解能帮助开发者更好地开发项目、维护和优化应用程序。以下是对SpringBoot高级特性的介绍2.特性2.1Profiles环境配置一般来说开发、测试、生产环境都是不同的,此时应用程序可能需要不同配置,而SpringBoot支持Profiles环境配置。通过创建不同的配置文件(如application-dev.yml、app
venv 文件夹的作用和使用方法
张biubiu
pythonpycharm编辑器
在代码库中发现的venv文件夹通常表示一个Python虚拟环境。这个文件夹用于管理该项目的依赖和环境设置,确保项目在独立的、隔离的环境中运行,避免与其他项目或系统全局的Python环境发生冲突。venv文件夹的作用:创建独立的环境:它包含了项目所需的Python解释器和库,而不会干扰到系统或其他项目中的环境。隔离依赖:项目中所有的包和库都被安装在venv目录中,不会影响到其他项目或全局环境。版本控
Anaconda 虚拟环境 和 Python 虚拟环境 主要的区别
张biubiu
python开发语言
在PyCharm中配置Anaconda虚拟环境和Python虚拟环境主要的区别在于环境的管理方式和用途。下面我会分别解释这两种虚拟环境的特点,并说明它们的差异。1.Anaconda虚拟环境Anaconda是一个针对数据科学、机器学习等应用领域优化的Python发行版,它提供了Python、R和大量的科学计算和数据处理包(如NumPy、Pandas、SciPy、Matplotlib等)的集成,且方便
登录ChatGPT的时候总是卡在“验证你是人类”
张biubiu
chatgpt
登录Chatgpt时总是验证是不是真人,用了网上的三种方法,还是没有解决,最后把电脑连上手机热点,就可以成功使用Chatgpt。网上比较常用的解决办法(以谷歌浏览器为例)切换无痕浏览清除所有cookie。(Ctrl+Shift+Delete)。会提示清除多久的,是24小时之内的,还是一周之内的等等等。更换科学上网节点。((软件的代理位置))如果上面三个都不行的话,建议关闭防火墙试试。关闭防火墙。最
vue3+vite+Electron构建跨平台应用
vitenode
Electronelectronjavascript前端
1.搭建第一个electron-vite项目electron-vite是一个新型构建工具,旨在为Electron提供更快、更精简的开发体验。它主要由五部分组成:一套构建指令,它使用Vite打包你的代码,并且它能够处理Electron的独特环境,包括Node.js和浏览器环境。集中配置主进程、渲染器和预加载脚本的Vite配置,并针对Electron的独特环境进行预配置。为渲染器提供快速模块热替换(H
多线程编程之理财
周凡杨
java多线程生产者消费者理财
现实生活中,我们一边工作,一边消费,正常情况下会把多余的钱存起来,比如存到余额宝,还可以多挣点钱,现在就有这个情况:我每月可以发工资20000万元 (暂定每月的1号),每月消费5000(租房+生活费)元(暂定每月的1号),其中租金是大头占90%,交房租的方式可以选择(一月一交,两月一交、三月一交),理财:1万元存余额宝一天可以赚1元钱,
[Zookeeper学习笔记之三]Zookeeper会话超时机制
bit1129
zookeeper
首先,会话超时是由Zookeeper服务端通知客户端会话已经超时,客户端不能自行决定会话已经超时,不过客户端可以通过调用Zookeeper.close()主动的发起会话结束请求,如下的代码输出内容
Created /zoo-739160015
CONNECTEDCONNECTED
.............CONNECTEDCONNECTED
CONNECTEDCLOSEDCLOSED
SecureCRT快捷键
daizj
secureCRT快捷键
ctrl + a : 移动光标到行首ctrl + e :移动光标到行尾crtl + b: 光标前移1个字符crtl + f: 光标后移1个字符crtl + h : 删除光标之前的一个字符ctrl + d :删除光标之后的一个字符crtl + k :删除光标到行尾所有字符crtl + u : 删除光标至行首所有字符crtl + w: 删除光标至行首
Java 子类与父类这间的转换
周凡杨
java 父类与子类的转换
最近同事调的一个服务报错,查看后是日期之间转换出的问题。代码里是把 java.sql.Date 类型的对象 强制转换为 java.sql.Timestamp 类型的对象。报java.lang.ClassCastException。
代码:
可视化swing界面编辑
朱辉辉33
eclipseswing
今天发现了一个WindowBuilder插件,功能好强大,啊哈哈,从此告别手动编辑swing界面代码,直接像VB那样编辑界面,代码会自动生成。
首先在Eclipse中点击help,选择Install New Software,然后在Work with中输入WindowBui
web报表工具FineReport常用函数的用法总结(文本函数)
老A不折腾
finereportweb报表工具报表软件java报表
文本函数
CHAR
CHAR(number):根据指定数字返回对应的字符。CHAR函数可将计算机其他类型的数字代码转换为字符。
Number:用于指定字符的数字,介于1Number:用于指定字符的数字,介于165535之间(包括1和65535)。
示例:
CHAR(88)等于“X”。
CHAR(45)等于“-”。
CODE
CODE(text):计算文本串中第一个字
mysql安装出错
林鹤霄
mysql安装
[root@localhost ~]# rpm -ivh MySQL-server-5.5.24-1.linux2.6.x86_64.rpm Preparing... #####################
linux下编译libuv
aigo
libuv
下载最新版本的libuv源码,解压后执行:
./autogen.sh
这时会提醒找不到automake命令,通过一下命令执行安装(redhat系用yum,Debian系用apt-get):
# yum -y install automake
# yum -y install libtool
如果提示错误:make: *** No targe
中国行政区数据及三级联动菜单
alxw4616
近期做项目需要三级联动菜单,上网查了半天竟然没有发现一个能直接用的!
呵呵,都要自己填数据....我了个去这东西麻烦就麻烦的数据上.
哎,自己没办法动手写吧.
现将这些数据共享出了,以方便大家.嗯,代码也可以直接使用
文件说明
lib\area.sql -- 县及县以上行政区划分代码(截止2013年8月31日)来源:国家统计局 发布时间:2014-01-17 15:0
哈夫曼加密文件
百合不是茶
哈夫曼压缩哈夫曼加密二叉树
在上一篇介绍过哈夫曼编码的基础知识,下面就直接介绍使用哈夫曼编码怎么来做文件加密或者压缩与解压的软件,对于新手来是有点难度的,主要还是要理清楚步骤;
加密步骤:
1,统计文件中字节出现的次数,作为权值
2,创建节点和哈夫曼树
3,得到每个子节点01串
4,使用哈夫曼编码表示每个字节
JDK1.5 Cyclicbarrier实例
bijian1013
javathreadjava多线程Cyclicbarrier
CyclicBarrier类
一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。因为该 barrier 在释放等待线程后可以重用,所以称它为循环的 barrier。
CyclicBarrier支持一个可选的 Runnable 命令,
九项重要的职业规划
bijian1013
工作学习
一. 学习的步伐不停止 古人说,活到老,学到老。终身学习应该是您的座右铭。 世界在不断变化,每个人都在寻找各自的事业途径。 您只有保证了足够的技能储
【Java范型四】范型方法
bit1129
java
范型参数不仅仅可以用于类型的声明上,例如
package com.tom.lang.generics;
import java.util.List;
public class Generics<T> {
private T value;
public Generics(T value) {
this.value =
【Hadoop十三】HDFS Java API基本操作
bit1129
hadoop
package com.examples.hadoop;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoo
ua实现split字符串分隔
ronin47
lua split
LUA并不象其它许多"大而全"的语言那样,包括很多功能,比如网络通讯、图形界面等。但是LUA可以很容易地被扩展:由宿主语言(通常是C或 C++)提供这些功能,LUA可以使用它们,就像是本来就内置的功能一样。LUA只包括一个精简的核心和最基本的库。这使得LUA体积小、启动速度快,从 而适合嵌入在别的程序里。因此在lua中并没有其他语言那样多的系统函数。习惯了其他语言的字符串分割函
java-从先序遍历和中序遍历重建二叉树
bylijinnan
java
public class BuildTreePreOrderInOrder {
/**
* Build Binary Tree from PreOrder and InOrder
* _______7______
/ \
__10__ ___2
/ \ /
4
openfire开发指南《连接和登陆》
开窍的石头
openfire开发指南smack
第一步
官网下载smack.jar包
下载地址:http://www.igniterealtime.org/downloads/index.jsp#smack
第二步
把smack里边的jar导入你新建的java项目中
开始编写smack连接openfire代码
p
[移动通讯]手机后盖应该按需要能够随时开启
comsci
移动
看到新的手机,很多由金属材质做的外壳,内存和闪存容量越来越大,CPU速度越来越快,对于这些改进,我们非常高兴,也非常欢迎
但是,对于手机的新设计,有几点我们也要注意
第一:手机的后盖应该能够被用户自行取下来,手机的电池的可更换性应该是必须保留的设计,
20款国外知名的php开源cms系统
cuiyadll
cms
内容管理系统,简称CMS,是一种简易的发布和管理新闻的程序。用户可以在后端管理系统中发布,编辑和删除文章,即使您不需要懂得HTML和其他脚本语言,这就是CMS的优点。
在这里我决定介绍20款目前国外市面上最流行的开源的PHP内容管理系统,以便没有PHP知识的读者也可以通过国外内容管理系统建立自己的网站。
1. Wordpress
WordPress的是一个功能强大且易于使用的内容管
Java生成全局唯一标识符
darrenzhu
javauuiduniqueidentifierid
How to generate a globally unique identifier in Java
http://stackoverflow.com/questions/21536572/generate-unique-id-in-java-to-label-groups-of-related-entries-in-a-log
http://stackoverflow
php安装模块检测是否已安装过, 使用的SQL语句
dcj3sjt126com
sql
SHOW [FULL] TABLES [FROM db_name] [LIKE 'pattern']
SHOW TABLES列举了给定数据库中的非TEMPORARY表。您也可以使用mysqlshow db_name命令得到此清单。
本命令也列举数据库中的其它视图。支持FULL修改符,这样SHOW FULL TABLES就可以显示第二个输出列。对于一个表,第二列的值为BASE T
5天学会一种 web 开发框架
dcj3sjt126com
Web框架framework
web framework层出不穷,特别是ruby/python,各有10+个,php/java也是一大堆 根据我自己的经验写了一个to do list,按照这个清单,一条一条的学习,事半功倍,很快就能掌握 一共25条,即便很磨蹭,2小时也能搞定一条,25*2=50。只需要50小时就能掌握任意一种web框架
各类web框架大同小异:现代web开发框架的6大元素,把握主线,就不会迷路
建议把本文
Gson使用三(Map集合的处理,一对多处理)
eksliang
jsongsonGson mapGson 集合处理
转载请出自出处:http://eksliang.iteye.com/blog/2175532 一、概述
Map保存的是键值对的形式,Json的格式也是键值对的,所以正常情况下,map跟json之间的转换应当是理所当然的事情。 二、Map参考实例
package com.ickes.json;
import java.lang.refl
cordova实现“再点击一次退出”效果
gundumw100
android
基本的写法如下:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
//navigator.splashscreen.hide();
document.addEventListener("b
openldap configuration leaning note
iwindyforest
configuration
hostname // to display the computer name
hostname <changed name> // to change
go to: /etc/sysconfig/network, add/modify HOSTNAME=NEWNAME to change permenately
dont forget to change /etc/hosts
Nullability and Objective-C
啸笑天
Objective-C
https://developer.apple.com/swift/blog/?id=25
http://www.cocoachina.com/ios/20150601/11989.html
http://blog.csdn.net/zhangao0086/article/details/44409913
http://blog.sunnyxx
jsp中实现参数隐藏的两种方法
macroli
JavaScriptjsp
在一个JSP页面有一个链接,//确定是一个链接?点击弹出一个页面,需要传给这个页面一些参数。//正常的方法是设置弹出页面的src="***.do?p1=aaa&p2=bbb&p3=ccc"//确定目标URL是Action来处理?但是这样会在页面上看到传过来的参数,可能会不安全。要求实现src="***.do",参数通过其他方法传!//////
Bootstrap A标签关闭modal并打开新的链接解决方案
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
Bootstrap里面的js modal控件使用起来很方便,关闭也很简单。只需添加标签 data-dismiss="modal" 即可。
可是偏偏有时候需要a标签既要关闭modal,有要打开新的链接,尝试多种方法未果。只好使用原始js来控制。
<a href="#/group-buy" class="btn bt
二维数组在Java和C中的区别
流淚的芥末
javac二维数组数组
Java代码:
public class test03 {
public static void main(String[] args) {
int[][] a = {{1},{2,3},{4,5,6}};
System.out.println(a[0][1]);
}
}
运行结果:
Exception in thread "mai
systemctl命令用法
wmlJava
linuxsystemctl
对比表,以 apache / httpd 为例 任务 旧指令 新指令 使某服务自动启动 chkconfig --level 3 httpd on systemctl enable httpd.service 使某服务不自动启动 chkconfig --level 3 httpd off systemctl disable httpd.service 检查服务状态 service h