第1章 网上商城与网上商店
1.1 网上商城与商店系统的现状
电子商务近几年在国内的高速发展加速了为电子商务服务的软件行业的发展,随之诞生了许多与之密切相关的网店和网上商城系统。对于网上商城的实现技术,无论是开源的还是商业的,都非常的多。这里说的网上商城系统,指的是支持多商户的大卖场模式;而网上商店,一般指的是独立B2C网站。在软件架构上,两者也是有所不同的,即一个是支持多租户模式的,一个是不支持多租户模式的。多租户,也是本书讨论的核心之一。
目前市面上的网上商城和网上商店系统,著名的如上海商派的Shopex和Ecshop以及Ecmall,在国内市场占有率可能已经超过70%,形成一支独大局面。外贸行业使用比较多的国外的Zen Cart网店系统,面向企业级应用Magento网店系统。国内比较活跃的网店系统还有HiShop、V5Shop等网店系统。不过,无论是开源的ECShop、ECMall、Zend Cart、Magento,还是市场占有率最高的不开源的Shopex,它们都是基于PHP技术,HiShop和V5Shop则是基于.NET技术。也就是说,无论是国际还是国内市场上,主流网店系统都是基于PHP语言的。PHP最初是1994年Rasmus Lerdorf创建的,在1995年以Personal Home Page Tools(PHP Tools)开始对外发表第一个版本,最开始PHP的目标是针对个人网页而不是针对企业及应用,所以,无论是ECShop也好,Shopex也好,使用最多的还是小企业。当然,在上海商派的不懈努力与开拓下,目前使用Shopex的大企业也越来越多了,商派也在推出自己的“淘系列”,其中包括面向淘宝卖家的“EC-ERP系统”。此系统居然打上了“ERP”的标签,不知道用友、金蝶这些传统ERP厂商看到了会作何感想。不过,大企业应用Shopex,仅仅是作为自己独立网上商店的应用,但如何与大企业客户内部已有的ERP、管理信息系统做对接,始终是摆在上海商派以及其他网店系统中的一个不可跨越的难题。我最近也在跟公司其他同事一起为一个大型B2B网站开发一套B2B2C的网店系统,用户要开发的B2B系统,包括商品目录管理、门店订单管理、配送中心管理、供应商管理等,这些都是这个系统的核心。数据库设计跟Shopex肯定是完全不同的,如果客户前端B2C采用Shopex的话,与B2B的接口谁来做?如何做?而且,客户的B2B系统支持分布式的架构,由B2C商城系统同时导数据到很多台分布式机器上是很麻烦的。所以客户最后还是决定不采用Shopex了。这也是我们为什么要做一套基于Java和J2EE架构的网上商城系统的原因。
有人也许会问,基于Java和J2EE平台的独立网店系统平台,不也同样会面临着跟Shopex一样的数据库的导入导出问题?这个问题问得很好。其实,基于Java和J2EE的网店系统的一个最大好处就是集成问题,它可以跟企业已有的ERP系统在架构上进行很好的集成。规模稍大一些的企业,内部的ERP以及其他管理系统采用的一般都会是基于Java和J2EE架构,比如我们可以采用消息中间件同步网上商城、B2B系统以及各个门店的POS系统,所以基于Java和J2EE架构的系统,一般是应用于具有一定规模的企业,那么这套基于J2EE架构的网店系统,也将适用于同样规模的企业。而且各类比较成熟的商业消息中间件,几乎都是基于Java的,企业内部信息系统一般也会是采用Oracle数据库的。
这里并不是讨论哪个语言好,哪个语言开发的软件更有前途的问题,而是针对不同的市场,我们可以选择不同的开发技术,没有哪一套软件能够包打天下,适用于所有企业。由于淘宝的高速发展,造就了目前全民电子商务的机会,再加上国内电子商务近两年也在快速地发展,给了上海商派一个很好的发展机遇。随着电子商务的不断深入,企业应用也会越来越复杂,与旧系统集成的工作也会越来越多,IT系统外包不仅包括从国外拿订单到国内来做,也包括国内的电子商务企业外包它们的IT系统给更专业的公司来维护。上海商派的“分销王”系统就是冲着这个目标去的,不过,还是那句话,它们的系统,更多的是被小企业采用,如何跟规模较大的企业合作,尤其是基于B2B2C架构的系统,则是基于Java和J2EE系统架构的网上商城系统的机会。