当前位置:  开发笔记 > Android > 正文

Magento从架构上来说,主流的评价如何?

先说下自己的一些看法。magento的可配置性很强,但是大量的xml导致了很多问题,比如,xml一个错误的配置很难跟踪到,而且没有工具,去维护xml会很困难。magento中存在的bug很多,比如,图片上传的那个flash工具,真的是各种恶心。还有在迁移过程中,很多时候并不顺利。还有比如合并CSS这个功能,基本上是不能用的。js框架还用了prototype也是个很头大的问题。等等。。。。
先说下自己的一些看法。
magento 的可配置性很强,但是大量的xml导致了很多问题,比如,xml一个错误的配置很难跟踪到,而且没有工具,去维护xml会很困难。

magento 中存在的bug很多,比如,图片上传的那个flash工具,真的是各种恶心。还有在迁移过程中,很多时候并不顺利。还有比如合并CSS这个功能,基本上是不能用的。

js框架还用了prototype也是个很头大的问题。

等等。。。。

回复内容:

magento不适合国内企业构建自己的电商平台,理由如下:1、magento开发人员在国内虽然不少,但基本上都是专做外包或外贸类型的,并没有进入深层次的定制开发,即一句话:在国内要招聘对magento熟悉的人难;
2、magento上手难:这一点能创业型的公司注重成本上来看是致命的;
3、magento由于自由的复杂型,magento2前的版本用的是EAV模型,虽然EAV模型听起来强大,但实际其复杂的逻辑其不利于快速开发,即开发效率低下,而且在magento2中已经彻底抛弃了EAV模型了。
4、升级困难:升级包括程序上的与数据结构上的,先不说程序上的那一大堆XML配置文件,就是数据表方面,由于magento2之前的采用的都是EAV模型,数据分散存储,不利于升级与迁移,迁移的话更是麻烦多多,错了一条记录都会记致命的异常。
5、复杂的逻辑必然导致执行效率低下。
从国内用magento来构建国内电商平台的数量上来看,magento在国内电商平台上根本不算主流。有时用magento我都有这样的感觉:magento的强大是否与我有关呢? magento很强大,只要你肯花功夫,他什么都能给你,多店铺什么的完全没有问题,如果单为了求快速就浪费了magento,基本上你需要的功能它都有,还有很多免费和收费的第三方插件,收费的也不贵。说magento性能不好都是技术不过硬,计算机基础不好的人,只要你技术过硬计算机基础好性能都不是问题。 magento处理几十万产品?
几十万产品,日访问量5万ip,两天独立主机都要瘫痪,magneto的EAV模型,查一个产品join大约十几个表,十几万就等着死吧。,当产品10万,对应的custom option 大约得40万行,甚至更多,除非你重写产品模块。
magento的初始化非常雍容,大量的xml初始化,或许你会告诉我,他可以缓存起来,就算是缓存,这么大的量也得解析吧
网上很多人,说magento很好用,然后扯优化,不建议,就说水平不行,magento的官网推荐产品是5000个,因为大量的表join不适合太多产品数据,了解EAV就会懂这个
其次就是magento的index manager 为了提高速度,magento吧eav表重新搞成flat 表,还有重写等其他,设计是很好的,但是在线上,时间久了,索引每段时间都会出问题,新产品上架频繁,经常出现sku搜索不到,url rewrite部分失效问题,需要重新刷新索引,重新刷新索引,产品少还好说,如果产品多,然后再开10个语言,数据就很大,之前维护的magento网站,3万产品,12个strore(语言),刷新全部索引,没有8个小时,根本不行,而且刷新index的时候会造成锁表,造成线上不稳定。
好了就说这些吧,magento只是适合中小网站,二次开发也很费劲,如果网站有大量的功能重构,噩梦就开始了,让你开发了50个模块左右,性能有多卡就知道了
太灵活的xml,造成出了问题,排查问题比较费劲,有时候开发一个功能,造成其他的地方失效。
对于高并发的,日均10万IP的magento网站,没有varnish
根本扛不住,或许有人说,自己在线下测试并发多块多快,具体真正的线上就看出来,没有varnish缓存抗,尤其是做广告,流量不均衡,有时候流量一大,magento能卡成一坨屎,linux负载飙升。
总之,magento的所谓优化,基本都是各个层缓存,xml加载的雍容初始化,和product 的eav模型的大量join,注定这是一个笨家伙。
上面完全的否定magneto的性能,从另外一个角度看,magento的框架结构层次,堪称架构的教学课程!引入xml 和 eav 的设计模式,让magento的插件开发基本可以实现在不修改源代码的情况下修改任意功能,这是其他的框架无法比拟的。总是,magento不适合做1万+产品的应用。 当初公司要做一个多店商城,开始准备用magento.
不过速度太慢,由于是zf框架,太过于复杂。

