电子商务网站必须要解决的若干技术问题
来源:互联网 发布:打印监控软件 破解 编辑:程序博客网 时间:2024/05/16 11:31
本文分别从架构、搜索、性能等技术角度分析了电子商务网站重点要解决的几个问题,并给出一些建议和方案。
一、一个好电子商务网站的架构必须是一个易扩展、易维护性的架构
电子商务网站一个最大的特点就是商业逻辑比较复杂,需求变更快,代码的维护和功能扩展一般会占用整个应用生命周期80%-90%的时间。所以,只有一个灵活性高,扩展性强、方便维护的架构才能适应电子商务网站发展的要求。
具有以上特点的架构通常具有以下特征:
1、是一个松散耦合的架构。分层是必须的,通常指常见的三层架构,各层内部也可以根据需求作出一定的细分。
2、采用了一些合适的设计模式。一个优秀的架构必然在其中使用了一些设计模式,当然反之并不一定成立。
j2ee社区已经给我们提供优秀的设计模式供我们参考:
(1) j2ee核心设计模式
http://java.sun.com/blueprints/corej2eepatterns/Patterns/
(2) martinfowler的Patterns of Enterprise Application Architecture。
http://www.martinfowler.com/eaaCatalog/
你可以在这些模式中找到满足需求的设计模式。总之,一句话,不要为了模式而模式,关键要领会各个模式(when and how),灵活地使用。
3、提供了一定的基础设施和可重用的组件。只有这样的架构才能提高开发效率,降低重复代码,对客户的需求变化能作出快速的反应。目前我认为SOA(面向服务的架构)是最符合这一要求的架构。
网上介绍SOA的文章有很多,developerworks专门有个SOA and Web services专区介绍SOA的相关知识。
下面这篇文章我是不久之前看到,觉得写得不错,有一定的借鉴,大家可以看看。
Designing an Enterprise Application Framework for Service-Oriented Architecture
二、搜索引擎
一个优秀的电子商务网站会提供大量的商品或者信息。为了帮助客户找到他想要的商品,必然要为客户提供一个优秀的搜索引擎供他们查找。
这样的搜索引擎必须解决了以下两个关键性问题:
1、大数据量的索引和检索。
2、快速、准确地返回用户要搜索的信息。
Lucene是一个基于Java的全文索引工具包,它已经有了其他语言的版本。对于在搜索上没有技术积累的电子商务公司, Lucene是比较好的选择和学习的途径。现在luncene已经成为apache的顶级子项目。
http://lucene.apache.org/
http://www.lucene.com.cn/
学习Lucene,Lucene in Action 这本书是一定要看。
三、交互大数据量的访问。
对于用户与网站交互比较多的电子商务网站,应用的性能瓶颈通常在数据库方面。特别是随着数据量的增长,数据库的压力会愈加明显。
对数据库的优化有各种各样的方法,DBA、开发工程师都有各自的要求,比如要求开发工程师在写SQL语句的时候必须采用绑定变量,所有的SQL必须提交DBA审核等等。这些工作对数据库的优化都有大大的帮助。
但数据库中数据的增长是必然趋势,我认为最终的解决方案就是根据实际需求采用合适的策略降低要访问的数据量。这才是王道。
总之,一个信息量大,访问速度快,安全,方便使用的电子商务网站永远是客户的第一选择。为了创造最佳的客户体验需要网站开发者(这里我主要指技术部门)在以上几方面做出更大的努力,学习和创新是工程师们要牢记的法则。
一、一个好电子商务网站的架构必须是一个易扩展、易维护性的架构
电子商务网站一个最大的特点就是商业逻辑比较复杂,需求变更快,代码的维护和功能扩展一般会占用整个应用生命周期80%-90%的时间。所以,只有一个灵活性高,扩展性强、方便维护的架构才能适应电子商务网站发展的要求。
具有以上特点的架构通常具有以下特征:
1、是一个松散耦合的架构。分层是必须的,通常指常见的三层架构,各层内部也可以根据需求作出一定的细分。
2、采用了一些合适的设计模式。一个优秀的架构必然在其中使用了一些设计模式,当然反之并不一定成立。
j2ee社区已经给我们提供优秀的设计模式供我们参考:
(1) j2ee核心设计模式
http://java.sun.com/blueprints/corej2eepatterns/Patterns/
(2) martinfowler的Patterns of Enterprise Application Architecture。
http://www.martinfowler.com/eaaCatalog/
你可以在这些模式中找到满足需求的设计模式。总之,一句话,不要为了模式而模式,关键要领会各个模式(when and how),灵活地使用。
3、提供了一定的基础设施和可重用的组件。只有这样的架构才能提高开发效率,降低重复代码,对客户的需求变化能作出快速的反应。目前我认为SOA(面向服务的架构)是最符合这一要求的架构。
网上介绍SOA的文章有很多,developerworks专门有个SOA and Web services专区介绍SOA的相关知识。
下面这篇文章我是不久之前看到,觉得写得不错,有一定的借鉴,大家可以看看。
Designing an Enterprise Application Framework for Service-Oriented Architecture
二、搜索引擎
一个优秀的电子商务网站会提供大量的商品或者信息。为了帮助客户找到他想要的商品,必然要为客户提供一个优秀的搜索引擎供他们查找。
这样的搜索引擎必须解决了以下两个关键性问题:
1、大数据量的索引和检索。
2、快速、准确地返回用户要搜索的信息。
Lucene是一个基于Java的全文索引工具包,它已经有了其他语言的版本。对于在搜索上没有技术积累的电子商务公司, Lucene是比较好的选择和学习的途径。现在luncene已经成为apache的顶级子项目。
http://lucene.apache.org/
http://www.lucene.com.cn/
学习Lucene,Lucene in Action 这本书是一定要看。
三、交互大数据量的访问。
对于用户与网站交互比较多的电子商务网站,应用的性能瓶颈通常在数据库方面。特别是随着数据量的增长,数据库的压力会愈加明显。
对数据库的优化有各种各样的方法,DBA、开发工程师都有各自的要求,比如要求开发工程师在写SQL语句的时候必须采用绑定变量,所有的SQL必须提交DBA审核等等。这些工作对数据库的优化都有大大的帮助。
但数据库中数据的增长是必然趋势,我认为最终的解决方案就是根据实际需求采用合适的策略降低要访问的数据量。这才是王道。
总之,一个信息量大,访问速度快,安全,方便使用的电子商务网站永远是客户的第一选择。为了创造最佳的客户体验需要网站开发者(这里我主要指技术部门)在以上几方面做出更大的努力,学习和创新是工程师们要牢记的法则。
- 电子商务网站必须要解决的若干技术问题
- 电子商务网站必须要解决的若干技术问题
- 电子商务网站必须要解决的若干技术问题
- 电子商务网站必须要解决的若干技术问题
- 大型网站必须要考虑的问题
- 分布式系统开发里必须要解决的3个技术问题
- 分布式系统开发里必须要解决的3个技术问题
- 分布式系统开发里必须要解决的3个技术问题
- 解决必须要alert一下,才生效的问题
- 网站优化必须要掌握的知识
- 那些你必须要刷的网站
- 必须要加强的技术(近期)
- 电子商务若干关键问题的分析
- java中必须要了解的问题
- JAVA必须要理解的一些问题
- 架构必须要考虑的问题
- 从零开始实现一个电子商务网站----解决碰到的问题(六)
- 网站设计必须要考虑的用户体验
- 简谈搜索引擎工作流程
- 中文搜索引擎的十大误区
- 搜索引擎技术及趋势
- 手把手教你用C#打包应用程序(安装程序)【卸载模块已添加】
- 目前搜索引擎主要检索服务
- 电子商务网站必须要解决的若干技术问题
- 使用NSIS制作安装包(1)
- 产品设计——互联网产品设计
- 一种程序界面文字换肤方法
- 使用NSIS制作安装包(2)
- 使用log4j为Tomcat输出日志
- jsp自定义标签体验
- 敏捷开发的必要技巧:移除重复代码
- ajax:改善用户体验之进度条