已有20,528人免费试用,您也赶快加入吧!
多用户商城系统 > B2B2C商城系统 > 电子商务网站设计如何打造得又小又精

电子商务网站设计如何打造得又小又精

发布时间:2020-09-28|阅读量:

最新消息,日前,宜家的控股企业Interogo Holding AG斥资17亿瑞典克朗(约1.90亿美元)买入海恩斯莫里斯(H&M)集团0.6%的股份,并拥持有了后者0.3%的投票权。这是Interogo Holding AG第一次拥有快时尚企业的股份。

前面写过一些电商网站相关的文章,这几天有时间,就把之前写得网站架构相关的文章,总结整理一下。把以前的一些内容就连贯起来,这样也能软件的知道,一个最小的电商网站是怎么一步步开发起来的。

本文大纲:

1.小型电商网站的架构

2.日志与监控软件的解决规划

3.构建数据库的主从架构

4.基于共享存储的图片服务器架构

5.无线M站创建

电子商务网站设计如何打造得又小又精

一、小型电商网站的架构

刚从传统系统行业进入到电商公司时,觉得电商网站没有什么技术含量,也没有什么门槛,都是一些现有的东西堆积木似的堆出来罢了。然而,真正进入到这个行业之后,才发现并非如此。有人说过,好的架构,是演化出来的,电商网站的架构也是如此。现在好的电商网站,看似很复杂,很牛逼,其实也是从很小的架构,也是从没什么技术含量开始的。所以,架构的演化过程,就是在技术团队不断追求极致的过程。

今日就来总结小型电商网站的架构演进。一套电商软件最初期的架构,往往会采用一个比较典型的LAMP架构,前端加上Apache/PHP,后端是MySQL。这个算是比较流行的。不过,目前还有一套.net的技术架构,可能大家很少提到。很不幸,我就是在一个.net网站为基础的电商企业。所以,今日也是要总结.net网站的电商架构。

1技术架构

一般初期的电商网站,基本就几个业务子软件:网站前台、商家前台、软件管理后台、App、M站等。业务量也不是很大。所以,MVC+缓存+数据库基本就搞定了。

单就搭建效率而言,.netMVC的技术架构不会比LAMP搭建速度慢。所以,一些公司,为了快速推出自己的电商网站,也会采用.net架构。

2基础架构

1、前端网站和M站,考虑到访问量和软件的可用性,基本会采用分布式部署。通过加盟服务器进行请求分发。

2、其它的业务子软件,像商家前台和管理软件,基本上都是单机或是主从部署。

3、各个DB,Redis服务和文件和图片服务,搜索引擎Solr服务等,采用主从部署。

3详细架构

整个软件架构里面,还有一个比较重要的组成部分,那就是监控软件。例如:流量监控、硬件监控、软件性能监控等, 还有就是对某个页面进行监控,设置页面的其中一块进行监控等。它是提高整个网站可用性的一个重要手段。多网站、多个维度的监控,能够确保软件的可用性。一旦出现异常,特别在硬件或者性能方面出现异常,监控软件也能立刻发出警告,这样也好防范于未然。

总而言之,一个好的软件架构应该从扩展性、安全性、性能和可靠性来考虑。罗马不是一天建成的,架构适合就行,可以先行之而后优。通过渐进演化的过程,逐步让软件越来越完善。

二、日志与监控软件的解决规划

监控软件主要用于服务器集群的资源和性能监控,以及应用异常、性能监控、日志管理等多维度的性能监控分析。一个完善的监控软件和日志软件对于一个软件的重要性不必多说。总之,只有实时了解各软件的状态,才能保证各软件的稳定。

监控网站监控的范围很广,从服务器性能及资源,到应用软件的监控。每个企业都有特定的网站统一监控的需要及解决规划,但监控网站的任务和作用基本是一致的。

1日志

日志是监视程序运行的一种重要的方式,主要有两个目的:

1.bug的及时发现和定位;

2.显示程序运行状态。

正确详细的日志记录能够快速的定位问题。同样,通过查看日志,可以看出程序正在干什么,是不是按预期的设计在执行,所以记录下程序的运行状态是必要的。

这里将日志分为两种:

1.异常日志;

2.运行日志。

咱们主要是操作log4net,将各个软件的日志,持久化记录到数据库或者文件中,以方便后续的软件异常监控和性能分析。如何集成log4net,这里不多说。

