运行在阿里云ECS上的PHP-FPM+Nginx
小编为您收集和整理了运行在阿里云ECS上的PHP-FPM+Nginx的相关内容:集装箱码头出现后,集装箱技术在互联网领域得到空前的普及。无论是大公司还是钓市初创公司,农民基本上都会在各种技术社区或各种演讲会上学习相关技术。作为一个跳楼创业公司,我们也不例外。去年,我们做了一些关于
集装箱码头出现后,集装箱技术在互联网领域得到空前的普及。无论是大公司还是钓市初创公司,农民基本上都会在各种技术社区或各种演讲会上学习相关技术。作为一个跳楼创业公司,我们也不例外。去年,我们做了一些关于Docker.Solution的事情,一年前测试了一些程序,今天我总结了在践踏坑的过程中遇到的坑和一些想法,希望能给认识Docker并渴望尝试的人一些启示。当然,在这方面有丰富经验的学生更欢迎提出一些建议或建议。
我们项目的标准PHP技术栈:PHP-FPM+Nginx运行在阿里云的ECS上,数据库也是阿里云的服务。
从理论上讲,对于一般的刁丝创投公司的刁丝项目来说,没有必要使用过于复杂的技术,对新技术的约束也是大农的职业道德。在项目上线以来遇到的各种问题中,如上一篇文章中提到的lar艾薇el的性能问题,而HHVM或PHP7,这些新技术都提到性能,所有的突然切换风险都太大,因此可以使用Container运行一些服务测试;例如,以前有一个BUG,一个接口问题占用了太多的内存,导致系统响应超时;例如,在看过其他人在各种技术会议上共享的经验之后,我真的很想自己尝试一下。
根据Docker的哲学,每个容器都是一个独立的服务,服务通过接口相互协作,采用的方案是PHP-FPM和Nginx分别在不同的容器中运行,PHP-FPM容器将端口暴露给Nginx容器。
容器之间的网络通信最初使用Docker自己的链接。虽然链接很简单,但它不是很有用。Link是通过在启动容器时修改/ETC/HOST文件来实现的。当时遇到的一个问题是,容器的IP在通过链接重新启动之后发生了变化,但是容器中没有链接。还有一个问题是,当同一个服务需要打开多个容器时,当然,如果它以集群方式运行,则更加困难,因此链接只能在本地开发、本地开发中发挥作用。领事做服务发现。领事不在这里介绍。感兴趣的学生可以阅读这篇文章:使用领事和注册官为码头集装箱服务发现。
然后放在主机,和代码的目录是安装在容器启动。根据所使用的接口方案,接口分为几个不同的容器中运行,和资源隔离的应力进行了测试。符合预期,很满意。然后,我们选择了两个容器运行hhvm测试和性能真的提高了很多。整体结构如下图所示:
这可以正常使用,然后处理日志。首先,主机上安装了一个目录来存储日志,但这与Docker的想法不太一致。所以我们得到了一个LogStash容器,并把各种容器的日志写入LogSTASH容器中。
然后我们监控集装箱。我们使用ONAPM服务,这并不坏。还有其他开源工具可供选择,但使用ONAPM服务更方便。
一个完整的技术堆栈已经建立,运行几天没有问题。当然,作为搜索者,有更高的要求。后来,我想到了一个问题:Docker的想法是容器是一个完整的服务,但是我们使用的是在容器中运行PHP-FPM,代码不在容器中,而是通过目录安装来实现这一点。追求完美:完美之路
事实上,把代码放入容器不仅仅是为了思想的完美,而且为了另一个目的:基于DOCKER的CI。基本的想法是每一个版本都建立了一个新的图像版本。在编译过程中,代码需要更新到最新版本,然后安装依赖的第三方库和其他与业务相关的预处理。构建完成后,推到注册表,然后在每个节点下拉,重新启动容器。整个过程
怎么样这是完美的。如果现实是如此完美,但现实总是会有各种各样的坑等待着你!
首先,在使用这个机制之前,发布代码、合并分支只需几秒钟,然后在每个节点下拉代码。但是在使用DOCKER之后,合并分支需要建立一个镜像,建立一个推送寄存器,然后把镜面拉到每个节点,更不用说说了。它还需要几分钟。此时,一些学生可能会说DOCKER镜像的原理不是层机制。是的,是层。每个构建只需要更新需要更新的层,但是仍然没有办法只更新那些像Git之类的文件,至少更新整个项目的代码目录。
其次,我们之前只需要更新代码,但现在我们需要重新启动容器。最初,重新启动容器非常快,但是PHP-FPM在容器中运行非常慢。我猜它会发送一个SigTalk的信号到集装箱的过程中,当DOCKER停止执行。PHP-FPM在处理SIGTERM信号时会做一些清理工作,节点至少有几十个容器,每个容器都会重新启动,这很耗时。
在使用完美机制之后,这种简单的发布需要几分钟。尽管整个过程是完全自动的,但是没有必要在完美理念上妥协。
此外,还有一个非常奇怪的问题:当容器升级到1.10时,在容器启动后经常会遇到端口不可通行。此时,如果您进入容器发起一个网络请求,如IP低于ping时,端口将恢复正常。长期使用各种工具进行调试,仍然没有发现问题所在,DiaosiPioneer公司也没有精力研究这样一个深奥的探索。莱姆,不得不暂时搁置一段时间。
虽然没有理想的完美解决方案,但是也使整个框架更加方便扩展,比如在交通高峰期快速上架的节点。由于近年来云计算的发展,这个问题也更容易解决。ODE放置在主机目录中,所以基本上每个主机只需要三个条件就可以上网:
在购买ECS之后,完成上述操作以生成系统映像,当新节点需要联机时,该系统映像可以直接用于配置服务器。已被领事提及。
DOCKER群将用于未来的集群管理。当对调度的需求很大时,可以尝试使用Mesos或Kubernetes。然而,集装箱的生态链发展很快,在需要时可能有更好的解决方案。
简单地概括整个感知过程,从体系结构的角度来看,永远不会有完美的体系结构,只有最适合自己的体系结构。团队对各种技术的理解以及技术选择的复杂性。不要看几个牛分享他们的技术架构,而是急于尝试他们自己的项目。最后,即使他们做不到,也会给其他人留下一团糟去清理。最后,在迭代过程中保持项目简单的能力始终是衡量代码农民技术水平的一个重要标准。
以上就是小编为您收集和整理的运行在阿里云ECS上的PHP相关内容,如果对您有帮助,请帮忙分享这篇文章^_^
本文来源: https://www.tushuolishi.com/a/665d29405f5eeb5e8d0c7cbd.html
相关推荐
热门专题
南北朝的歌妓苏小小,为何年仅二十三岁就凋零了呢?
说起古代四大名妓,相信大家对她们并不陌生,即:北宋时期的李师师、南北朝之际的苏小小、明朝的陈圆圆和清朝初年的柳如是,感兴趣的读者可以跟着途说历史网小编一起往下看。这四大名妓能歌善舞,才艺双绝,被当时之人称古代的青楼名妓是怎么收费的?唐朝身价最高的名妓值多少钱?
今天途说历史网小编为大家带来古代的青楼名妓是怎么收费的?希望对你们能有所帮助。此女堪称是历史上身价最高的青楼名妓,看一眼的价格可以买辆轿车与今天不一样,在古代,开设青楼是属于合法的,在那个时候,逛青楼不仅吕后的外孙女张嫣11岁当皇后,为何到死还是处子之身呢?
在我们现代社会中,已经禁止了近亲结婚,但在中国古代时期,近亲结婚却是一件司空见惯的事情。提到中国古代中的近亲结婚,接下来我们要讲到的这一位女子便是其中的典型,她就是汉惠帝刘盈身边的皇后——张嫣。张嫣本城隍姥爷是怎么来的?城隍的本意是什么?
“城隍”本意是什么?下面途说历史网小编为大家带来详细的文章介绍。千年以前,在我国古代某座城市的一条普通街道上,可能不会有商人的店铺、不会有官府的衙门、不会有烟花柳巷、不会有高门豪宅、不会有佛寺熏风,但一定和珅往灾粮中掺沙子,只是因为他想贪污吗?
可能在很多人的眼里,和珅一直都是一个十恶不赦的贪官形象,而这位乾隆身边的大红人在乾隆刚去世便被嘉庆帝抄了家,据说,抄出来的财富比国库的都多,然而在历史上,和珅并不是一件好事都没有做过,今天途说历史网小编就古代的美女主动献身,为何却往往下场并不好呢?
俗话说女追男,隔层纸,一捅就破,得到容易,男人会不会珍惜,就难说了。但古代的许多美女笃信“万般皆下品,唯有献身高”,大玩轻率献身的两性游戏。孔子的母亲颜徵在,就是个例子。十六七的年纪,闭月羞花似的容貌揭秘:为什么古代青楼女子从来不会怀孕?
古代的青楼女子也分两种,一种样貌出众的女子,这类女子会从小培养,琴棋书画,无所不精,而青楼培养她们的目的,就是为了更好满足那些达官贵人兴致。所以,这类女子待遇会比一般女子的待遇好很多,如果幸运的话,遇李广在边疆驻守时,经历过什么奇幻的故事?
据传说,西汉的著名飞将军李广曾在边疆驻守时经历过这么一段奇幻的故事,感兴趣的读者可以跟着途说历史网小编一起往下看。有一天,李广和他的同伴骑马打猎,突然发现白一只狐在大雪中奔跑。这只狐狸十分可爱,浑身雪白色揭秘:古代大户人家买一个丫鬟需要花多少银子?
可以说,在旧社会,老百姓就算是卖儿卖女也不一定能得到温饱。一旦将儿女们卖给别人,那么,他们将会世世代代为人奴仆,没有自己的人身自由,生活会很凄惨。一般,男孩子会被卖去当小厮,女孩子则会被卖去当丫鬟。在笮融曾经杀过自己的恩人,为何后世却得到佛教的追捧
三国乱世英雄辈出,同样也有许多小人,其中笮融就是这样的一类人,更是被称为三国时最卑鄙的将领,接下来听听途说历史网小编讲一讲他的一些故事。在很早之前,徐州牧陶谦很信任笮融,还让笮融担任下邳的国相,甚至还让其