国内SNS(社交)网站系统的程序一般都是由PHP语言开发的,架构模式都是主流的LNMP,为什么会这样呢?
其实原因很简单,SNS类型网站适用于用LNMP架构模式来部署,主要原因有以下:
1、首先从开发语言上说,PHP虽然是一门脚本语言,但它的底层是由C开发的,性能上比Java和.NET更具优势;另外从开发效率上说,PHP因其内置函数库十分丰富,所以开发起来比Java、.NET要节省人力,工时短。互联网时代,早上线一天,可能就多占据一份市场!
2、另外从SNS网站性质上说,强交互型的网站有几个特点:
流量大
响应快
负载高
这就要求SNS网站的服务器集群数量较多,属于中大型的规模。这就涉及到经济方面的考虑了,也就迫使我们选择开源免费的技术方案。
而微软系,大家都懂的,一是封闭,二是收费!所以我们说.NET体系不适合做互联网项目,只适合做做传统的客户端应用。
而Java呢,它其实是非常适合做互联网项目的,它其实在SNS项目中同样可以担当主力开发语言,只不过它的开发周期较PHP长,投入成本较大。
总结来说PHP之所以在SNS网站中是主选语言,原因就是经济上的考虑:
开发周期短,节省人力;
跨平台支持,Linux、MySQL都是开源的,所以后期不存在授权费用,节省了软件投入成本;试想一下,如果选择了微软系,万一哪天微软找到你说你的服务器系统是盗版的怎么办?
创业型公司前期投入都少,PHP只需要小团队开发,而Java、.NET较于复杂;
同样的需求,用PHP实现,占用服务器资源少,而
.NET和Java占用服务器资源更大;对服务器的配置要求更高!
借助网络上的一句话“PHP是世界上最好的语言,没有之一!”php多数是开发单一系统参与者,单一场景,固定业务行为业务系统,对于单体架构而言java未必比php更适合。
说服团队转换平台你就需要从业务,应用,安全以及技术几个层面去发现需求。
业务层面:更多的系统参与者,同一领域更多的业务场景,更多的解耦需求,更快速严谨的迭代。
应用层面: 更多的用例,更多的边界隔离需要,更多的跨边界调用,更灵活的业务支撑
安全层面: 更多的安全威胁,更多的降低bug的需要,更为复杂的安全解决方案
技术层面: 高可用 高稳定性 高并发
然后再从这些层面发展java比php更高的地方,架构不存在好恶问题,只有取舍问题,不能脱离实际,不顾人力 时间 边际等成本拍脑袋决定
PHP的特性和优点:
1、快捷性,程序开发快,运行快,前期保护费用低,完美支持移动APP开发。PHP已经是国际大部门Web项手段首选,以至众多公司从其它语言(如ASP,JAVA)转到了PHP,不仅仅国内的腾讯、百度、淘宝、京东、点评网、糯米网,甚至国外的大型网站例如facebook、youtobe、google也转到用PHP来开发。微信官网宣布的开发者文档就是PHP版。今朝全球5000万互联网网站中,有60%以上使用着PHP;PHP是全球五大最受欢迎的编程语言之一,AlexaTOP500中国网站排名,有394家使用了PHP,比例为78.8%。
2、跨平台性强,由于PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS、Mac OS下。
3、运营高效性。相对java等,PHP消耗相当少的系统资源。由于PHP运行在相应的平台解释器上,消耗系统资源比较少,运行的环境简单,所以效率就很高。
4、面向过程和面向对象并用。在PHP语言的使用中,可以分别使用面向过程和面向对象,而且可以将PHP面向过程和面向对象两者一起混用,这是其他很多编程语言是做不到的。
5、PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法,兼容性强。
6、数据库连接的广泛性。PHP支持几乎所有流行的数据库以及操作系统,如MySQL、ODBC、Oracle、AdabasD、S等,PHP是利用编译的不同函数与这些数据库建立起连接的,PHPLIB就是常用的为一般事务提供的基库。。
7、PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比:PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。
不用怼。
因为只有Facebook和淘宝把php发挥到了极致,绝大部分公司连php一半都没发挥到,就想着用各种新技术替换,最后弄的公司活不下去了。
PHP依然是目前最轻便的web语言。
JAVA的风格和php5非常像,如果由JAVA转PHP,那就具有一些语法上的先天优势。
比如吧
class a
public static function test
会不会觉得很像呢?
影响PHP水平主要有算法等基本功,以及对web的了解程度。如果没有用jsp做过网站,可能还需要多多接触前端知识。很多PHP都是很全能的,但是JAVA程序员则了解的相对较少(至少我目前遇上的人来看是这样的)
以上就是关于java转php教程以及SNS实现采用的技术大多是PHP的相关回答,有更多疑问可以加微。Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有