如何开发高性能低成本的网站之技术选择
来源:互联网 发布:java局部变量初始化 编辑:程序博客网 时间:2024/05/20 18:46
转载:如何开发高性能低成本的网站之技术选择
每个企业都是慢慢发展起来的,在起步阶段成本是一个不得不考虑的重大问题 。直接入正题:
前台框架: ASP.NET MVC + Jquery + Json + Flash , ASP.NET MVC高性能速度快,Jquery 简洁成熟的Js基础框架 , Json数据格式体积小 ,传输快。Flash 用于开发复杂的页面交互应用。
缓存方案:
Memcached , 基于Key-Value的传统Cache储存方式 ,高性能 , 而且它内置LRU(Least Recently Used)机制自动维护缓存数据,从而提高缓存的性能和负载能力。
MongoDb , 数据库级别的缓存解决方案 ,适合海量的数据缓存 , 支持查询
权限模型:
基于ASP.NET MVC 的RBAC , 控制对象粒度到Action ,控制操作粒度 是否能访问。权限基于Cookie/缓存记录认证信息 ,在用户登录时就计算出该用户的所有权限并缓存。
(优点:直接通过AOP做横切面控制,不需要设置权限点;缺点:无法控制到同一个Action有增、删、改、查等更细的操作粒度,不同的操作需要制作不同的Action ,表面上要多几个Action , 其实这样做职责更加分离,更加符合OO的观点)
多语言解决方案:
服务端, 基于资源文件,完美配合ASP.NET MVC前段框架 ,进行各项数据验证及提示等
客户端, 同样基于资源文件,对Page页面采用script 导入序列化的资源文件 ,按名词空间引用,如Resources.Book.AreYouSure 的Js变量.对于flash等可以通过Json 传递。
数据通信:
服务端,WCF , WebService
客户端, HttpRequest 数据类型Json
数据访问层:标准接口化,不对数据实现依赖。
Entity Framwork , 适合只使用SQL Server 的解决方案, 开发效率最高
NHibernate , 支持多数据平台 ,开发效率较高 , 性能一般
ADO.NET, 完全靠开发实现,开发效率低 , 性能较高
性能和效率按正常水平评估
解耦办法:
IOC , 依赖注入 ,
AOP , 横切面拦截 ,权限中的推荐做法
负载均衡:
Nginx , Web前端的负载均衡解决方案 , Nginx 开源免费,高性能 .
页面提速:
实时性要求不高的页面可以做静态化 ,页面的部分动态内容可以通过SSI处理 ,然后数据更新就主动生成页面。页面静态化,通过XSLT的CMS生成机制可以对生成的页面内容进行压缩。
静态资源文件拆分出去做独立站点,加上服务端的GZIP/Deflate压缩等操作,最好配上二级域名,已加快客户端HTTP下载.更加方便以后做CDN.
SSO:
如果有多个站点,统一认证可以降低开发维护等成本.
数据库:
Mysql , 成熟,开源.
- 如何开发高性能低成本的网站之技术选择
- 如何低成本搭建高性能分布式搜索引擎?
- 《大型网站技术架构》读书笔记四:瞬时响应之网站的高性能架构
- 《大型网站技术架构》读书笔记四:瞬时响应之网站的高性能架构
- 高性能网站开发
- 高性能网站开发
- 低成本和高性能的MySQL云数据库的实现
- 低成本和高性能的MySQL云数据库的实现
- 低成本和高性能的MySQL云数据库的实现
- 低成本和高性能的MySQL云数据库的实现
- 低成本和高性能MySQL云数据的架构探索
- 低成本和高性能MySQL云数据的架构探索
- 如何构建高性能的网站
- 芯动技术之一: 如何开发低成本的数据采集模块
- 开发出高性能的网站,第三部分:压缩和其他服务器端的技术(转)
- 开发出高性能的网站,第三部分:压缩和其他服务器端的技术(转)
- 开发出高性能的网站,第三部分:压缩和其他服务器端的技术 - 【推荐】
- 高性能网站使用的14条技术
- MMFShare
- Bitvise Tunnelier 连接上一会儿就会掉。
- 学习ext4.0的经验
- 百事通
- C语言中结构体字节对齐
- 如何开发高性能低成本的网站之技术选择
- 详解UIWebView之网络状况显示
- New Age音乐启蒙与经典选介
- liunx下安装与基本使用php内存缓存Memcache
- Mysql命令
- 【java】静态&初始化执行顺序
- KissXML 简易教程
- Unity3D学习 愤怒的小鸟之Play界面(三)
- 一个解析XML数据的简单Demo(以KissXml为例)