一、描述
晚上刚洗漱完之后听同学说:B站挂了?woc?真挂了?
嗯!确实挂了,404的状态码,懂的都懂。
不过,最下面的tengine字眼吸引了的注意,一时兴起,打算看看它是个什么东西,起码搞一个hello world出来,所以特意去购买了一台服务器,打算搞一个hello tengine
服务器就位,准备开干! 二、官方的介绍 Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网、天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。
从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。Tengine是社区合作的成果,们欢迎大家参与其中,贡献自己的力量。 三、下载、编译、安装
源码下载地址:http://tengine.taobao.org/download.html
解压:
-rw-r--r-- 1 root root 2848144 7月 13 23:13 tengine-2.3.3.tar.gz
[root@VM-0-4-centos ~] tar -zxvf tengine-2.3.3.tar.gz
安装:
切换进tengine-2.3.3目录
安装依赖
$ yum install gcc-devel openssl-devel zlib-devel pcre-devel
通过 --prefix 指定安装目录
[root@VM-0-4-centos sbin] ./configure --prefix=/usr/local/tengine
$ make && make install
编译时有很多可选项,感兴趣可以参考这个链接:http://tengine.taobao.org/document_cn/install_cn.html
Tengine默认将安装在/usr/local/nginx目录。你可以用'–prefix'来指定你想要的安装目录。
四、启动
切换到安装目录 $ cd /usr/local/tengine
目录详情如下,整体不难看懂,bin文件、配置文件、html文件,大概看起来和使用nginx没啥区别。默认的配置文件也是conf/nginx.conf
conf目录中存放的是配置文件,看了一下配置文件中的sever模块,和nginx的配置相当,熟悉的location语法和80端口、熟悉的gzip压缩传输…
再去稍微修改一下它的html代码
切换进sbin目录,通过nginx命令启动tengine
-rwxr-xr-x 1 root root 6291432 7月 13 23:55 nginx
[root@VM-0-4-centos sbin] ./nginx
看一下效果:
最后再看一看熟悉的404:
五、小结
哎,搞了一会,发现没啥难度。从看它的官网再到编译安装启动,大概也就十几二十分钟的样子,使用起来和nginx几乎没啥差别,零难度,易上手。感觉用起来还是个nginx
官网也有介绍说tengine相对于nginx有很多优化点如下: 比如有更友好的错误提示:比如这次们都能看到B站出问题的机器到hostname(通过hostname可以获取机器ip甚至是直接登陆上机器)
更多的好处,大家可以自己去看官网瞄一眼哦~ http://tengine.taobao.org/documentation.html 六、推荐阅读
- MySQL的修仙之路,图文谈谈如何学MySQL、如何进阶!(已发布)
- 面前突击!33道数据库高频面试题,你值得拥有!(已发布)
- 大家常说的基数是什么?(已发布)
- 讲讲什么是慢查!如何监控?如何排查?(已发布)
- 对NotNull字段插入Null值有啥现象?(已发布)
- 能谈谈 date、datetime、time、timestamp、year的区别吗?(已发布)
- 了解数据库的查询缓存和BufferPool吗?谈谈看!(已发布)
- 你知道数据库缓冲池中的LRU-List吗?(已发布)
- 谈谈数据库缓冲池中的Free-List?(已发布)
- 谈谈数据库缓冲池中的Flush-List?(已发布)
- 了解脏页刷回磁盘的时机吗?(已发布)
- 用十一张图讲清楚,当你CRUD时BufferPool中发生了什么!以及BufferPool的优化!(已发布)
- 听说过表空间没?什么是表空间?什么是数据表?(已发布)
- 谈谈MySQL的:数据区、数据段、数据页、数据页究竟长什么样?了解数据页分裂吗?谈谈看!(已发布)
- 谈谈MySQL的行记录是什么?长啥样?(已发布)
- 了解MySQL的行溢出机制吗?(已发布)
- 说说fsync这个系统调用吧! (已发布)
- 简述undo log、truncate、以及undo log如何帮你回滚事物! (已发布)
- 劝!这位年轻人不讲MVCC,耗子尾汁! (已发布)
- MySQL的崩溃恢复到底是怎么回事? (已发布)
- MySQL的binlog有啥用?谁写的?在哪里?怎么配置 (已发布)
- MySQL的bin log的写入机制 (已发布)
- 删库后!除了跑路还能干什么?(已发布)
- 自导自演的面试现场,趣学数据库的10种文件(已发布)
- 大型面试现场:一条update sql执行都经历什么?(已发布)
- 大型翻车现场:如何实现记录存在的话就更新,如果记录不存在的话就插入。(已发布)
- 视频+图文串讲:MySQL 行锁、间隙锁、Next-Key-Lock、以及实现记录存在的话就更新,如果记录不存在的话就插入如何保证并发安全(已发布)
- 自导自演的面试现场:说说char 和 varchar的区别你了解多少?。(已发布)
- 自导自演的面试现场之–你竟然不了解MySQL的组提交?。(已发布)
- 全网最清楚的:MySQL的insert buffer和change buffer 串讲(已发布)
- Double Write并不难理解
- 简述MySQL的三大范式
- 盘点各种登陆数据库的方式
- 面试现场:join联表的注意点、有哪些联表查询方式、真题…
- 心里有点树
- 心里有点B树
- 聚簇索引到底是怎么回事?是如何长高的?
- 8分钟回顾MySQL的索引
原文创作:赐白日梦
原文链接:https://www.cnblogs.com/ZhuChangwu/archive/2021/07/14/15009089.html
文章列表
- 面试官问我:记录存在就更新,不存在就插入有啥思路怎么办?愣着干嘛?进来白嫖啊! 上
- 面试官问我:char和varchar的区别 怎么办?愣着干嘛?进来白嫖啊!
- 面试官竟然疯狂问我数据库的组提交?怎么办?愣着干嘛?进来白嫖呀!
- 面试官疯狂问我联表查询怎么办? 愣着干嘛?进来白嫖啊!
- 面试官狂问我各种锁怎么办?愣着干嘛?进来白嫖啊!
- 这是一篇水文!三大范式
- 这一次!我在百度告诉你,当你请求百度时都发生了什么
- 视频+图文串讲:MySQL 行锁、间隙锁、NextKeyLock、以及实现记录存在的话就更新,如果记录不存在的话就插入如何保证并发安全
- 自导自演的面试现场:说说char 和 varchar的区别你了解多少?
- 自导自演的面试现场之你竟然不了解MySQL的组提交?
- 程序挂了之后别再跟我说让我帮你重启啦! 让supervisor帮你搞定
- 白日梦的MySQL专题第38篇文章8分钟回顾MySQL的索引
- 白日梦的MySQL专题第33篇:各种登陆MySQL的骚操作
- 白日梦的Elasticsearch实战笔记,ES账号免费借用、32个查询案例、15个聚合案例、7个查询优化技巧。
- 白日梦的ES笔记三:万字长文 Elasticsearch基础概念统一扫盲
- 大型面试现场:一条update sql执行都经历什么?
- 大型面试现场,趣学MySQL的10种文件
- 大型翻车现场:如何实现记录存在的话就更新,如果记录不存在的话就插入。很简单、但是很实用
- 后端如何存储表情包?
- 全网最清楚的:MySQL的insert buffer和change buffer 串讲
- 云原生学习筑基 ~ 组网必备知识点 ~ DNS服务
- 为研发同学定制的MySQL面试指南 连载中
- 一看就懂的MySQL的聚簇索引,以及聚簇索引是如何长高的
- 一款基于SVM算法的分布式法律助手
- MySQL的Double Write并不难理解
- Docker里面没有你期望的命令、甚至没有yum怎么办?
- B站挂了之后出现的tengine是个啥?