日志记录的几个原则:

日志级别一定要区分清楚,哪些属于error、warning、info等。

记录错误的位置。如果是分层软件,一定要在某个层统一处理,例如咱们的MVC架构,都是在各个Action中Catch异常并处理,而业务层和数据库层这些地方的异常,都是Catch到异常后,往上一层抛。

日志信息清晰准确有意义,日志尽量详细点,以方便处理。应该记录相关软件、模块、时间、操作人、堆栈信息等。方便后续处理。

2监控

监控软件是一个复杂的软件网站,目前有很多的开源产品和网站。不过咱们网站小,监控任务和需要少,所以基本都是自己搭建。

主要有这五个方面:

1.软件资源;

2.服务器;

3.服务;

4.应用异常;

5.应用性能。

具体的架构如下:

1)软件资源监控

监控各种网络参数和各服务器相关资源(CPU、内存、磁盘读写、网络、访问请求等),保证服务器软件的安全运营,并提供异常通知机制以让软件管理员快速定位/解决存在的各种问题。目前比较流行的应该是Zabbix。

2)服务器监控

服务器的监控,主要是监控各个服务器、网络节点、网关等网络设备的请求响应是否正常。通过定时服务,定时去Ping各个网络节点设备,以确认各网络设备是否正常。如果哪个网络设备出现异常,则发出消息提醒。

3)服务监控

服务监控,指的是各个Web服务、图片服务、搜索引擎服务、缓存服务等网站软件的各项服务是否正常运行。可以通过定时服务,每隔一段时间,就去请求相关的服务,以确保网站的各项服务正常运行。

4)应用异常监控

目前咱们网站所有软件的异常记录,都记录在数据库中。通过定时服务,统计分析一段时间之内的异常记录。如果发现有相关重要的模块的软件异常,比如支付、下单模块频繁发生异常,则立即通知相关人员处理,确保服务正常运行。

5)应用性能监控

在API接口和各应用的相关位置进行拦截和记录下程序性能(SQL性能,或是 程序执行效率)。相关重要模块提供性能预警,提前发现问题。同时统计相关监控信息并显示给搭建的人员,以方便后续的性能分析。

三、构建数据库的主从架构

发展到大型成熟的企业之后,主从架构可能就有点落伍了,取而代之的是更加复杂的数据库集群。但作为一个小型电商企业,数据库的主从架构应该是最基础的。任何大型的软件架构,都是不断演进的。主从架构便是数据库架构中最基础的架构。所以研究完主从架构,也就能看懂更加复杂的架构了。

首先为什么要读写分离?

对于一个小型网站,可能单台数据库服务器就能满足需要。但在一些大型的网站或者应用中,单台的数据库服务器可能难以支撑大的访问压力,升级服务器性能投入又太高,所以必须要横向扩展。还有就是,单库的话,读、写都是操作一个数据库。数据多了之后,对数据库的读、写性能就会有很大影响。同时对于数据安全性和软件的稳定性也是挑战。

数据库的读写分离的好处?

1、将读操作和写操作分离到不同的数据库上,避免主服务器出现性能瓶颈;

2、主服务器进行写操作时,不影响查询应用服务器的查询性能,降低阻塞,提高并发;

3、数据拥有多个容灾副本,提高数据安全性,同时当主服务器故障时,可立即切换到其他服务器,提高软件可用性。

读写分离的基本原理就是让主数据库处理事务性增、改、删操作(Insert、Update、Delete)操作,而从数据库处理Select查询操作。数据库复制被用来把事务性操作导致的变更同步到其它从数据库。

以SQL为例,主库负责写数据、读数据。读库仅负责读数据。每次有写库操作,同步更新到读库。写库就一个,读库可以有多个,采用日志同步的方式实现主库和多个读库的数据同步。

1SQL Server 读写分离的配置

SQL Server提供了三种技术,可以用于主从架构之间的数据同步的实现:日志传送、事务复制和SQL 2012 中新增的功能Always On 技术。各自优劣,具体的大家自己去百度吧,这里提供网上的朋友的配置方式,仅供参考。

日志传送:SQL Server 2008 R2 主从数据库同步

事务复制:SQL Server 复制:事务发布

2C# 数据库读写操作

