在一个大型社交网站上用PHP实现哪些东西是昂贵的

what things are costly to implement in PHP on a large social networking site?

本文关键字:实现 PHP 一个 大型 网站      更新时间:2023-10-16

经常听到应该在"后端"使用c++或Java来提高性能。我相信像Facebook这样的网站有基于c++的"服务"来实现关键性能。

例如:它是在任何时候更有效地取代SQL"SELECT * FROM ...."类型的命令通过PHP传递与其他东西,因为数据库是一个巨大的搜索?

一般来说,有人可以举例说明哪些事情是不应该使用PHP的,即使是在网站的早期阶段

我不是web开发人员,我也不是PHP程序员,这个问题需要更多的讨论,所以让我试试。

在这种超大类型的网站上,你需要智能和高效的算法,而不是高效的语言。谷歌网站的很多代码都是用Python编写的,与PHP相比,Python的速度是一样的。

我认为数据库需要以这样的方式构建:它返回尽可能少的数据,它需要尽可能少的查询次数,并且返回的数据需要尽可能少的处理才能显示。这同样适用于插入。

如果您设法以这种方式设计这样的页面,您的页面将不会是处理器详尽的,这意味着您将使用哪种语言无关紧要。

你也不需要像运行银行那样的防booletproof类型的数据库(100%事务完成,数据库锁定,…)所以你可以平衡可靠性和速度。但为此你需要特殊的数据库。

如何代替"SELECT…" ?数据库越大,就越应该使用SQL。如果访问速度很慢,请检查您使用的查询是否得到索引的良好支持。

你的问题的其余部分属于主观和争论的标题,但从痛苦的经验来看,我根本不会使用PHP来处理任何超出非常小的初始大小的期望。

像facebook这样的网站通常是进步的,经常有很多重写。但是,是的,它们确实经常运行在c++ DLL之类的文件上。SQL虽然是基于字符串的,但速度很快。需要记住的是,有数百种SQL处理软件。SQL是一种语言,不是软件。

是的,我同意,有很多DLL是用c++写的。甚至是在服务器上每秒更新一次的cron作业……但我认为facebook使用了几个数据库,这取决于你的位置,你将连接到该服务器,在数据更新后,自动后端脚本或代码将运行来同步这些数据库,