最后选择了opencart,功能自己开发。类CI模版的,感觉不错。
不过大多数模块都自己重写了。 Magento2中文版发布 可在麦进斗科技网站免费下载 通过不断的本土化深入开发,我们相信Magento麦进斗在中文内贸商城上逐步实现领先优势,在全球贸易上没有同档次的竞争对手。

magento社区版优点(注意,仅仅是社区版,更遑论还有无数的插件和第三方应用支持,还有更强大的企业版)

1·功能强大,免费开源,没有许可证费用,代码在自己手里,完全属于自己的网店(社区版)

2·多货币支持,600多种支付方式,支持paypal,支付宝

3·本地化搭建,对本区域客户更加友好

4·第三方平台整合,可以与亚马逊,ebay,淘宝整合

5·完整的插件整合系统(2015统计,有8000个插件可以供选择),可以实现强大的功能拓展性

5·完美支持seo优化,支持url重写,从底层至模板,均以搜索引擎优化作为重要的设计要求。 Google站点地图

6·过亿次下载,除了有官方升级支持,还有magento社区,与爱好者一起交流,帮你解决问题。

7·用户角色管理功能,适合多职位,多用户操作,非常适合中大型企业以及多个网站整体把控的需求(如销售专员只可以访问销售板块,客服只能访问客户反馈板块)

8·支持企业应用集成,与ERP,WMS,CRM等软件无缝集成

9·强大的商品属性集合(如团购,批量销售,老客户专享价格等)。

10.以及灵活化的税率管理。

11.多店面管理多店系统可以让您配置多个网店,多个域名,但使用统一的管理控制台,节约您管理的时间和成本。

12.高级站内搜索引擎,多种搜索过滤选项,提供更加准确的搜索结果。

说实在Magneto确实太复杂,我自己用了大概7/8年了,遇到几百个问题,但我就老外论坛找解决方案,自己发问题,如果你是搞开发的,有难度其实才好玩,我想要的模块基本都能买到,不然找人开发也不贵几百刀就搞定,现在出了2.0版本很想升级看看 我自己经验来看,如果请技术好(不是国内哪些建站公司的所谓技术哦,你懂的),可以针对magento进行针对国内客户需求进行改写。因为Magento的高扩展性问主使用Magento是必须的,如果企业做到后面越做越大,就会深深的明白Magento有多强大。 或许M2能改变速度这一现状。 用magento一定是做海外b2c, 早几年我有过接触。但看了看里边的代码,感觉跟国内ec之类有些不同。如后来在wordpress里感觉的一样,老外模板语言不像国内这么直白简单。
说重点,我对zcart和magento一直神往,但不曾有经验。不过可以给你提供国内两个主流b2c的经验:shopex最要批评,后台24小时不间断被工具 漏洞太多 弱点太多 甚至还有不稳定。 ecshop很好,但很老 会有漏洞不可能再升级了。当初客户也是要求ec升级shopex,后悔了。。。。。 就这吧,需要跟我探讨可以联系我
推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有