C#的请求数据库操作,单数据库和主从架构的数据库还是不一样的。主从架构的数据库,为了保证数据一致性,一般主库可读可写,从库只负责读,不负责写入。所以,实际C#在请求数据库时,要进行区别对待。

最简单的就是:配置两个数据库连接,然后在各个数据库调用的位置,区分读写请求相应的数据库服务器,如下图:

第二种解决规划就是判断SQL语句是写语句(Insert 、Update、Create、 Alter)还是读语句(Select)。

同时,增加相关的数据库配置。

四、基于共享存储的图片服务器架构

在当前这个互联网的年代,不管何种网站,对图片的需要量越来越大。尤其是电商网站,几乎都会面临到海量图片资源的存储、访问等相关技术问题。在对图片服务器的架构、扩展、升级的过程中,肯定也会碰到各种各样的问题与需要。当然这并不典型,你就必须得弄一个特别NB的图片服务架构,只要简单、高效、稳定就行。这部分咱们来总结一个特别简单、高效的图片服务架构:通过共享存储的方式来实现图片服务架构。

然而,也有一些人问我,现在大型网站的图片服务器的架构已经完全不是这样了,别人家的图片软件比你这个牛逼多了,为啥不直接写那个呢?

事实是:第一,大型牛逼的软件我也不会;第二, 再牛逼的软件也是从小的架构演化过去的,没有一步到位的。这里介绍图片服务器架构虽然比较简单,但也是经过了单机年代的演化了,基本上可以满足中小型分布式网站的需要。这种架构的开发和学习投入都极低,符合目前“短平快”的搭建商业模式。

通过共享目录的方式实现共享存储 ,在共享目录文件服务器上配置独立域名,这样可以将图片服务器和应用服务器进行分离,来实现独立图片服务器。

优势:

1. 将图片服务和应用服务分离,缓解应用服务器的I/O负载。

2. 通过共享目录的方式来进行读写操作,可以避免多服务器之间同步相关的问题。

3.相对来讲很灵活,也支持扩容/扩展。支持配置成独立图片服务器和域名访问,方便日后的扩展和优化。

4.相对于更加复杂的分布式的NFS软件,这种方式是性价比高,符合目前互联网的“短平快”的搭建商业模式。

缺点 :

1. 共享目录配置有些繁琐。

2.会造成一定的(读写和安全)性能损失。

3.如果图片服务器出现问题,那所有的应用都会受到影响。同时也对存储服务器的性能要求特别高。

4.图片上传操作,还是得经过Web服务器,这对Web服务器还是有巨大的压力。

架构非常简单,基本架构如下图所示:

 

在存储服务器上建立一个共享目录(具体方式,我就不去重复了,自己百度吧,注意共享目录的文件安全)。

各个应用直接通过共享目录(\\192.168.1.200),将图片上传到存储服务器上。

建立一个Web站点(i1.abc.com)将该共享目录通过Web站点发布出去。这样其它的应用就能访问到相关图片。

所以,各应用将文件上传到共享目录

 

上传成功后,可直接通过web 的方式访问:

http://i1.abc.com/lib/2016/03/04/10/IMG/4ugvvt6m9gdu.jpg

五、无线M站创建

最近在一直在搞M站,也就是无线Web站点。由于是第一次,也遇到了很多问题,所以把最近了解到的东西总结一番。聊一聊什么是无线M站,以及它有什么作用和优点。

有人会问,M站和APP有什么不同?

APP直接在用户的无线设备上,曝光率相对较高。 而M站需打开浏览器,输入地址才能访问,所以曝光率相对较低。

M站的推广的渠道相比无线APP,渠道较多,方便追踪用户来源、流量入口等,方便以后的活动推广和数据分析。

M站用户无需安装,输入URL即可访问,而APP需要下载安装。

M站能够快速地通过数据分析,能快速得到用户的反馈,从而更容易根据统计数据分析和用户的需要来调整产品。

APP对用户更具粘性及用户体验也更好。

M站对于营销推广活动非常方便,转发分享方便快捷。

M站更新迭代产品速度和响应产品调整非常快,随时发布,而APP需要审核时间。

M站跨网站,无需搭建安卓和iOS版,只需有浏览器即可。

