加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_宿迁站长网 (https://www.0527zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

类似淘宝用php做前端,java做后端的架构是怎样的?

发布时间:2022-09-12 17:10:58 所属栏目:PHP教程 来源:
导读:  类似淘宝用php做前端,java做后端的架构是怎样的?

  问题描述:

  RT.....顺便问一下,像类似淘宝这样的大型网站,为什么会使用php来做前端呢?php本身不是偏后端的语言吗?而且对于前端而言,不是
  类似淘宝用php做前端,java做后端的架构是怎样的?
 
  问题描述:
 
  RT.....顺便问一下,像类似淘宝这样的大型网站,为什么会使用php来做前端呢?php本身不是偏后端的语言吗?而且对于前端而言,不是可以用js来处理后端的数据吗?
 
  第 1 个答案:
 
  现在淘宝逐渐用nodejs作前端控制器
 
  参考淘宝UED《前后端分离的思考与实践》
 
  基于NodeJS的前后端分离
 
  基于前后端分离的模版探索
 
  Midway-ModelProxy — 轻量级的接口配置建模框架
 
  前后端分离模式下的安全解决方案
 
  基于前后端分离的多终端适配
 
  Nginx + Node.js + Java 的软件栈部署实践
 
  第 2 个答案:
 
  本质上前端后端的区分是以“到用户的距离”划分的
 
  比较通行的划分是在浏览器/客户端到服务器之间,以用户的http请求为准划线,js css dom flash ios android这些算前,后端负责业务和数据存储。因为通行的开源方案,rdbms配合缓存,队列,开源搜索引擎等等足以支持,于是这个直接的划分比较有效。客户端有十种,服务器也就不到百台,大家的责任任务比较平衡。
 
  当厂子的量级大到一定程度,简单的开源方案很难盖的住大量的用户,水平扩容,立体的灾备等等问题。这时客户端还是10种,可服务器却一下子百台千台,一个机房一个机房来算了。此时,上述的普通划分就没有意义了。此时划分线便自然向后移动到业务和存储/支持之间,有了题主描述的“java后,php+js前”或是“cpp后,php+js前”之类的划分。
 
  并不是php的角色变化了,而是原来insert into就写完的下单变得需要大量开发负责各种server运维告警负载均衡读写分离等等等等事情。
 
  换种说法,10个开发的业务可能5个写jscss,5个写php,但100个开发的业务,可能就是10个jscss,10个安卓ios,35个写php,30个写c/java给php调用,还要有10个运维,5个组长
 
  第 3 个答案:
 
  使用PHP做前端是说web服务,接口等用PHP编写,后台的数据逻辑用Java做。至于淘宝怎么做的。。。不清楚
 
  第 4 个答案:
 
  通俗点说,前后端分离,就是服务化了,java做服务供各种客户端调用,当然包括php了。
 
  第 5 个答案:
 
  不建议这样做,淘宝在早期是全部 php 实现的,后面架构大调整,开始往 java 转换php后端,所以遗留了一些 php实现 web 层,java只是提供后台服务这样的模式,这是由历史原因的,并不是由于这种方案合理。
 
  在团队规模比较小、技术力量或业务流量都没有达到一定规模的情况下,建议都是用一种语言实现,这样不管是从效率上,沟通上等都会更好更合理。
 
  第 6 个答案:
 
  曾经做过类似的实验,所以可以给题主一些个人的看法以及相关的内容。
 
  1)一个不完善的说明,初衷是说服架构师选择node做前段Controller。
 
  docs/MT-Experimentations/Trying-For-Separating-FrontEnd-From-BackEnd.md
 
  2)一个未完成的项目,目的是给架构做一个演示站。
 
  docs/MT-Projects/MT-NOTES.md
 
  3)一个个人的实践网站,纯属自卖自夸。
 
  总结一下,其实语言不是很重要,重要的分离的思想,以及带来的好处。
 
  第 7 个答案:
 
  没有人说淘宝是用PHP做前端呀。这里的“前端”只是说淘宝的架构也许是
 
  HTML、JS、CSS -----> PHP -----> Java
 
  这样的层次而已。
 
  第 8 个答案:
 
  FACEBOOK 把php 归为前端,C/C++才是后端
 
  第 9 个答案:
 
  淘宝大部分业务模块是前端html引擎+java,有部分是html+nodejs+java,也有用php的。
 
  看的文章
 
  第 10 个答案:
 
  其实JAVA的角色相当于中间件,提供高性能的数据服务提供能力。并且数据层一般很少改变,而且JAVA在安全的性能上明显是强于PHP的,但是灵活性,发布麻烦。但是PHP这种脚本语言发布很容易,上线快。
 
  一般大的系统都是 view->脚本语言(python,nodejs,php etc)->c/c++/java 这种结构,这样的一个好处就是各自发挥优势,微博就是这种架构,淘宝中后期也是这样。目前各种语言百发齐放,不同的小业务不同的开发语言。
 
  第 11 个答案:
 
  哪里说淘宝前端用的PHP的, 你看下淘宝每年招人的JD不就知道了,用PHP用的很少
 
  用PHP多的是Facebook, baidu, QQ
 
  Facebook嫌PHP的性能差,有一个TEAM又用C++结合JIT做了一个HHVM
 
  怎么说都不是PHP搞前端的节奏啊 是有些全栈的PHP框架比如Yii,但PHP是前端...
 
  下一节:qrsctl 删除多个文件的问题
 
  qrsctl del 关于这行命令,当我写入 qrsctl aaa bbb/ccc.txt 时,删除是成功的。可当我输入 qrsctl aaa bbb/ ...
 

(编辑:云计算网_宿迁站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!