电子商务系统架构设计 - eCommerce System Architecture

电子商务系统根据实际的业务流程和业务需求,有不同的架构设计方案。下面是EntLib.com Team 分享的一个具体的架构方案,供参考和交流。
eCommerce System Architecture
  • Load balancer 负责多台Web servers负载均衡,将大量用户请求指引到多台Web servers。
  • Image Server 用来存放网站静态资源,如图片、CSS、Javascript、Jquery等等资源文件,可以单独针对静态资源设置Http Header缓存信息,另外也有助于之后将Image Server作为CDN源。
  • Monitor & Alert Server 主要是监测各类Server的运行情况,如CPU、请求数、请求等待时间、请求执行时间等等;此外还可用来接收并显示各类Application的异常信息,便于及时发现并处理各类系统运行异常。
  • Batch Job Server 用来承担一些后台异步处理的任务,有助于降低系统设计的复杂度和各个系统功能之间的耦合性。
  • Web Server 部署电子商务前台购物系统,如商品展示、购物车、用户注册登录......等等。
  • Back-end Business System 指后台业务处理系统,如订单处理、产品管理、客户管理、采购管理、财务管理、库存管理......等等,该系统主要给公司内部用户使用。
  • DB Server 根据业务和访问量大小,进行角色和功能的拆解,会有Core DB、Report DB、Query DB、Distributor DB等等,以适应高访问量和性能的要求。
  • Message Router / Bus 进行消息的异步传输和处理,系统功能模块之间实现松散耦合,可让系统承受更高的访问量和业务量,极大提高了系统的吞吐量和性能。 Message Bus的概念,即“消息总线”。发送消息是向“Message Bus”中发送,并且需要注明发送的消息类型;同时,任何人都可以随时从“Message Bus”中接听消息,并且可以通过消息类型来进行筛选,只接收你感兴趣的话题。
  • WMS 负责仓库的收货入库、订单出库、库存管理等。
如您对上述架构,或对ASP.NET/C# 电子商务系统的项目感兴趣,请联系