所以, 我觉得,M站和客户端是相辅相成的。M站的及时性和快捷性,是APP无法比拟的。而APP的用户体验,则是M站无法做到的。目前来说两者是不可能被对方完全替代的,在互联网营销大行其道的今日,M站也越来越重要。营销活动大多以H5页面的形式展示和传播。通过M站的营销和推广,从而又促进APP的操作和推广。

目前,无线M站有倾向APP的趋势。M站会越来越像个APP,使得M站也越来越重要。而且,很多APP的展示效果,在原生代码无法实现的时候,嵌套无线H5页面也是一个很好的选择。

下面介绍几个无线M站创建的要点:

151Degree

51Degrees号称是目前最快、最准确的设备检测的解决规划。它是一个免费开源的.NET无线应用搭建组件,可以用来检测无线设备和浏览器。甚至可以获取屏幕尺寸、输入法、加上制造商和型号信息等。从而可以选择性地被定向到为无线设备而设计的内容。由于拥有精确的无线设备的数据,所以几乎支持所有的智能手机,平板电脑等无线设备。

其实说白了,51Degree的作用就是识别客户端的设备。PC浏览器访问,就跳转到PC站,手机浏览器访问就跳转到M站。从而达到更好的用户体验。

如何将51Degree加入到现有网站?

http://51degrees.codeplex.com/wikipage?title=Enhance%20existing%20web%20site

2架构

无线Web和传统的Web其实并没有本质的区别。说白了还是一个Web站点,操作的技术都是Html+CSS+JS。不同的是,只不过目前在Html5的大趋势下,将Html5加入到了无线M站,使得M站更像个轻APP。

3Bootstrap

Bootstrap就不多说了,网上有很多Bootstrap的资料。它最大的优点应该就是非常流行,非常容易上手。如果缺少专业的设计或美工,那么Bootstrap是一个更好的选择。他的用法极其简单,几乎没什么学习投入,绝对是快速搭建的利器。

4几点意见

1、无线M站的URL要尽量和PC相同,这是可以避免同一URL在PC站可以显示,但是在手机上打开却是404;

2、M站写单独的TDK。

<HiShop(www.HiShop.com.cn)是国内知名公司级电商网站提供商,为公司级商家提供最佳的软件搭建(多种商业模式电商网站开发:B2B/B2B2C/B2C/O2O/新零售等)、供应链软件开发及电商行业解决规划服务>

HiMall多用户商城系统介绍

“平台自营+多商户入驻”为特色经营模式

  • 跨境电商解决方案

    支持直邮/保税模式

    对接海关/保税仓

    支持多国国际语言

    对接Paypal国际支付

    帮助跨境外贸企业搭建跨境进口/出口电商平台,抢占国际电商市场,针对企业需求定制个性化跨境电商解决方案
    了解跨境方案
  • 分账解决方案

    迎合金融监管要求

    规避“二清”结算

    节约平台财务成本

    降低平台招商入驻成本

    在合法、合规的前提下,为电商平台提供资金收付、账户管理、资金合规等一体化整体解决方案
    了解分账方案
  • 多商家入驻商城

    类天猫、京东商城

    做小程序直播

    做视频号分销

    多商家入驻模式

    支持自营+招商组合,在拥有强大的自营体系之外,拓展其他的品类来充实平台的商品,对消费者而言更有吸引力。
    B2B2C模式演示
  • 做类淘宝商城

    做类淘宝商城

    做类1688批发平台

    做经销商订货平台

    零售+订货批发

    企业开设自营商城店铺,构建线上销售渠道;或搭建个人、企业均可入驻的平台,用户既是卖家也是买家,可切换身份,开店铺销售自己的商品。
    B2C/C2C模式演示
更多电商解决方案
|猜你喜欢

【本站声明】 1、本网站发布的该篇文章,目的在于分享电商知识及传递、交流相关电商信息,以便您学习或了解电商知识,请您不要用于其他用途;
2、该篇文章中所涉及的商标、标识的商品/服务并非来源于本网站,更非本网站提供,与本网站无关,系他人的商品或服务,本网站对于该类商标、标识不拥有任何权利;
3、本网站不对该篇文章中所涉及的商标、标识的商品/服务作任何明示或暗示的保证或担保;
4、本网站不对文章中所涉及的内容真实性、准确性、可靠性负责,仅系客观性描述,如您需要了解该类商品/服务详细的资讯,请您直接与该类商品/服务的提供者联系。

弹出层开始-->

电话咨询 微信咨询 0元开店