使用Entity Framework时要注意的一些性能问题

自从我用了EF,每次都很关心是否有潜在的性能问题。所以每次我写LINQ查询,都会使用SQL Profiler看一下实际生成的SQL语句,以便发现潜在的性能问题。也强烈建议大家这么去做,以免日后软件大了出了问题很难查。 一、只选择某列或某些列 有些时候,在C#里写LINQ虽然看着舒服,但性能不一定好,...

group by、order by、where、distinct使用方法小结

一. group by 1.GROUP BY子句主要用于对WHERE中得到的结果进行分组,也就是说它是在WHERE子句之后执行,对经过WHERE筛选后的结果按照某些列进行分组,之后进行相应的处理工作。 注意:如果在返回集字段中,这些字段要么就要包含在Group By语句的后面,作为分组的依据;要么就...

Github的清点对象算法

使用 Github 的时候,你有没有见过下面的提示? $ git clone https://github.com/torvalds/linux Cloning into 'linux'... remote: Counting objects: 4350078, done. remote: Comp...

SOA、ESB、NServiceBus和云计算

SOA SOA 是通过功能组件化、服务化,来实现系统集成、解决信息孤岛,这是其主要目标。而更进一步则是实现更快响应业务的变化、更快推出新的应用系统。与此同时,SOA 还实现了整合资源,资源复用。 SOA 服务的设计标准是粗粒度、高重用、灵活、标准。性能则并非首要考虑因素。 SOA 的两大功能是集成、...

使用消息队列的 10 个理由

过去几年中,我们一直在使用、构建和宣传消息队列,我们认为它们是很令人敬畏的,这也不是什么秘密。我们相信对任何架构或应用来说,消息队列都是一个至关重要的组件,下面是十个理由: 1. 解耦 在项目启动之初来预测将来项目会碰到什么需求,是极其困难的。消息队列在处理过程中间插入了一个隐含的、基于数据的接口层...

消息队列软件产品大比拼

我花了一周的时间评估比较了一下各种消息队列产品,非常的有趣。我做这个事的动机是因为一个客户有一个很高性能需求。他们的消息信息突破了1百万个并发。目前他们使用的是SQL server,并不理想,我建议他们使用消息队列服务器。 为了对一些相似的候选产品获得一个全面的但是粗浅的性能上的了解,我们它们放在一...

大型网站架构演化发展历程

前面已经描述了大型网站系统的特点,而对一个大型网站系统,其架构也是重要的一个环节。 大型网站技术主要的挑战来自于庞大的用户、高并发以及海量的数据这三个方面。大型网站的形成就像一颗大树的成长,历尽长时间的磨练,最后枝繁叶茂,服务他人。 初始网站架构结构 起初的网站鉴于用户量、访问量较少,只需要一台服务...

开源软件在商业世界中的十大最佳应用领域

开源软件能够带动业务增长,增加灵活性或可靠性,或者是减少预算。Jack Wallen是TechRepublic和Linux.com的一名优秀撰稿人,同时也是开源的积极推动者。近日,他在一篇博文中列出了开源软件十大最佳应用领域: 服务器软件:Apache是应用最广的开源服务器软件之一。它免费、可靠、易...

中小型电子商务网站架构

很久没有写过博客,由于事务繁多,如果再不写,手就迟钝了。由于一直以来都从事电子商务的技术工作,在架构方面或多或少有点经验,拿出来和大家聊聊,希望业界牛人指正,我也好自我提高。 一个小型的电子商务网站,例如日交易量5万订单以下,或者说每天差不多五千万个pv左右。我们可以讨论下,整个架构应该如何设计。 ...

B2C电子商务网站技术框架

一、设计原则 电子商务平台总体结构的设计应从体系、功能、信息、过程等各个方面保证整个电子商务平台总体目标的实现,以提高市场竞争能力。总体结构的设计应考虑以下设计原则: 快速响应原则: 商机稍纵即逝,网站应该能够快速响应。一方面需要能够随时根据业务需要进行更新网站内容,另一方面需要能够迅速开发出新的网...